/** * {@inheritDoc} */ public SearchResult ofSearchResult(final JSONObject rawData) { return SearchResult.of(rawData); }
@Test(expectedExceptions = QuandlRuntimeException.class) public final void testSearchResult() { SearchResult.of(null); } // CHECKSTYLE:ON
@Test(expectedExceptions = QuandlRuntimeException.class) public final void testSearchResult() { SearchResult.of(null); } // CHECKSTYLE:ON
@Override public SearchResult search(final SearchRequest request) { Client client = ClientBuilder.newClient(); WebTarget target = client.target(API_BASE_URL_V3); target = withAuthToken(target); target = request.appendPathAndQueryParameters(target); int retries = 0; QuandlRuntimeException lastException; do { try { return SearchResult.of(_restDataProvider.getJSONResponse(target, request)); } catch (QuandlTooManyRequestsException qtmre) { lastException = qtmre; s_logger.debug("Quandl returned Too Many Requests, retrying if appropriate"); if (qtmre.isDataExhausted()) { throw new QuandlRequestFailedException("Data request limit exceeded", qtmre); } } catch (QuandlServiceUnavailableException qsue) { lastException = qsue; s_logger.debug("Quandl returned Service Not Available, retrying if appropriate"); } } while (_sessionOptions.getRetryPolicy().checkRetries(retries++)); throw new QuandlRequestFailedException("Giving up on request after " + retries + " retries.", lastException); } }
@Test public void testSearchResult() { SearchResult searchResult1 = SearchResult.of(getTestObj1()); SearchResult searchResult2 = SearchResult.of(getTestObj2()); SearchResult searchResult3 = SearchResult.of(getTestObj1()); Assert.assertEquals(searchResult1, searchResult1); Assert.assertEquals(searchResult1, searchResult3); Assert.assertEquals(searchResult3, searchResult1); Assert.assertNotEquals(searchResult1, searchResult2); Assert.assertNotEquals(searchResult2, searchResult1); // not strictly within the hashCode requirements, but we'd like this to be the case. Assert.assertNotEquals(searchResult1.hashCode(), searchResult2.hashCode()); Assert.assertEquals(searchResult1.hashCode(), searchResult1.hashCode()); Assert.assertEquals(searchResult1.hashCode(), searchResult3.hashCode()); }
@Test public void testSearchResult() { SearchResult searchResult1 = SearchResult.of(getTestObj1()); SearchResult searchResult2 = SearchResult.of(getTestObj2()); SearchResult searchResult3 = SearchResult.of(getTestObj1()); Assert.assertEquals(searchResult1, searchResult1); Assert.assertEquals(searchResult1, searchResult3); Assert.assertEquals(searchResult3, searchResult1); Assert.assertNotEquals(searchResult1, searchResult2); Assert.assertNotEquals(searchResult2, searchResult1); // not strictly within the hashCode requirements, but we'd like this to be the case. Assert.assertNotEquals(searchResult1.hashCode(), searchResult2.hashCode()); Assert.assertEquals(searchResult1.hashCode(), searchResult1.hashCode()); Assert.assertEquals(searchResult1.hashCode(), searchResult3.hashCode()); }
@Test public void testSimpleSearch() { QuandlSession session = getTestSession("https://www.quandl.com/api/v3/datasets.json?query=Crude+Oil"); SearchResult result = session.search(SearchRequest.Builder.of("Crude Oil").build()); Assert.assertEquals(result, SearchResult.of(new JSONObject())); }
@Test public void testSimpleSearch() { ClassicQuandlSessionInterface session = getTestSession("https://www.quandl.com/api/v3/datasets.json?query=Crude+Oil"); SearchResult result = session.search(SearchRequest.Builder.ofQuery("Crude Oil").build()); Assert.assertEquals(result, SearchResult.of(new JSONObject())); }
@Test public void testPagedSearch() { QuandlSession session = getTestSession("https://www.quandl.com/api/v3/datasets.json?query=Crude+Oil&page=2"); SearchResult result = session.search(SearchRequest.Builder.of("Crude Oil").withPageNumber(2).build()); Assert.assertEquals(result, SearchResult.of(new JSONObject())); }
@Test public void testPagedSearch() { ClassicQuandlSessionInterface session = getTestSession("https://www.quandl.com/api/v3/datasets.json?query=Crude+Oil&page=2"); SearchResult result = session.search(SearchRequest.Builder.ofQuery("Crude Oil").withPageNumber(2).build()); Assert.assertEquals(result, SearchResult.of(new JSONObject())); }
@Test public void testPagedSearchMax() { QuandlSession session = getTestSession("https://www.quandl.com/api/v3/datasets.json?query=Crude+Oil&page=2&per_page=100"); SearchResult result = session.search(SearchRequest.Builder.of("Crude Oil").withPageNumber(2).withMaxPerPage(100).build()); Assert.assertEquals(result, SearchResult.of(new JSONObject())); } // CHECKSTYLE:ON
@Test public void testPagedSearchMax() { ClassicQuandlSessionInterface session = getTestSession("https://www.quandl.com/api/v3/datasets.json?query=Crude+Oil&page=2&per_page=100"); SearchResult result = session.search(SearchRequest.Builder.ofQuery("Crude Oil").withPageNumber(2).withMaxPerPage(100).build()); Assert.assertEquals(result, SearchResult.of(new JSONObject())); } // CHECKSTYLE:ON