Search in sources :

Example 41 with SearchRequest

use of org.nzbhydra.searching.searchrequests.SearchRequest in project nzbhydra2 by theotherp.

the class NewznabTest method shoulNotdAddExcludedAndRequiredWordsWithSomeCharacters.

@Test
public void shoulNotdAddExcludedAndRequiredWordsWithSomeCharacters() throws Exception {
    SearchRequest searchRequest = new SearchRequest(SearchSource.INTERNAL, SearchType.SEARCH, 0, 100);
    searchRequest.setQuery("q");
    searchRequest.getInternalData().setForbiddenWords(Lists.newArrayList("a", "b b", "-c", "d.d"));
    assertEquals(UriComponentsBuilder.fromHttpUrl("http://127.0.0.1:1234/api?t=search&extended=1&q=q --a").build(), testee.buildSearchUrl(searchRequest, null, null).build());
}
Also used : SearchRequest(org.nzbhydra.searching.searchrequests.SearchRequest) Test(org.junit.Test)

Example 42 with SearchRequest

use of org.nzbhydra.searching.searchrequests.SearchRequest in project nzbhydra2 by theotherp.

the class NewznabTest method shouldConvertIdIfNecessary.

@Test
public void shouldConvertIdIfNecessary() throws Exception {
    SearchRequest searchRequest = new SearchRequest(SearchSource.INTERNAL, SearchType.SEARCH, 0, 100);
    searchRequest.getIdentifiers().put(IdType.IMDB, "imdbId");
    testee.config.getSupportedSearchIds().add(IdType.TMDB);
    when(infoProviderMock.canConvertAny(anySet(), anySet())).thenReturn(true);
    testee.extendQueryUrlWithSearchIds(searchRequest, uriComponentsBuilderMock);
    verify(uriComponentsBuilderMock).queryParam("tmdbid", "tmdbId");
}
Also used : SearchRequest(org.nzbhydra.searching.searchrequests.SearchRequest) Test(org.junit.Test)

Example 43 with SearchRequest

use of org.nzbhydra.searching.searchrequests.SearchRequest in project nzbhydra2 by theotherp.

the class NewznabTest method shouldNotAddForbiddenWordsToEmptyQuery.

@Test
public void shouldNotAddForbiddenWordsToEmptyQuery() throws Exception {
    SearchRequest searchRequest = new SearchRequest(SearchSource.INTERNAL, SearchType.SEARCH, 0, 100);
    searchRequest.getInternalData().setForbiddenWords(Lists.newArrayList("a", "b", "c"));
    assertEquals(UriComponentsBuilder.fromHttpUrl("http://127.0.0.1:1234/api?t=search&extended=1").build(), testee.buildSearchUrl(searchRequest, null, null).build());
}
Also used : SearchRequest(org.nzbhydra.searching.searchrequests.SearchRequest) Test(org.junit.Test)

Example 44 with SearchRequest

use of org.nzbhydra.searching.searchrequests.SearchRequest in project nzbhydra2 by theotherp.

the class NewznabTest method shouldNotConvertIdIfNotNecessary.

@Test
public void shouldNotConvertIdIfNotNecessary() throws Exception {
    SearchRequest searchRequest = new SearchRequest(SearchSource.INTERNAL, SearchType.SEARCH, 0, 100);
    searchRequest.getIdentifiers().put(IdType.TMDB, "tmdbId");
    testee.extendQueryUrlWithSearchIds(searchRequest, uriComponentsBuilderMock);
    verify(infoProviderMock, never()).convert(anyString(), eq(IdType.TMDB));
}
Also used : SearchRequest(org.nzbhydra.searching.searchrequests.SearchRequest) Test(org.junit.Test)

Example 45 with SearchRequest

use of org.nzbhydra.searching.searchrequests.SearchRequest in project nzbhydra2 by theotherp.

the class NewznabTest method shouldRemoveTrailingTtFromImdbId.

@Test
public void shouldRemoveTrailingTtFromImdbId() throws Exception {
    testee.config = new IndexerConfig();
    testee.config.setSupportedSearchIds(Lists.newArrayList(IdType.IMDB));
    SearchRequest searchRequest = new SearchRequest(SearchSource.INTERNAL, SearchType.SEARCH, 0, 100);
    searchRequest.getIdentifiers().put(IdType.IMDB, "12345");
    UriComponentsBuilder builder = UriComponentsBuilder.fromHttpUrl("http://www.indexerName.com/api");
    builder = testee.extendQueryUrlWithSearchIds(searchRequest, builder);
    MultiValueMap<String, String> params = builder.build().getQueryParams();
    assertTrue(params.containsKey("imdbid"));
    assertEquals(1, params.size());
    assertEquals("12345", params.get("imdbid").get(0));
    verify(infoProviderMock, never()).convert(anyString(), any(IdType.class));
}
Also used : SearchRequest(org.nzbhydra.searching.searchrequests.SearchRequest) UriComponentsBuilder(org.springframework.web.util.UriComponentsBuilder) CoreMatchers.containsString(org.hamcrest.CoreMatchers.containsString) ArgumentMatchers.anyString(org.mockito.ArgumentMatchers.anyString) IdType(org.nzbhydra.mediainfo.InfoProvider.IdType) Test(org.junit.Test)

Aggregations

SearchRequest (org.nzbhydra.searching.searchrequests.SearchRequest)48 Test (org.junit.Test)40 ArgumentMatchers.anyString (org.mockito.ArgumentMatchers.anyString)8 UriComponentsBuilder (org.springframework.web.util.UriComponentsBuilder)8 Stopwatch (com.google.common.base.Stopwatch)5 CoreMatchers.containsString (org.hamcrest.CoreMatchers.containsString)5 IdType (org.nzbhydra.mediainfo.InfoProvider.IdType)4 Iterables (com.google.common.collect.Iterables)3 Sets (com.google.common.collect.Sets)3 Instant (java.time.Instant)3 java.util (java.util)3 HashMap (java.util.HashMap)3 Collectors (java.util.stream.Collectors)3 ConfigProvider (org.nzbhydra.config.ConfigProvider)3 Indexer (org.nzbhydra.indexers.Indexer)3 LoggingMarkers (org.nzbhydra.logging.LoggingMarkers)3 MediaInfo (org.nzbhydra.mediainfo.MediaInfo)3 SearchSource (org.nzbhydra.searching.searchrequests.SearchRequest.SearchSource)3 Logger (org.slf4j.Logger)3 LoggerFactory (org.slf4j.LoggerFactory)3