Skip to content

Commit

Permalink
Fix binsearch test
Browse files Browse the repository at this point in the history
  • Loading branch information
theotherp committed Jun 8, 2024
1 parent 28b87ac commit 382294f
Show file tree
Hide file tree
Showing 4 changed files with 7 additions and 877 deletions.
4 changes: 2 additions & 2 deletions core/src/main/java/org/nzbhydra/indexers/Binsearch.java
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ public class Binsearch extends Indexer<String> {

private static final Logger logger = LoggerFactory.getLogger(Binsearch.class);

private static final Pattern TITLE_PATTERN = Pattern.compile("(.*)\\.(rar|nfo|mkv|mp3|mobi|avi|mp4|epub|txt|pdf|par2|001|nzb|url|zip|r[0-9]{2})", Pattern.CASE_INSENSITIVE); //Note the " (quotation marks)
private static final Pattern TITLE_PATTERN = Pattern.compile("\"(.*)\\.(rar|nfo|mkv|mp3|mobi|avi|mp4|epub|txt|pdf|par2|001|nzb|url|zip|r[0-9]{2})\"", Pattern.CASE_INSENSITIVE); //Note the " (quotation marks)
private static final Pattern GROUP_PATTERN = Pattern.compile("&g=([\\w\\.]*)&", Pattern.CASE_INSENSITIVE);
private static final Pattern POSTER_PATTERN = Pattern.compile("&p=(.*)&", Pattern.CASE_INSENSITIVE);
private static final Pattern NFO_INFO_PATTERN = Pattern.compile("\\d nfo file", Pattern.CASE_INSENSITIVE);
Expand Down Expand Up @@ -98,7 +98,7 @@ protected void completeIndexerSearchResult(String response, IndexerSearchResult
indexerSearchResult.setTotalResultsKnown(totalKnown);
} else {
indexerSearchResult.setHasMoreResults(false);
indexerSearchResult.setTotalResults(0);
indexerSearchResult.setTotalResults(indexerSearchResult.getSearchResultItems().size());
indexerSearchResult.setTotalResultsKnown(true);
}
indexerSearchResult.setPageSize(100);
Expand Down
14 changes: 4 additions & 10 deletions core/src/test/java/org/nzbhydra/indexers/BinsearchTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -89,20 +89,14 @@ void shouldParseResultsCorrectly() throws Exception {
assertThat(item.getGroup().get()).isEqualTo("alt.binaries.e-book.flood");
}

@Test
void shouldParseOtherResultsCorrectly() throws Exception {
String html = Resources.toString(Resources.getResource(BinsearchTest.class, "/org/nzbhydra/mapping/binsearch_randm.html"), Charsets.UTF_8);
List<SearchResultItem> searchResultItems = testee.getSearchResultItems(html, new SearchRequest());
assertThat(searchResultItems.size()).isEqualTo(41);
}

@Test
void shouldRecognizeIfSingleResultPage() throws Exception {
SearchRequest searchRequest = new SearchRequest(SearchSource.INTERNAL, SearchType.SEARCH, 0, 100);
String html = Resources.toString(Resources.getResource(BinsearchTest.class, "/org/nzbhydra/mapping/binsearch_singlepage.html"), Charsets.UTF_8);
IndexerSearchResult indexerSearchResult = new IndexerSearchResult(testee, "");
List<SearchResultItem> items = new ArrayList<>();
for (int i = 0; i < 24; i++) {
for (int i = 0; i < 4; i++) {
SearchResultItem searchResultItem = new SearchResultItem();
searchResultItem.setPubDate(Instant.now());
items.add(searchResultItem);
Expand All @@ -111,7 +105,7 @@ void shouldRecognizeIfSingleResultPage() throws Exception {
testee.completeIndexerSearchResult(html, indexerSearchResult, null, searchRequest, 0, 100);
assertThat(indexerSearchResult.getOffset()).isEqualTo(0);
assertThat(indexerSearchResult.getPageSize()).isEqualTo(100);
assertThat(indexerSearchResult.getTotalResults()).isEqualTo(24);
assertThat(indexerSearchResult.getTotalResults()).isEqualTo(4);
assertThat(indexerSearchResult.isTotalResultsKnown()).isEqualTo(true);
assertThat(indexerSearchResult.isHasMoreResults()).isEqualTo(false);
}
Expand Down Expand Up @@ -139,7 +133,7 @@ void shouldBuildSimpleQuery() throws IndexerSearchAbortedException {
SearchRequest searchRequest = new SearchRequest(SearchSource.INTERNAL, SearchType.SEARCH, 0, 100);
searchRequest.setQuery("query");
UriComponentsBuilder builder = testee.buildSearchUrl(searchRequest, 0, 100);
assertThat(builder.toUriString()).isEqualTo("https://www.binsearch.info/?adv_col=on&postdate=date&adv_sort=date&min=0&max=100&q=query");
assertThat(builder.toUriString()).isEqualTo("https://www.binsearch.info/?max=100&q=query");
}

@Test
Expand All @@ -148,7 +142,7 @@ void shouldAddRequiredWords() throws IndexerSearchAbortedException {
searchRequest.getInternalData().setRequiredWords(Arrays.asList("a", "b"));
searchRequest.setQuery("query");
UriComponentsBuilder builder = testee.buildSearchUrl(searchRequest, 0, 100);
assertThat(builder.build().toString()).isEqualTo("https://www.binsearch.info/?adv_col=on&postdate=date&adv_sort=date&min=0&max=100&q=query a b");
assertThat(builder.build().toString()).isEqualTo("https://www.binsearch.info/?max=100&q=query a b");
}

@Test
Expand Down
Loading

0 comments on commit 382294f

Please sign in to comment.