public void TestConstructor() { var indexer = new TestWebIndexer(); var caps = indexer.TorznabCaps; Assert.True(caps.SearchAvailable); Assert.IsEmpty(caps.TvSearchParams); Assert.False(caps.TvSearchAvailable); Assert.False(caps.TvSearchSeasonAvailable); Assert.False(caps.TvSearchEpAvailable); Assert.False(caps.TvSearchImdbAvailable); Assert.False(caps.TvSearchTvdbAvailable); Assert.False(caps.TvSearchTvRageAvailable); Assert.IsEmpty(caps.MovieSearchParams); Assert.False(caps.MovieSearchAvailable); Assert.False(caps.MovieSearchImdbAvailable); Assert.False(caps.MovieSearchTmdbAvailable); Assert.IsEmpty(caps.MusicSearchParams); Assert.False(caps.MusicSearchAvailable); Assert.False(caps.MusicSearchAlbumAvailable); Assert.False(caps.MusicSearchArtistAvailable); Assert.False(caps.MusicSearchLabelAvailable); Assert.False(caps.MusicSearchYearAvailable); Assert.IsEmpty(caps.BookSearchParams); Assert.False(caps.BookSearchAvailable); Assert.False(caps.BookSearchTitleAvailable); Assert.False(caps.BookSearchAuthorAvailable); Assert.AreEqual(0, caps.Categories.GetTorznabCategoryTree().Count); }
public void TestAddMultiCategoryMapping() { var indexer = new TestWebIndexer(); indexer._AddMultiCategoryMapping(TorznabCatType.MoviesHD, 19, 18); Assert.AreEqual(1, indexer.TorznabCaps.Categories.GetTorznabCategoryTree().Count); }
public void TestConstructorWithCategories() { var indexer = new TestWebIndexer(); indexer.AddTestCategories(); // test Jackett UI categories (internal JSON) var dto = new Indexer(indexer); var dtoCaps = dto.caps.ToList(); Assert.AreEqual(10, dtoCaps.Count); Assert.AreEqual("1000", dtoCaps[0].ID); Assert.AreEqual("1030", dtoCaps[1].ID); Assert.AreEqual("1040", dtoCaps[2].ID); Assert.AreEqual("2000", dtoCaps[3].ID); Assert.AreEqual("2030", dtoCaps[4].ID); Assert.AreEqual("7000", dtoCaps[5].ID); Assert.AreEqual("7030", dtoCaps[6].ID); Assert.AreEqual("137107", dtoCaps[7].ID); Assert.AreEqual("100044", dtoCaps[8].ID); Assert.AreEqual("100040", dtoCaps[9].ID); // movies categories enable potato search Assert.True(dto.potatoenabled); }
public void TestAddCategoryMapping() { var indexer = new TestWebIndexer(); // you can find more complex tests in TorznabCapabilitiesCategoriesTests.cs indexer._AddCategoryMapping("11", TorznabCatType.MoviesSD, "MoviesSD"); Assert.AreEqual(2, indexer.TorznabCaps.Categories.GetTorznabCategories().Count); indexer._AddCategoryMapping(14, TorznabCatType.MoviesHD); Assert.AreEqual(3, indexer.TorznabCaps.Categories.GetTorznabCategories().Count); }
public void TestMapTrackerCatToNewznab() { var indexer = new TestWebIndexer(); indexer.AddTestCategories(); // you can find more complex tests in TorznabCapabilitiesCategoriesTests.cs var torznabCats = indexer._MapTrackerCatToNewznab("1").ToList(); Assert.AreEqual(1, torznabCats.Count); Assert.AreEqual(2000, torznabCats[0]); }
public void TestMapTrackerCatDescToNewznab() { var indexer = new TestWebIndexer(); indexer.AddTestCategories(); // you can find more complex tests in TorznabCapabilitiesCategoriesTests.cs var torznabCats = indexer._MapTrackerCatDescToNewznab("Console/Wii_c").ToList(); Assert.AreEqual(2, torznabCats.Count); Assert.AreEqual(1030, torznabCats[0]); Assert.AreEqual(137107, torznabCats[1]); }
public void TestMapTrackerCatToNewznab() { var indexer = new TestWebIndexer(); indexer.AddTestCategories(); // you can find more complex tests in TorznabCapabilitiesCategoriesTests.cs // TODO: this is wrong, custom cat 100001 doesn't exists (it's not defined by us) var torznabCats = indexer._MapTrackerCatToNewznab("1").ToList(); Assert.AreEqual(2, torznabCats.Count); Assert.AreEqual(2000, torznabCats[0]); Assert.AreEqual(100001, torznabCats[1]); }
public void TestMapTorznabCapsToTrackers() { var indexer = new TestWebIndexer(); indexer.AddTestCategories(); // you can find more complex tests in TorznabCapabilitiesCategoriesTests.cs var query = new TorznabQuery // int category with subcategories (parent cat) { Categories = new [] { TorznabCatType.Movies.ID } }; var trackerCats = indexer._MapTorznabCapsToTrackers(query); Assert.AreEqual(2, trackerCats.Count); Assert.AreEqual("1", trackerCats[0]); // Movies Assert.AreEqual("mov_sd", trackerCats[1]); // Movies SD }
public void TestConstructor() { var indexer = new TestWebIndexer(); var dto = new Indexer(indexer); Assert.AreEqual("test_id", dto.id); Assert.AreEqual("test_name", dto.name); Assert.AreEqual("test_description", dto.description); Assert.AreEqual("private", dto.type); Assert.False(dto.configured); Assert.AreEqual("https://test.link/", dto.site_link); Assert.AreEqual(2, dto.alternativesitelinks.ToList().Count); Assert.AreEqual("en-us", dto.language); Assert.AreEqual("", dto.last_error); Assert.False(dto.potatoenabled); Assert.AreEqual(0, dto.caps.ToList().Count); }
public void TestAddCategoryMapping() { var indexer = new TestWebIndexer(); // you can find more complex tests in TorznabCapabilitiesCategoriesTests.cs indexer._AddCategoryMapping("11", TorznabCatType.MoviesSD, "MoviesSD"); var expected = new List <TorznabCategory> { TorznabCatType.Movies.CopyWithoutSubCategories(), new TorznabCategory(100011, "MoviesSD") }; expected[0].SubCategories.Add(TorznabCatType.MoviesSD.CopyWithoutSubCategories()); TestCategories.CompareCategoryTrees(expected, indexer.TorznabCaps.Categories.GetTorznabCategoryTree()); indexer._AddCategoryMapping(14, TorznabCatType.MoviesHD); expected[0].SubCategories.Add(TorznabCatType.MoviesHD.CopyWithoutSubCategories()); TestCategories.CompareCategoryTrees(expected, indexer.TorznabCaps.Categories.GetTorznabCategoryTree()); }
public void TestFixResultsOriginPublishDate() { var indexer = new TestWebIndexer(); var query = new TorznabQuery(); var results = new List <ReleaseInfo> { new ReleaseInfo { PublishDate = new DateTime(3000, 1, 1) // future date } }; // fix origin and publish date Assert.AreEqual(null, results.First().Origin); Assert.AreEqual(3000, results.First().PublishDate.Year); var fixedResults = indexer._FixResults(query, results).ToList(); Assert.AreEqual(indexer.Id, fixedResults.First().Origin.Id); Assert.AreEqual(DateTime.Now.Year, fixedResults.First().PublishDate.Year); }
public void TestFilterResultsLimit() { var indexer = new TestWebIndexer(); var results = new List <ReleaseInfo> { new ReleaseInfo(), new ReleaseInfo() }; var query = new TorznabQuery(); var filteredResults = indexer._FilterResults(query, results).ToList(); Assert.AreEqual(2, filteredResults.Count); query = new TorznabQuery { Limit = 1 }; filteredResults = indexer._FilterResults(query, results).ToList(); Assert.AreEqual(1, filteredResults.Count); }
public void TestFixResultsMagnet() { var indexer = new TestWebIndexer(); var query = new TorznabQuery(); // get info_hash from magnet var results = new List <ReleaseInfo> { new ReleaseInfo { MagnetUri = new Uri("magnet:?xt=urn:btih:3333333333333333333333333333333333333333&dn=Title&tr=udp%3A%2F%2Ftracker.com%3A6969") } }; Assert.AreEqual(null, results.First().InfoHash); var fixedResults = indexer._FixResults(query, results).ToList(); Assert.AreEqual("3333333333333333333333333333333333333333", fixedResults.First().InfoHash); // build magnet from info_hash (private site), not allowed results = new List <ReleaseInfo> { new ReleaseInfo { Title = "Tracker Title", InfoHash = "3333333333333333333333333333333333333333" } }; Assert.AreEqual(null, results.First().MagnetUri); fixedResults = indexer._FixResults(query, results).ToList(); Assert.AreEqual(null, fixedResults.First().MagnetUri); // build magnet from info_hash (public, semi-private sites) indexer.SetType("public"); Assert.AreEqual(null, results.First().MagnetUri); fixedResults = indexer._FixResults(query, results).ToList(); Assert.True(fixedResults.First().MagnetUri.ToString().Contains("3333333333333333333333333333333333333333")); }
public void TestFilterResultsCategories() { var indexer = new TestWebIndexer(); indexer.AddTestCategories(); var results = new List <ReleaseInfo> { new ReleaseInfo { Category = new List <int> { TorznabCatType.Movies.ID } }, new ReleaseInfo { Category = new List <int> { TorznabCatType.MoviesSD.ID } }, new ReleaseInfo { Category = new List <int> { TorznabCatType.BooksEBook.ID, 100004 } // torznab (mandatory) + custom cat }, new ReleaseInfo { Category = new List <int> { TorznabCatType.AudioLossless.ID } // unsupported category in this indexer }, new ReleaseInfo() }; var query = new TorznabQuery(); // without categories var filteredResults = indexer._FilterResults(query, results).ToList(); Assert.AreEqual(5, filteredResults.Count); query = new TorznabQuery // with child category { Categories = new [] { TorznabCatType.MoviesSD.ID } }; filteredResults = indexer._FilterResults(query, results).ToList(); Assert.AreEqual(2, filteredResults.Count); Assert.AreEqual(TorznabCatType.MoviesSD.ID, filteredResults[0].Category.First()); Assert.AreEqual(null, filteredResults[1].Category); query = new TorznabQuery // with parent category { Categories = new [] { TorznabCatType.Movies.ID } }; filteredResults = indexer._FilterResults(query, results).ToList(); Assert.AreEqual(3, filteredResults.Count); Assert.AreEqual(TorznabCatType.Movies.ID, filteredResults[0].Category.First()); Assert.AreEqual(TorznabCatType.MoviesSD.ID, filteredResults[1].Category.First()); Assert.AreEqual(null, filteredResults[2].Category); query = new TorznabQuery // with custom category { Categories = new [] { 100004 } }; filteredResults = indexer._FilterResults(query, results).ToList(); Assert.AreEqual(2, filteredResults.Count); Assert.AreEqual(TorznabCatType.BooksEBook.ID, filteredResults[0].Category.First()); Assert.AreEqual(null, filteredResults[1].Category); }
public void TestFilterResults() { var indexer = new TestWebIndexer(); var results = new List <ReleaseInfo> { new ReleaseInfo { Category = new List <int> { TorznabCatType.Movies.ID } }, new ReleaseInfo { Category = new List <int> { TorznabCatType.MoviesSD.ID } }, new ReleaseInfo { Category = new List <int> { TorznabCatType.BooksEBook.ID, 100004 } // torznab (mandatory) + custom cat }, new ReleaseInfo() }; var query = new TorznabQuery(); // without categories var filteredResults = indexer._FilterResults(query, results).ToList(); Assert.AreEqual(4, filteredResults.Count); // TODO: fix this, we should return MoviesSD and null query = new TorznabQuery // with child category { Categories = new [] { TorznabCatType.MoviesSD.ID } }; filteredResults = indexer._FilterResults(query, results).ToList(); Assert.AreEqual(3, filteredResults.Count); Assert.AreEqual(TorznabCatType.Movies.ID, filteredResults[0].Category.First()); Assert.AreEqual(TorznabCatType.MoviesSD.ID, filteredResults[1].Category.First()); Assert.AreEqual(null, filteredResults[2].Category); // TODO: fix this, we should return Movies, MoviesSD and null query = new TorznabQuery // with parent category { Categories = new [] { TorznabCatType.Movies.ID } }; filteredResults = indexer._FilterResults(query, results).ToList(); Assert.AreEqual(2, filteredResults.Count); Assert.AreEqual(TorznabCatType.Movies.ID, filteredResults[0].Category.First()); Assert.AreEqual(null, filteredResults[1].Category); query = new TorznabQuery // with custom category { Categories = new [] { 100004 } }; filteredResults = indexer._FilterResults(query, results).ToList(); Assert.AreEqual(2, filteredResults.Count); Assert.AreEqual(TorznabCatType.BooksEBook.ID, filteredResults[0].Category.First()); Assert.AreEqual(null, filteredResults[1].Category); }