public async Task LoadFrom_ReturnsIdentifierOnlySourceDataWithSeriesName()
        {
            var selectedSeriesTitle = "SeriesTitle";

            _aniDbSource.SelectTitle(_aniDbSeriesTitles, "en", Arg.Any <ProcessResultContext>())
            .Returns(selectedSeriesTitle);

            var loader = new AniDbSeasonFromEmbyData(_sources);

            var result = await loader.LoadFrom(_embyItemData);

            result.IsRight.Should().BeTrue();
            result.IfRight(r => r.Data.Should().Be(r));
            result.IfRight(r => r.Source.Should().Be(_sources.AniDb));
            result.IfRight(sd =>
                           sd.Identifier.Should().BeEquivalentTo(new ItemIdentifier(67, Option <int> .None, "SeriesTitle")));
        }
        public async Task LoadFrom_NoIndex_SetsIndexToOne()
        {
            var selectedSeriesTitle = "SeriesTitle";

            this.aniDbSource.SelectTitle(this.aniDbSeriesTitles, "en", Arg.Any <ProcessResultContext>())
            .Returns(selectedSeriesTitle);

            this.embyItemData.Identifier.Returns(new ItemIdentifier(Option <int> .None, Option <int> .None, "Name"));

            var loader = new AniDbSeasonFromEmbyData(this.sources);

            var result = await loader.LoadFrom(this.embyItemData);

            result.IsRight.Should().BeTrue();
            result.IfRight(r => r.Data.Should().Be(r));
            result.IfRight(r => r.Source.Should().Be(this.sources.AniDb));
            result.IfRight(sd =>
                           sd.Identifier.Should().BeEquivalentTo(new ItemIdentifier(1, Option <int> .None, "SeriesTitle")));
        }
        public void CanLoadFrom_WrongItemType_IsFalse()
        {
            var loader = new AniDbSeasonFromEmbyData(_sources);

            loader.CanLoadFrom(MediaItemTypes.Series).Should().BeFalse();
        }
        public void CanLoadFrom_Null_IsFalse()
        {
            var loader = new AniDbSeasonFromEmbyData(_sources);

            loader.CanLoadFrom(null).Should().BeFalse();
        }
        public void CanLoadFrom_CorrectItemType_IsTrue()
        {
            var loader = new AniDbSeasonFromEmbyData(_sources);

            loader.CanLoadFrom(MediaItemTypes.Season).Should().BeTrue();
        }