private void earningsRequestSample() { final Earnings earnings = iexTradingClient.executeRequest(new EarningsRequestBuilder() .withSymbol("AAPL") .build()); System.out.println(earnings); }
@Test public void shouldSuccessfullyCreateRequest() { final String symbol = "IBM"; final RestRequest<Earnings> request = new EarningsRequestBuilder() .withSymbol(symbol) .build(); assertThat(request.getMethodType()).isEqualTo(MethodType.GET); assertThat(request.getPath()).isEqualTo("/stock/{symbol}/earnings"); assertThat(request.getResponseType()).isEqualTo(new GenericType<Earnings>() {}); assertThat(request.getPathParams()).containsExactly(entry("symbol", symbol)); assertThat(request.getQueryParams()).isEmpty(); }
@Test public void earningsAcceptanceTest() { final Earnings earnings = iexTradingClient.executeRequest(new EarningsRequestBuilder() .withSymbol("AAPL") .build()); }
@Test public void earningsServiceTest() { stubFor(get(urlEqualTo("/stock/aapl/earnings")) .withHeader("Accept", equalTo("application/json")) .willReturn(aResponse() .withStatus(200) .withHeader("Accept", "application/json") .withHeader("Content-Type", "application/json") .withBodyFile("rest/stock/EarningsResponse.json"))); final Earnings earnings = iexTradingClient.executeRequest(new EarningsRequestBuilder() .withSymbol("aapl") .build()); assertThat(earnings.getSymbol()).isEqualTo("AAPL"); final List<Earning> earningList = earnings.getEarnings(); final Earning earning = earningList.get(0); assertThat(earning.getActualEPS()).isEqualTo(BigDecimal.valueOf(1.67)); assertThat(earning.getConsensusEPS()).isEqualTo(BigDecimal.valueOf(1.57)); assertThat(earning.getEstimatedEPS()).isEqualTo(BigDecimal.valueOf(1.57)); assertThat(earning.getAnnounceTime()).isEqualTo("AMC"); assertThat(earning.getNumberOfEstimates()).isEqualTo(BigDecimal.valueOf(13)); assertThat(earning.getEPSSurpriseDollar()).isEqualTo(BigDecimal.valueOf(0.1)); assertThat(earning.getEPSReportDate()).isEqualTo(LocalDate.of(2017, 8, 1)); assertThat(earning.getFiscalPeriod()).isEqualTo("Q3 2017"); assertThat(earning.getFiscalEndDate()).isEqualTo(LocalDate.of(2017, 6, 30)); assertThat(earning.getYearAgo()).isEqualByComparingTo(BigDecimal.valueOf(3.36)); assertThat(earning.getYearAgoChangePercent()).isEqualByComparingTo(BigDecimal.valueOf(16)); assertThat(earning.getEstimatedChangePercent()).isEqualByComparingTo(BigDecimal.valueOf(14)); assertThat(earning.getSymbolId()).isEqualByComparingTo(BigDecimal.valueOf(11)); }