Ejemplo n.º 1
0
        public MangaHereTests()
        {
            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 MangaHere(logger.Object, downloader, new XPathSelector(), new Retry(), ChromeDriver);
        }
Ejemplo n.º 2
0
        public async Task MangaHere_Test()
        {
            string url      = "http://www.mangahere.cc/manga/the_god_of_high_school/";
            var    service  = new MangaHere(_logger, new Downloader(_logger), new HtmlAtilityPackAdapter(), new Retry());
            var    chapters = await service.FindChapters(url, new Progress <int>(), _source.Token);

            Assert.IsTrue(chapters.Any(), "Cannot find chapters.");
            var chapter = chapters.Last();

            Assert.AreEqual("The God Of High School", chapter.Manga);
            Assert.AreEqual("The God Of High School 1", chapter.DisplayName);
            Assert.AreEqual("http://www.mangahere.cc/manga/the_god_of_high_school/c001/", chapter.Url);
            var images = await service.FindImages(chapter, new Progress <int>(), _source.Token);

            Assert.AreEqual(55, images.Count());
            Assert.IsTrue(images.ToArray()[0].StartsWith("https://mhcdn.secure.footprint.net/store/manga/9275/001.0/compressed/m001.01.jpg"));
            Assert.IsTrue(images.ToArray()[1].StartsWith("https://mhcdn.secure.footprint.net/store/manga/9275/001.0/compressed/m001.02.jpg"));
            Assert.IsTrue(images.ToArray()[54].StartsWith("https://mhcdn.secure.footprint.net/store/manga/9275/001.0/compressed/m001.55.jpg"));

            string imageString = await downloader.DownloadStringAsync(images.ToArray()[0], _source.Token);

            Assert.IsNotNull(imageString, "Cannot download image!");
        }
Ejemplo n.º 3
0
        public async Task MangaHere_Test()
        {
            string url     = "http://www.mangahere.cc/manga/deathtopia/";
            var    service = new MangaHere(logger, downloader, new HtmlAtilityPackAdapter(), new Retry());

            Assert.IsTrue(service.Of(url));
            var chapters = await service.FindChapters(url, new Progress <int>(), source.Token);

            Assert.AreEqual(66, chapters.Count(), "Cannot find chapters.");
            var chapter = chapters.Last();

            Assert.AreEqual("Deathtopia", chapter.Manga);
            Assert.AreEqual("Deathtopia 1", chapter.DisplayName);
            Assert.AreEqual("http://www.mangahere.cc/manga/deathtopia/c001/", chapter.Url);
            var images = await service.FindImages(chapter, new Progress <int>(), source.Token);

            Assert.AreEqual(59, images.Count());
            Assert.IsTrue(images.ToArray()[0].StartsWith("https://mangatown.secure.footprint.net/store/manga/14771/001.0/compressed/uimg001.jpg"));
            Assert.IsTrue(images.ToArray()[1].StartsWith("https://mangatown.secure.footprint.net/store/manga/14771/001.0/compressed/uimg002.jpg"));
            Assert.IsTrue(images.ToArray()[58].StartsWith("https://mangatown.secure.footprint.net/store/manga/14771/001.0/compressed/uimg059.jpg"));
            string imageString = await downloader.DownloadStringAsync(images.ToArray()[0], source.Token);

            Assert.IsNotNull(imageString, "Cannot download image!");
        }