Пример #1
0
        public void GetGenres_HasTags_ReturnsTagNames()
        {
            var series = new AniDbSeriesData().WithStandardData();

            series.Tags = new[]
            {
                new TagData
                {
                    Id     = 55,
                    Weight = 400,
                    Name   = "Tag1"
                },
                new TagData
                {
                    Id     = 46,
                    Weight = 400,
                    Name   = "Tag2"
                }
            };

            var aniDbParser = new AniDbParser();

            var genres = aniDbParser.GetGenres(series, 2, false);

            genres.Should().BeEquivalentTo("Tag1", "Tag2");
        }
Пример #2
0
        public void GetGenres_MoreTagsThanMaxGenres_TakesHighestWeighted()
        {
            var series = new AniDbSeriesData().WithStandardData();

            series.Tags = new[]
            {
                new TagData
                {
                    Id     = 55,
                    Weight = 400,
                    Name   = "Tag1"
                },
                new TagData
                {
                    Id     = 46,
                    Weight = 500,
                    Name   = "Tag2"
                }
            };

            var aniDbParser = new AniDbParser();

            var genres = aniDbParser.GetGenres(series, 1, false);

            genres.Should().BeEquivalentTo("Tag2");
        }
Пример #3
0
        public void GetPeople_HasCharacters_ReturnsPersonInfo()
        {
            var series = new AniDbSeriesData
            {
                Characters = new[]
                {
                    new CharacterData
                    {
                        Name   = "CharacterName",
                        Seiyuu = new SeiyuuData
                        {
                            PictureFileName = "Picture.jpg",
                            Name            = "Reverse Name"
                        }
                    }
                }
            };

            var aniDbParser = new AniDbParser();

            var person = aniDbParser.GetPeople(series).Single();

            person.ImageUrl.Should().Be("http://img7.anidb.net/pics/anime/Picture.jpg");
            person.Type.Should().Be(PersonType.Actor);
            person.Role.Should().Be("CharacterName");
        }
Пример #4
0
        public void GetGenres_TooManyTags_IncludesAnimeGenre()
        {
            var series = new AniDbSeriesData().WithStandardData();

            series.Tags = new[]
            {
                new TagData
                {
                    Id     = 55,
                    Weight = 500,
                    Name   = "Tag1"
                },
                new TagData
                {
                    Id     = 46,
                    Weight = 400,
                    Name   = "Tag2"
                }
            };

            var aniDbParser = new AniDbParser();

            var genres = aniDbParser.GetGenres(series, 2, true);

            genres.Should().BeEquivalentTo("Anime", "Tag1");
        }
Пример #5
0
        public void GetGenres_TagWeightUnder400_IgnoresTags()
        {
            var series = new AniDbSeriesData().WithStandardData();

            series.Tags = new[]
            {
                new TagData
                {
                    Id     = 55,
                    Weight = 100,
                    Name   = "Tag1"
                },
                new TagData
                {
                    Id     = 46,
                    Weight = 399,
                    Name   = "Tag2"
                }
            };

            var aniDbParser = new AniDbParser();

            var genres = aniDbParser.GetGenres(series, 2, false);

            genres.Should().BeEmpty();
        }
Пример #6
0
        public void GetTags_ConfiguredForExtraGenresToTags_ReturnsExcessGenres()
        {
            var series = new AniDbSeriesData().WithStandardData();

            series.Tags = new[]
            {
                new TagData
                {
                    Id     = 55,
                    Weight = 400,
                    Name   = "Tag1"
                },
                new TagData
                {
                    Id     = 46,
                    Weight = 500,
                    Name   = "Tag2"
                }
            };

            var aniDbParser = new AniDbParser();

            var tags = aniDbParser.GetTags(series, 2, true);

            tags.Should().BeEquivalentTo("Tag1");
        }
Пример #7
0
        public void GetGenres_HasTags_ReturnsTagNamesProperCased()
        {
            var series = new AniDbSeriesData().WithStandardData();

            series.Tags = new[]
            {
                new TagData
                {
                    Id     = 55,
                    Weight = 400,
                    Name   = "tag name A"
                },
                new TagData
                {
                    Id     = 46,
                    Weight = 400,
                    Name   = "aNotheR tag name"
                }
            };

            var aniDbParser = new AniDbParser();

            var genres = aniDbParser.GetGenres(series, 2, false);

            genres.Should().BeEquivalentTo("Tag Name A", "Another Tag Name");
        }
Пример #8
0
        public void GetGenres_NoTags_ReturnsEmpty()
        {
            var series = new AniDbSeriesData().WithoutTags();

            var aniDbParser = new AniDbParser();

            var genres = aniDbParser.GetGenres(series, 1, false);

            genres.Should().BeNullOrEmpty();
        }
Пример #9
0
        public void GetPeople_NullCreators_ReturnsEmpty()
        {
            var series = new AniDbSeriesData
            {
                Characters = new CharacterData[0]
            };

            var aniDbParser = new AniDbParser();

            aniDbParser.GetPeople(series).Should().BeEmpty();
        }
Пример #10
0
        public void GetGenres_AddAnimeGenreIsTrue_AddsAnimeGenre()
        {
            var series = new AniDbSeriesData().WithStandardData();

            series.Tags = new TagData[0];

            var aniDbParser = new AniDbParser();

            var genres = aniDbParser.GetGenres(series, 2, true);

            genres.Should().BeEquivalentTo("Anime");
        }
Пример #11
0
        public void GetGenres_AddAnimeGenreIsFalse_DoesNotAddAnimeGenre()
        {
            var series = new AniDbSeriesData().WithStandardData();

            series.Tags = new TagData[0];

            var aniDbParser = new AniDbParser();

            var genres = aniDbParser.GetGenres(series, 2, false);

            genres.Should().BeEmpty();
        }
Пример #12
0
        public void FormatDescription_NoDescription_DoesNotThrow()
        {
            var series = new AniDbSeriesData().WithStandardData();

            series.Description = null;

            var aniDbParser = new AniDbParser();

            Action action = () => aniDbParser.FormatDescription(series.Description);

            action.Should().NotThrow();
        }
Пример #13
0
        public void GetPeople_CharactersWithoutSeiyuu_ReturnsEmpty()
        {
            var series = new AniDbSeriesData
            {
                Characters = new[]
                {
                    new CharacterData()
                }
            };

            var aniDbParser = new AniDbParser();

            aniDbParser.GetPeople(series).Should().BeEmpty();
        }
Пример #14
0
        public void GetPeople_HasCreatorsAndCharacters_ReturnsBoth()
        {
            var series = new AniDbSeriesData
            {
                Characters = new[]
                {
                    new CharacterData
                    {
                        Name   = "CharacterName1",
                        Seiyuu = new SeiyuuData
                        {
                            PictureFileName = "Picture1.jpg",
                            Name            = "NameA"
                        }
                    },
                    new CharacterData
                    {
                        Name   = "CharacterName2",
                        Seiyuu = new SeiyuuData
                        {
                            PictureFileName = "Picture2.jpg",
                            Name            = "NameB"
                        }
                    }
                },
                Creators = new[]
                {
                    new CreatorData
                    {
                        Name = "Name1",
                        Type = "Music"
                    },
                    new CreatorData
                    {
                        Name = "Name2",
                        Type = "Direction"
                    }
                }
            };

            var aniDbParser = new AniDbParser();

            var people = aniDbParser.GetPeople(series);

            people.Select(p => p.Name).Should().BeEquivalentTo("NameA", "NameB", "Name1", "Name2");
        }
        public void GetPeople_HasCreators_ReturnsReversedNames()
        {
            var series = new AniDbSeriesData
            {
                Creators = new[]
                {
                    new CreatorData
                    {
                        Name = "Reverse Name"
                    }
                }
            };

            var aniDbParser = new AniDbParser();

            aniDbParser.GetPeople(series).Single().Name.Should().Be("Name Reverse");
        }
Пример #16
0
        public void GetPeople_MusicType_MapsTypeToComposer()
        {
            var series = new AniDbSeriesData
            {
                Creators = new[]
                {
                    new CreatorData
                    {
                        Name = "Reverse Name",
                        Type = "Music"
                    }
                }
            };

            var aniDbParser = new AniDbParser();

            var person = aniDbParser.GetPeople(series).Single();

            person.Type.Should().Be(PersonType.Composer);
        }
Пример #17
0
        public void GetPeople_HasCreators_ReturnsPersonInfo()
        {
            var series = new AniDbSeriesData
            {
                Creators = new[]
                {
                    new CreatorData
                    {
                        Name = "Reverse Name",
                        Type = "Direction"
                    }
                }
            };

            var aniDbParser = new AniDbParser();

            var person = aniDbParser.GetPeople(series).Single();

            person.Type.Should().Be(PersonType.Director);
        }
Пример #18
0
        public void GetTags_IgnoresSpecificTags(int id)
        {
            var series = new AniDbSeriesData().WithStandardData();

            series.Tags = new[]
            {
                new TagData
                {
                    Id     = id,
                    Weight = 600,
                    Name   = "Tag1"
                }
            };

            var aniDbParser = new AniDbParser();

            var tags = aniDbParser.GetTags(series, 0, false);

            tags.Should().BeEmpty();
        }