Esempio n. 1
0
        public void AnimeDetailsPage_ParsedCorrectly()
        {
            string          testLink = "https://myanimelist.net/anime/5114/Fullmetal_Alchemist__Brotherhood/";
            DetailsPageData testPage = MALParser.AnimePage.Details.Parse(testLink);

            Assert.IsNotNull(testPage.PromotionalVideo);
            Assert.IsNotNull(testPage.Description);

            //TODO: Parse background.
            testPage.Background = "";
            Assert.IsNotNull(testPage.Background);
            Assert.AreEqual(testPage.RelatedAnime[MALParser.RelatedAnime.Adaptation].Count, 1);
            Assert.AreEqual(testPage.RelatedAnime[MALParser.RelatedAnime.Alternativeversion].Count, 1);
            Assert.AreEqual(testPage.RelatedAnime[MALParser.RelatedAnime.Sidestory].Count, 2);
            Assert.AreEqual(testPage.RelatedAnime[MALParser.RelatedAnime.Spinoff].Count, 1);

            Assert.AreEqual(testPage.PresentedCharacters.Count, 10);
            Assert.AreEqual(testPage.PresentedStaff.Count, 4);

            Assert.AreEqual(testPage.OpeningTheme.Count, 5);
            Assert.AreEqual(testPage.EndingTheme.Count, 7);

            Assert.AreEqual(testPage.PresentedReviews.Count, 4);
            Assert.AreEqual(testPage.PresentedRecommendations.Count, 24);
        }
Esempio n. 2
0
        public DetailsPageData GetDetailsPage()
        {
            if (m_details != null)
            {
                return(m_details);
            }

            if (m_header.Link_Details == null)
            {
                throw new Exception("There's no details page for this anime.");
            }

            m_details = Details.Parse(m_header.Link_Details.Path);
            return(m_details);
        }
Esempio n. 3
0
        public async Task <DetailsPageData> GetDetailsPageAsync()
        {
            if (m_details != null)
            {
                return(m_details);
            }

            if (m_header.Link_Details == null)
            {
                throw new Exception("There's no details page for this anime.");
            }

            m_details = await Details.ParseAsync(m_header.Link_Details.Path);

            return(m_details);
        }
Esempio n. 4
0
        public void HeaderAnimeInfo_ParsedCorrectly()
        {
            string          testLink = "https://myanimelist.net/anime/5114/Fullmetal_Alchemist__Brotherhood/";
            DetailsPageData testPage = MALParser.AnimePage.Details.Parse(testLink);

            //Header Navbar
            Assert.IsNotNull(testPage.BaseAnimeInfo.Link_Details);
            Assert.IsNotNull(testPage.BaseAnimeInfo.Link_Videos);
            Assert.IsNotNull(testPage.BaseAnimeInfo.Link_Episodes);
            Assert.IsNotNull(testPage.BaseAnimeInfo.Link_Reviews);
            Assert.IsNotNull(testPage.BaseAnimeInfo.Link_Recommendations);
            Assert.IsNotNull(testPage.BaseAnimeInfo.Link_Stats);
            Assert.IsNotNull(testPage.BaseAnimeInfo.Link_CharactersAndStaff);
            Assert.IsNotNull(testPage.BaseAnimeInfo.Link_News);
            Assert.IsNotNull(testPage.BaseAnimeInfo.Link_Forum);
            Assert.IsNotNull(testPage.BaseAnimeInfo.Link_Featured);
            Assert.IsNotNull(testPage.BaseAnimeInfo.Link_Clubs);
            Assert.IsNotNull(testPage.BaseAnimeInfo.Link_Pictures);

            //Header Sidebar
            Assert.IsNotNull(testPage.BaseAnimeInfo.Title);
            Assert.IsNotNull(testPage.BaseAnimeInfo.ImageLink);
            Assert.IsNotNull(testPage.BaseAnimeInfo.Type);
            Assert.IsNotNull(testPage.BaseAnimeInfo.Episodes);
            Assert.IsNotNull(testPage.BaseAnimeInfo.Status);
            Assert.IsNotNull(testPage.BaseAnimeInfo.Aired);
            Assert.IsNotNull(testPage.BaseAnimeInfo.Premiered);
            Assert.IsNotNull(testPage.BaseAnimeInfo.Broadcast);
            Assert.IsNotNull(testPage.BaseAnimeInfo.Source);
            Assert.IsNotNull(testPage.BaseAnimeInfo.Duration);
            Assert.IsNotNull(testPage.BaseAnimeInfo.AgeRating);

            //TODO: Parse ranked
            testPage.BaseAnimeInfo.Ranked = 0;
            Assert.AreNotEqual(testPage.BaseAnimeInfo.Score, -1);
            Assert.AreNotEqual(testPage.BaseAnimeInfo.UsersVoted, -1);
            Assert.AreNotEqual(testPage.BaseAnimeInfo.Ranked, -1);
            Assert.AreNotEqual(testPage.BaseAnimeInfo.Popularity, -1);
            Assert.AreNotEqual(testPage.BaseAnimeInfo.Members, -1);
            Assert.AreNotEqual(testPage.BaseAnimeInfo.Favorites, -1);

            Assert.AreEqual(testPage.BaseAnimeInfo.Studios.Count, 1);
            Assert.AreEqual(testPage.BaseAnimeInfo.Genres.Count, 8);
            Assert.AreEqual(testPage.BaseAnimeInfo.Licensors.Count, 2);
            Assert.AreEqual(testPage.BaseAnimeInfo.Producers.Count, 4);
        }