### Question:
EventsClientRest extends BaseClientRest implements EventsClient { @Override public void getMarkets(MarketsRequest marketsRequest, StreamObserver<Market> marketsObserver) { String url = buildSportsUrl(marketsRequest.resourcePath()); getRequest(url, marketsRequest, marketsObserver, new MarketsReader()); } EventsClientRest(ConnectionManager connectionManager); @Override void getSports(SportsRequest sportsRequest, StreamObserver<Sport> sportsObserver); @Override void getEvent(EventRequest eventRequest, StreamObserver<Event> eventObserver); @Override void getEvents(EventsRequest eventsRequest, StreamObserver<Event> eventsObserver); @Override void getMarket(MarketRequest marketRequest, StreamObserver<Market> marketObserver); @Override void getMarkets(MarketsRequest marketsRequest, StreamObserver<Market> marketsObserver); @Override void getRunner(RunnerRequest runnerRequest, StreamObserver<Runner> runnerObserver); @Override void getRunners(RunnersRequest runnersRequest, StreamObserver<Runner> runnersObserver);  }### Answer:
@Test @DisplayName("GET markets") void getMarketsTest() { MarketsRequest marketsRequest = mock(MarketsRequest.class); when(marketsRequest.resourcePath()).thenReturn("path"); when(marketsRequest.parameters()).thenReturn(Collections.singletonMap("param", "value")); StreamObserver<Market> streamObserver = (StreamObserver<Market>) mock(StreamObserver.class); unit.getMarkets(marketsRequest, streamObserver); verify(httpClient).get(eq("https: }