public async Task MangaFox_Test() { // Test with unlicensed manga. Appveyor CI is US based and cannot access licensed manga in the US. // If we test with a licensed manga, this test will failed. string url = "http://mangafox.la/manga/tian_jiang_xian_shu_nan/"; var service = new MangaFox(_logger, new Downloader(_logger), new HtmlAtilityPackAdapter()); var chapters = await service.FindChapters(url, new Progress <int>(), _source.Token); Assert.IsTrue(chapters.Any(), "Cannot find chapters."); var chapter = chapters.Last(); Assert.AreEqual("Tian Jiang Xian Shu Nan Manga", chapter.Manga); Assert.AreEqual("Tian Jiang Xian Shu Nan 1", chapter.DisplayName); Assert.AreEqual("http://mangafox.la/manga/tian_jiang_xian_shu_nan/c001/1.html", chapter.Url); var images = await service.FindImages(chapter, new Progress <int>(), _source.Token); Assert.AreEqual(15, images.Count()); Assert.IsTrue(images.ToArray()[0].StartsWith("https://lmfcdn.secure.footprint.net/store/manga/19803/001.0/compressed/q001.jpg")); Assert.IsTrue(images.ToArray()[1].StartsWith("https://lmfcdn.secure.footprint.net/store/manga/19803/001.0/compressed/q002.jpg")); Assert.IsTrue(images.ToArray()[2].StartsWith("https://lmfcdn.secure.footprint.net/store/manga/19803/001.0/compressed/q003.jpg")); string imageString = await downloader.DownloadStringAsync(images.ToArray()[0], _source.Token); Assert.IsNotNull(imageString, "Cannot download image!"); }
public FanfoxTests() { var updater = new ChromeDriverUpdater(".\\"); updater.ExecuteAsync().Wait(); source = new CancellationTokenSource(); var options = new ChromeOptions(); options.AddArgument("--window-size=1920,1080"); options.AddArgument("--start-maximized"); options.AddArgument("--headless"); ChromeDriver = new ChromeDriver(options); Wait = new WebDriverWait(ChromeDriver, TimeSpan.FromSeconds(10)); downloader = new HttpDownloader(new FilenameDetector(new GoogleProxyFilenameDetector())); service = new MangaFox(logger.Object, downloader, new XPathSelector(), new Retry(), ChromeDriver); }