java - WireMock is not stubbing my URL -


i writing integration test java class networkclientserviceimpl using wiremock technique getting exceptions , not able solve them.

following method declared inside networkclientserviceimpl class writing integration test.

 public observable<networkoptionresponse> getsettingsvalues(final networkclientquery networkclientquery, final string names) throws     networkexception {      checkargument(networkclientquery != null, missing_required_parameter, "networkclientquery");     logger.info("get networking settings values names:{} , queryparams:{}", names,networkclientquery.getqueryparams());      try {         string url = uribuilder.frompath("/networkmiddle/settings/{names}").build(names).getpath();         logger.info("urlpath "+url);         return commandbuilder.build(url, httprequest.verb.get,networkoptionresponse.class,networkclientquery.getqueryparams()).observe();       } catch (final exception ex) {          string errormessage = string.format("failed networksettings values names:[%s] error:[%s]", names, networkclientutils.geterrormessage(ex));         logger.error(errormessage, ex);         throw new networkexception(errormessage, response.status.internal_server_error);     } } 

networkclientserviceimplit groovy file :

class networkclientserviceimplit extends specification{  @inject networkclientservice service @rule private wiremockrule middlemock = new wiremockrule(wiremockconfiguration.wiremockconfig().port(19080));  def 'validate config'() {     expect:     service != null }  def 'get settings values'(){     given:     builder builder = new builder();     builder = builder.withqueryparam("device", "000004fa4d88")     builder = builder.withqueryparam("home", "8087300010167669")     builder = builder.withqueryparam("user", "testid195")     networkclientquery query = builder.build();     string names = "favourites";     string json = '{"settings": [{ "name": "dvs", "value": ["off"] },{ "name": "info banner duration", "value": ["15"] },{ "name": "rating locks", "value": ["tvma","nc17","nr mature"] }]}'     responsedefinitionbuilder responsebuilder = new responsedefinitionbuilder();     responsebuilder.build().setbody(json);     string urlpath = "/networkmiddle/settings/"     middlemock.stubfor(get(urlpathequalto(urlpath)).willreturn(responsebuilder))      when:     observable<networkoptionresponse> response = service.getvalues(query,names);     println'********* test1 ******'     println'********* test2 ******'+response     println'********* test3 ******'+response.getclass()     networkoptionresponse response2 = response.toblocking().single();     println'********* test4 ******'     then:     response != null     println '** response '+response     response2 != null     println '** response2 '+response2  } } 

when maven clean install, getting following response:

********* test1 ******  13:57:58.309 [hystrix-networkmiddlethreadpool-1] debug c.c.a.h.u.aws.charterhystrixcommand - httpresuest url: /networksettingsmiddle/settings/favourites 13:57:58.310 [hystrix-networkmiddlethreadpool-1] debug c.n.l.zoneawareloadbalancer - zone aware logic disabled or there 1 zone 13:57:58.311 [hystrix-networkmiddlethreadpool-1] warn  c.n.loadbalancer.roundrobinrule - no servers available load balancer: dynamicserverlistloadbalancer:{nfloadbalancer:name=networkclient,current list of servers=[],load balancer stats=zone stats: {},server stats: []}serverlist:com.netflix.loadbalancer.configurationbasedserverlist@24bdb479 ********* test2 ******rx.subjects.replaysubject@1542af63 13:57:58.344 [hystrix-networkmiddlethreadpool-1] debug com.netflix.hystrix.abstractcommand - error executing hystrixcommand.run(). proceeding fallback logic ... com.netflix.client.clientexception: using clientname: networkclient, vipaddress:  @ com.charter.aesd.hystrix.utils.aws.charterhystrixcommand.run(charterhystrixcommand.java:141) ~[ribbon-lib-2.3.0.jar:na] @ com.netflix.hystrix.hystrixcommand$1.call(hystrixcommand.java:294) [hystrix-core-1.4.23.jar:1.4.23] @ com.netflix.hystrix.hystrixcommand$1.call(hystrixcommand.java:289) [hystrix-core-1.4.23.jar:1.4.23] @ rx.observable$2.call(observable.java:162) [rxjava-1.1.0.jar:1.1.0] @ rx.observable$2.call(observable.java:154) [rxjava-1.1.0.jar:1.1.0] @ rx.observable$2.call(observable.java:162) [rxjava-1.1.0.jar:1.1.0] @ rx.observable$2.call(observable.java:154) [rxjava-1.1.0.jar:1.1.0] @ rx.observable$2.call(observable.java:162) [rxjava-1.1.0.jar:1.1.0] @ rx.observable$2.call(observable.java:154) [rxjava-1.1.0.jar:1.1.0] @ rx.observable.unsafesubscribe(observable.java:8098) [rxjava-1.1.0.jar:1.1.0] @ com.netflix.hystrix.abstractcommand$5.call(abstractcommand.java:521) [hystrix-core-1.4.23.jar:1.4.23] @ com.netflix.hystrix.abstractcommand$5.call(abstractcommand.java:499) [hystrix-core-1.4.23.jar:1.4.23] @ rx.observable.unsafesubscribe(observable.java:8098) [rxjava-1.1.0.jar:1.1.0] @ rx.internal.operators.operatorsubscribeon$1$1.call(operatorsubscribeon.java:62) [rxjava-1.1.0.jar:1.1.0] @ com.netflix.hystrix.strategy.concurrency.hystrixcontexscheduleraction$1.call(hystrixcontexscheduleraction.java:56) [hystrix-core-1.4.23.jar:1.4.23] @ com.netflix.hystrix.strategy.concurrency.hystrixcontexscheduleraction$1.call(hystrixcontexscheduleraction.java:47) [hystrix-core-1.4.23.jar:1.4.23] @ com.netflix.hystrix.strategy.concurrency.hystrixcontexscheduleraction.call(hystrixcontexscheduleraction.java:69) [hystrix-core-1.4.23.jar:1.4.23] @ rx.internal.schedulers.scheduledaction.run(scheduledaction.java:55) [rxjava-1.1.0.jar:1.1.0] @ java.util.concurrent.executors$runnableadapter.call(executors.java:511) [na:1.8.0_91] @ java.util.concurrent.futuretask.run(futuretask.java:266) [na:1.8.0_91] @ java.util.concurrent.threadpoolexecutor.runworker(threadpoolexecutor.java:1142) [na:1.8.0_91] @ java.util.concurrent.threadpoolexecutor$worker.run(threadpoolexecutor.java:617) [na:1.8.0_91] @ java.lang.thread.run(thread.java:745) [na:1.8.0_91] caused by: com.netflix.client.clientexception: loadbalancer returned null server :networkclient @ com.netflix.client.loadbalancercontext.computefinaluriwithloadbalancer(loadbalancercontext.java:418) ~[ribbon-core-0.3.13.jar:na] @ com.netflix.client.abstractloadbalancerawareclient.executewithloadbalancer(abstractloadbalancerawareclient.java:166) ~[ribbon-core-0.3.13.jar:na] @ com.charter.aesd.hystrix.utils.aws.charterhystrixcommand.run(charterhystrixcommand.java:118) ~[ribbon-lib-2.3.0.jar:na] ... 22 common frames omitted  13:57:58.392 [hystrix-networkmiddlethreadpool-1] debug com.netflix.hystrix.abstractcommand - no fallback hystrixcommand.   java.lang.unsupportedoperationexception: no fallback available. @ com.netflix.hystrix.hystrixcommand.getfallback(hystrixcommand.java:284) ~[hystrix-core-1.4.23.jar:1.4.23] @ com.netflix.hystrix.hystrixcommand$2.call(hystrixcommand.java:311) [hystrix-core-1.4.23.jar:1.4.23] @ com.netflix.hystrix.hystrixcommand$2.call(hystrixcommand.java:306) [hystrix-core-1.4.23.jar:1.4.23] @ rx.observable$2.call(observable.java:162) [rxjava-1.1.0.jar:1.1.0] @ rx.observable$2.call(observable.java:154) [rxjava-1.1.0.jar:1.1.0] @ rx.observable$2.call(observable.java:162) [rxjava-1.1.0.jar:1.1.0] @ rx.observable$2.call(observable.java:154) [rxjava-1.1.0.jar:1.1.0] @ rx.observable$2.call(observable.java:162) [rxjava-1.1.0.jar:1.1.0] @ rx.observable$2.call(observable.java:154) [rxjava-1.1.0.jar:1.1.0] @ rx.observable$2.call(observable.java:162) [rxjava-1.1.0.jar:1.1.0] @ rx.observable$2.call(observable.java:154) [rxjava-1.1.0.jar:1.1.0] @ rx.observable$2.call(observable.java:162) [rxjava-1.1.0.jar:1.1.0] @ rx.observable$2.call(observable.java:154) [rxjava-1.1.0.jar:1.1.0] @ rx.observable$2.call(observable.java:162) [rxjava-1.1.0.jar:1.1.0] @ rx.observable$2.call(observable.java:154) [rxjava-1.1.0.jar:1.1.0] @ rx.observable$2.call(observable.java:162) [rxjava-1.1.0.jar:1.1.0] @ rx.observable$2.call(observable.java:154) [rxjava-1.1.0.jar:1.1.0] @ rx.observable$2.call(observable.java:162) [rxjava-1.1.0.jar:1.1.0] @ rx.observable$2.call(observable.java:154) [rxjava-1.1.0.jar:1.1.0] @ rx.observable$2.call(observable.java:162) [rxjava-1.1.0.jar:1.1.0] @ rx.observable$2.call(observable.java:154) [rxjava-1.1.0.jar:1.1.0] @ rx.observable$2.call(observable.java:162) [rxjava-1.1.0.jar:1.1.0] @ rx.observable$2.call(observable.java:154) [rxjava-1.1.0.jar:1.1.0] @ rx.observable.unsafesubscribe(observable.java:8098) [rxjava-1.1.0.jar:1.1.0] @ rx.internal.operators.operatoronerrorresumenextviafunction$1.onerror(operatoronerrorresumenextviafunction.java:100) [rxjava-1.1.0.jar:1.1.0] @ rx.internal.operators.operatordooneach$1.onerror(operatordooneach.java:71) [rxjava-1.1.0.jar:1.1.0] @ rx.internal.operators.operatordooneach$1.onerror(operatordooneach.java:71) [rxjava-1.1.0.jar:1.1.0] @ com.netflix.hystrix.abstractcommand$hystrixobservabletimeoutoperator$3.onerror(abstractcommand.java:1012) [hystrix-core-1.4.23.jar:1.4.23] @ rx.internal.operators.operatordooneach$1.onerror(operatordooneach.java:71) [rxjava-1.1.0.jar:1.1.0] @ rx.internal.operators.operatorsubscribeon$1$1$1.onerror(operatorsubscribeon.java:71) [rxjava-1.1.0.jar:1.1.0] @ rx.internal.operators.operatordooneach$1.onerror(operatordooneach.java:71) [rxjava-1.1.0.jar:1.1.0] @ com.netflix.hystrix.abstractcommand$deprecatedonrunhookapplication$1.onerror(abstractcommand.java:1480) [hystrix-core-1.4.23.jar:1.4.23] @ com.netflix.hystrix.abstractcommand$executionhookapplication$1.onerror(abstractcommand.java:1376) [hystrix-core-1.4.23.jar:1.4.23] @ com.netflix.hystrix.hystrixcommand$1.call(hystrixcommand.java:297) [hystrix-core-1.4.23.jar:1.4.23] @ com.netflix.hystrix.hystrixcommand$1.call(hystrixcommand.java:289) [hystrix-core-1.4.23.jar:1.4.23] @ rx.observable$2.call(observable.java:162) [rxjava-1.1.0.jar:1.1.0] @ rx.observable$2.call(observable.java:154) [rxjava-1.1.0.jar:1.1.0] @ rx.observable$2.call(observable.java:162) [rxjava-1.1.0.jar:1.1.0] @ rx.observable$2.call(observable.java:154) [rxjava-1.1.0.jar:1.1.0] @ rx.observable$2.call(observable.java:162) [rxjava-1.1.0.jar:1.1.0] @ rx.observable$2.call(observable.java:154) [rxjava-1.1.0.jar:1.1.0] @ rx.observable.unsafesubscribe(observable.java:8098) [rxjava-1.1.0.jar:1.1.0] @ com.netflix.hystrix.abstractcommand$5.call(abstractcommand.java:521) [hystrix-core-1.4.23.jar:1.4.23] @ com.netflix.hystrix.abstractcommand$5.call(abstractcommand.java:499) [hystrix-core-1.4.23.jar:1.4.23] @ rx.observable.unsafesubscribe(observable.java:8098) [rxjava-1.1.0.jar:1.1.0] @ rx.internal.operators.operatorsubscribeon$1$1.call(operatorsubscribeon.java:62) [rxjava-1.1.0.jar:1.1.0] @ com.netflix.hystrix.strategy.concurrency.hystrixcontexscheduleraction$1.call(hystrixcontexscheduleraction.java:56) [hystrix-core-1.4.23.jar:1.4.23] @ com.netflix.hystrix.strategy.concurrency.hystrixcontexscheduleraction$1.call(hystrixcontexscheduleraction.java:47) [hystrix-core-1.4.23.jar:1.4.23] @ com.netflix.hystrix.strategy.concurrency.hystrixcontexscheduleraction.call(hystrixcontexscheduleraction.java:69) [hystrix-core-1.4.23.jar:1.4.23] @ rx.internal.schedulers.scheduledaction.run(scheduledaction.java:55) [rxjava-1.1.0.jar:1.1.0] @ java.util.concurrent.executors$runnableadapter.call(executors.java:511) [na:1.8.0_91] @ java.util.concurrent.futuretask.run(futuretask.java:266) [na:1.8.0_91] @ java.util.concurrent.threadpoolexecutor.runworker(threadpoolexecutor.java:1142) [na:1.8.0_91] @ java.util.concurrent.threadpoolexecutor$worker.run(threadpoolexecutor.java:617) [na:1.8.0_91] @ java.lang.thread.run(thread.java:745) [na:1.8.0_91] ********* test3 ******class rx.subjects.replaysubject tests run: 2, failures: 0, errors: 1, skipped: 0, time elapsed: 6.053 sec <<< failure! settings values(com.charter.aesd.network.client.api.test.networkclientserviceimplit)  time elapsed: 0.688 sec  <<< error! com.netflix.hystrix.exception.hystrixruntimeexception: networkmiddlecommand failed , no fallback available. @ com.netflix.client.loadbalancercontext.computefinaluriwithloadbalancer(loadbalancercontext.java:418) @ com.netflix.client.abstractloadbalancerawareclient.executewithloadbalancer(abstractloadbalancerawareclient.java:166) @ com.charter.aesd.hystrix.utils.aws.charterhystrixcommand.run(charterhystrixcommand.java:118) @ com.netflix.hystrix.hystrixcommand$1.call(hystrixcommand.java:294) @ com.netflix.hystrix.hystrixcommand$1.call(hystrixcommand.java:289) @ rx.observable$2.call(observable.java:162) @ rx.observable$2.call(observable.java:154) @ rx.observable$2.call(observable.java:162) @ rx.observable$2.call(observable.java:154) @ rx.observable$2.call(observable.java:162) @ rx.observable$2.call(observable.java:154) @ rx.observable.unsafesubscribe(observable.java:8098) @ com.netflix.hystrix.abstractcommand$5.call(abstractcommand.java:521) @ com.netflix.hystrix.abstractcommand$5.call(abstractcommand.java:499) @ rx.observable.unsafesubscribe(observable.java:8098) @ rx.internal.operators.operatorsubscribeon$1$1.call(operatorsubscribeon.java:62) @ com.netflix.hystrix.strategy.concurrency.hystrixcontexscheduleraction$1.call(hystrixcontexscheduleraction.java:56) @ com.netflix.hystrix.strategy.concurrency.hystrixcontexscheduleraction$1.call(hystrixcontexscheduleraction.java:47) @ com.netflix.hystrix.strategy.concurrency.hystrixcontexscheduleraction.call(hystrixcontexscheduleraction.java:69) @ rx.internal.schedulers.scheduledaction.run(scheduledaction.java:55) @ java.util.concurrent.executors$runnableadapter.call(executors.java:511) @ java.util.concurrent.futuretask.run(futuretask.java:266) @ java.util.concurrent.threadpoolexecutor.runworker(threadpoolexecutor.java:1142) @ java.util.concurrent.threadpoolexecutor$worker.run(threadpoolexecutor.java:617) @ java.lang.thread.run(thread.java:745)  13:57:58.550 [thread-2] info  c.n.l.dynamicserverlistloadbalancer - shutting down executor pool dynamicserverlistloadbalancer  results :  tests in error:  » hystrixruntime networkmiddlecommand failed , no fallback availabl... 


Comments

Popular posts from this blog

php - How to add and update images or image url in Volusion using Volusion API -

javascript - IE9 error '$'is not defined -