@Test public void histParameterizedServiceTest() { stubFor(get(urlEqualTo("/hist?date=20170515")) .withHeader("Accept", equalTo("application/json")) .willReturn(aResponse() .withStatus(200) .withHeader("Accept", "application/json") .withHeader("Content-Type", "application/json") .withBodyFile("rest/marketdata/HistParameterizedResponse.json"))); final List<HIST> histList = iexTradingClient.executeRequest(new HistRequestBuilder() .withDate(LocalDate.of(2017, 5, 15)) .build()); final HIST deepHist = histList.get(0); assertThat(deepHist.getLink()).isEqualTo("https://www.googleapis.com/download/storage/v1/b/iex/o/data%2Ffeeds%2F20170515%2F20170515_IEXTP1_DEEP1.0.pcap.gz?generation=1495063270068421&alt=media"); assertThat(deepHist.getDate()).isEqualTo(LocalDate.of(2017, 5, 15)); assertThat(deepHist.getFeed()).isEqualTo("DEEP"); assertThat(deepHist.getVersion()).isEqualTo("1.0"); assertThat(deepHist.getProtocol()).isEqualTo("IEXTP1"); assertThat(deepHist.getSize()).isEqualTo("640265166"); final HIST topsHist = histList.get(1); assertThat(topsHist.getLink()).isEqualTo("https://www.googleapis.com/download/storage/v1/b/iex/o/data%2Ffeeds%2F20170515%2F20170515_IEXTP1_TOPS1.5.pcap.gz?generation=1494982589401271&alt=media"); assertThat(topsHist.getDate()).isEqualTo(LocalDate.of(2017, 5, 15)); assertThat(topsHist.getFeed()).isEqualTo("TOPS"); assertThat(topsHist.getVersion()).isEqualTo("1.5"); assertThat(topsHist.getProtocol()).isEqualTo("IEXTP1"); assertThat(topsHist.getSize()).isEqualTo("503325585"); }
public ParameterizedHistRequestBuilder withDate(final LocalDate date) { return new ParameterizedHistRequestBuilder(date); }
@Test public void shouldSuccessfullyCreateParameterizedRequest() { final LocalDate date = LocalDate.of(2017, 5, 5); final RestRequest<List<HIST>> request = new HistRequestBuilder() .withDate(date) .build(); assertThat(request.getMethodType()).isEqualTo(MethodType.GET); assertThat(request.getPath()).isEqualTo("/hist"); assertThat(request.getResponseType()).isEqualTo(new GenericType<List<HIST>>() { }); assertThat(request.getPathParams()).isEmpty(); assertThat(request.getQueryParams()).contains(entry("date", "20170505")); }
@Override public RestRequest<List<HIST>> build() { return RestRequestBuilder.<List<HIST>>builder() .withPath("/hist").get() .withResponse(new GenericType<List<HIST>>() { }) .addQueryParam(getDateParams()) .addQueryParam(getFilterParams()) .build(); }
private void histParameterizedRequestSample() { final List<HIST> histList = iexTradingClient.executeRequest(new HistRequestBuilder() .withDate(LocalDate.of(2017, 5, 15)) .build()); System.out.println(histList); }
@Test public void histAcceptanceTest() { final List<HIST> histList = iexTradingClient.executeRequest(new HistRequestBuilder() .withDate(LocalDate.of(2017, 5, 15)) .build()); }
@Test(expected = NullPointerException.class) public void shouldThrowNullPointerExceptionWhenDateIsNull() { final LocalDate date = null; new HistRequestBuilder() .withDate(date) .build(); }