Beispiel #1
0
        public async Task Test_SyncPlaybackProgressItemObjectJsonReader_Episode_ReadObject_From_Json_String_Incomplete_12()
        {
            var jsonReader = new SyncPlaybackProgressItemObjectJsonReader();

            var traktPlaybackProgressItem = await jsonReader.ReadObjectAsync(TYPE_EPISODE_JSON_INCOMPLETE_12);

            traktPlaybackProgressItem.Should().NotBeNull();
            traktPlaybackProgressItem.Id.Should().Be(0U);
            traktPlaybackProgressItem.Progress.Should().BeNull();
            traktPlaybackProgressItem.PausedAt.Should().BeNull();
            traktPlaybackProgressItem.Type.Should().BeNull();
            traktPlaybackProgressItem.Episode.Should().BeNull();

            traktPlaybackProgressItem.Show.Should().NotBeNull();
            traktPlaybackProgressItem.Show.Title.Should().Be("Game of Thrones");
            traktPlaybackProgressItem.Show.Year.Should().Be(2011);
            traktPlaybackProgressItem.Show.Ids.Should().NotBeNull();
            traktPlaybackProgressItem.Show.Ids.Trakt.Should().Be(1390U);
            traktPlaybackProgressItem.Show.Ids.Slug.Should().Be("game-of-thrones");
            traktPlaybackProgressItem.Show.Ids.Tvdb.Should().Be(121361U);
            traktPlaybackProgressItem.Show.Ids.Imdb.Should().Be("tt0944947");
            traktPlaybackProgressItem.Show.Ids.Tmdb.Should().Be(1399U);
            traktPlaybackProgressItem.Show.Ids.TvRage.Should().Be(24493U);

            traktPlaybackProgressItem.Movie.Should().BeNull();
        }
        public async Task Test_SyncPlaybackProgressItemObjectJsonReader_Movie_ReadObject_From_Stream_Not_Valid_4()
        {
            var jsonReader = new SyncPlaybackProgressItemObjectJsonReader();

            using (var stream = TYPE_MOVIE_JSON_NOT_VALID_4.ToStream())
            {
                var traktPlaybackProgressItem = await jsonReader.ReadObjectAsync(stream);

                traktPlaybackProgressItem.Should().NotBeNull();
                traktPlaybackProgressItem.Id.Should().Be(37U);
                traktPlaybackProgressItem.Progress.Should().Be(65.5f);
                traktPlaybackProgressItem.PausedAt.Should().Be(DateTime.Parse("2015-01-25T22:01:32.000Z").ToUniversalTime());
                traktPlaybackProgressItem.Type.Should().BeNull();
                traktPlaybackProgressItem.Movie.Should().NotBeNull();
                traktPlaybackProgressItem.Movie.Title.Should().Be("Star Wars: The Force Awakens");
                traktPlaybackProgressItem.Movie.Year.Should().Be(2015);
                traktPlaybackProgressItem.Movie.Ids.Should().NotBeNull();
                traktPlaybackProgressItem.Movie.Ids.Trakt.Should().Be(94024U);
                traktPlaybackProgressItem.Movie.Ids.Slug.Should().Be("star-wars-the-force-awakens-2015");
                traktPlaybackProgressItem.Movie.Ids.Imdb.Should().Be("tt2488496");
                traktPlaybackProgressItem.Movie.Ids.Tmdb.Should().Be(140607U);

                traktPlaybackProgressItem.Show.Should().BeNull();
                traktPlaybackProgressItem.Episode.Should().BeNull();
            }
        }
        public async Task Test_SyncPlaybackProgressItemObjectJsonReader_Movie_ReadObject_From_Stream_Incomplete_3()
        {
            var jsonReader = new SyncPlaybackProgressItemObjectJsonReader();

            using (var stream = TYPE_MOVIE_JSON_INCOMPLETE_3.ToStream())
            {
                var traktPlaybackProgressItem = await jsonReader.ReadObjectAsync(stream);

                traktPlaybackProgressItem.Should().NotBeNull();
                traktPlaybackProgressItem.Id.Should().Be(37U);
                traktPlaybackProgressItem.Progress.Should().Be(65.5f);
                traktPlaybackProgressItem.PausedAt.Should().BeNull();
                traktPlaybackProgressItem.Type.Should().Be(TraktSyncType.Movie);
                traktPlaybackProgressItem.Movie.Should().NotBeNull();
                traktPlaybackProgressItem.Movie.Title.Should().Be("Star Wars: The Force Awakens");
                traktPlaybackProgressItem.Movie.Year.Should().Be(2015);
                traktPlaybackProgressItem.Movie.Ids.Should().NotBeNull();
                traktPlaybackProgressItem.Movie.Ids.Trakt.Should().Be(94024U);
                traktPlaybackProgressItem.Movie.Ids.Slug.Should().Be("star-wars-the-force-awakens-2015");
                traktPlaybackProgressItem.Movie.Ids.Imdb.Should().Be("tt2488496");
                traktPlaybackProgressItem.Movie.Ids.Tmdb.Should().Be(140607U);

                traktPlaybackProgressItem.Show.Should().BeNull();
                traktPlaybackProgressItem.Episode.Should().BeNull();
            }
        }
Beispiel #4
0
        public void Test_SyncPlaybackProgressItemObjectJsonReader_ReadObject_From_Stream_Null()
        {
            var jsonReader = new SyncPlaybackProgressItemObjectJsonReader();
            Func <Task <ITraktSyncPlaybackProgressItem> > traktPlaybackProgressItem = () => jsonReader.ReadObjectAsync(default(Stream));

            traktPlaybackProgressItem.Should().Throw <ArgumentNullException>();
        }
Beispiel #5
0
        public async Task Test_SyncPlaybackProgressItemObjectJsonReader_Episode_ReadObject_From_Json_String_Incomplete_2()
        {
            var jsonReader = new SyncPlaybackProgressItemObjectJsonReader();

            var traktPlaybackProgressItem = await jsonReader.ReadObjectAsync(TYPE_EPISODE_JSON_INCOMPLETE_2);

            traktPlaybackProgressItem.Should().NotBeNull();
            traktPlaybackProgressItem.Id.Should().Be(37U);
            traktPlaybackProgressItem.Progress.Should().BeNull();
            traktPlaybackProgressItem.PausedAt.Should().Be(DateTime.Parse("2015-01-25T22:01:32.000Z").ToUniversalTime());
            traktPlaybackProgressItem.Type.Should().Be(TraktSyncType.Episode);
            traktPlaybackProgressItem.Episode.Should().NotBeNull();
            traktPlaybackProgressItem.Episode.SeasonNumber.Should().Be(1);
            traktPlaybackProgressItem.Episode.Number.Should().Be(1);
            traktPlaybackProgressItem.Episode.Title.Should().Be("Winter Is Coming");
            traktPlaybackProgressItem.Episode.Ids.Should().NotBeNull();
            traktPlaybackProgressItem.Episode.Ids.Trakt.Should().Be(73640U);
            traktPlaybackProgressItem.Episode.Ids.Tvdb.Should().Be(3254641U);
            traktPlaybackProgressItem.Episode.Ids.Imdb.Should().Be("tt1480055");
            traktPlaybackProgressItem.Episode.Ids.Tmdb.Should().Be(63056U);
            traktPlaybackProgressItem.Episode.Ids.TvRage.Should().Be(1065008299U);

            traktPlaybackProgressItem.Show.Should().NotBeNull();
            traktPlaybackProgressItem.Show.Title.Should().Be("Game of Thrones");
            traktPlaybackProgressItem.Show.Year.Should().Be(2011);
            traktPlaybackProgressItem.Show.Ids.Should().NotBeNull();
            traktPlaybackProgressItem.Show.Ids.Trakt.Should().Be(1390U);
            traktPlaybackProgressItem.Show.Ids.Slug.Should().Be("game-of-thrones");
            traktPlaybackProgressItem.Show.Ids.Tvdb.Should().Be(121361U);
            traktPlaybackProgressItem.Show.Ids.Imdb.Should().Be("tt0944947");
            traktPlaybackProgressItem.Show.Ids.Tmdb.Should().Be(1399U);
            traktPlaybackProgressItem.Show.Ids.TvRage.Should().Be(24493U);

            traktPlaybackProgressItem.Movie.Should().BeNull();
        }
Beispiel #6
0
        public async Task Test_SyncPlaybackProgressItemObjectJsonReader_Episode_ReadObject_From_JsonReader_Not_Valid_5()
        {
            var traktJsonReader = new SyncPlaybackProgressItemObjectJsonReader();

            using (var reader = new StringReader(TYPE_EPISODE_JSON_NOT_VALID_5))
                using (var jsonReader = new JsonTextReader(reader))
                {
                    var traktPlaybackProgressItem = await traktJsonReader.ReadObjectAsync(jsonReader);

                    traktPlaybackProgressItem.Should().NotBeNull();
                    traktPlaybackProgressItem.Id.Should().Be(37U);
                    traktPlaybackProgressItem.Progress.Should().Be(65.5f);
                    traktPlaybackProgressItem.PausedAt.Should().Be(DateTime.Parse("2015-01-25T22:01:32.000Z").ToUniversalTime());
                    traktPlaybackProgressItem.Type.Should().Be(TraktSyncType.Episode);
                    traktPlaybackProgressItem.Episode.Should().BeNull();

                    traktPlaybackProgressItem.Show.Should().NotBeNull();
                    traktPlaybackProgressItem.Show.Title.Should().Be("Game of Thrones");
                    traktPlaybackProgressItem.Show.Year.Should().Be(2011);
                    traktPlaybackProgressItem.Show.Ids.Should().NotBeNull();
                    traktPlaybackProgressItem.Show.Ids.Trakt.Should().Be(1390U);
                    traktPlaybackProgressItem.Show.Ids.Slug.Should().Be("game-of-thrones");
                    traktPlaybackProgressItem.Show.Ids.Tvdb.Should().Be(121361U);
                    traktPlaybackProgressItem.Show.Ids.Imdb.Should().Be("tt0944947");
                    traktPlaybackProgressItem.Show.Ids.Tmdb.Should().Be(1399U);
                    traktPlaybackProgressItem.Show.Ids.TvRage.Should().Be(24493U);

                    traktPlaybackProgressItem.Movie.Should().BeNull();
                }
        }
Beispiel #7
0
        public async Task Test_SyncPlaybackProgressItemObjectJsonReader_Episode_ReadObject_From_Stream_Not_Valid_6()
        {
            var jsonReader = new SyncPlaybackProgressItemObjectJsonReader();

            using (var stream = TYPE_EPISODE_JSON_NOT_VALID_6.ToStream())
            {
                var traktPlaybackProgressItem = await jsonReader.ReadObjectAsync(stream);

                traktPlaybackProgressItem.Should().NotBeNull();
                traktPlaybackProgressItem.Id.Should().Be(37U);
                traktPlaybackProgressItem.Progress.Should().Be(65.5f);
                traktPlaybackProgressItem.PausedAt.Should().Be(DateTime.Parse("2015-01-25T22:01:32.000Z").ToUniversalTime());
                traktPlaybackProgressItem.Type.Should().Be(TraktSyncType.Episode);
                traktPlaybackProgressItem.Episode.Should().NotBeNull();
                traktPlaybackProgressItem.Episode.SeasonNumber.Should().Be(1);
                traktPlaybackProgressItem.Episode.Number.Should().Be(1);
                traktPlaybackProgressItem.Episode.Title.Should().Be("Winter Is Coming");
                traktPlaybackProgressItem.Episode.Ids.Should().NotBeNull();
                traktPlaybackProgressItem.Episode.Ids.Trakt.Should().Be(73640U);
                traktPlaybackProgressItem.Episode.Ids.Tvdb.Should().Be(3254641U);
                traktPlaybackProgressItem.Episode.Ids.Imdb.Should().Be("tt1480055");
                traktPlaybackProgressItem.Episode.Ids.Tmdb.Should().Be(63056U);
                traktPlaybackProgressItem.Episode.Ids.TvRage.Should().Be(1065008299U);

                traktPlaybackProgressItem.Show.Should().BeNull();

                traktPlaybackProgressItem.Movie.Should().BeNull();
            }
        }
Beispiel #8
0
        public async Task Test_SyncPlaybackProgressItemObjectJsonReader_Episode_ReadObject_From_JsonReader_Incomplete_6()
        {
            var traktJsonReader = new SyncPlaybackProgressItemObjectJsonReader();

            using (var reader = new StringReader(TYPE_EPISODE_JSON_INCOMPLETE_6))
                using (var jsonReader = new JsonTextReader(reader))
                {
                    var traktPlaybackProgressItem = await traktJsonReader.ReadObjectAsync(jsonReader);

                    traktPlaybackProgressItem.Should().NotBeNull();
                    traktPlaybackProgressItem.Id.Should().Be(37U);
                    traktPlaybackProgressItem.Progress.Should().Be(65.5f);
                    traktPlaybackProgressItem.PausedAt.Should().Be(DateTime.Parse("2015-01-25T22:01:32.000Z").ToUniversalTime());
                    traktPlaybackProgressItem.Type.Should().Be(TraktSyncType.Episode);
                    traktPlaybackProgressItem.Episode.Should().NotBeNull();
                    traktPlaybackProgressItem.Episode.SeasonNumber.Should().Be(1);
                    traktPlaybackProgressItem.Episode.Number.Should().Be(1);
                    traktPlaybackProgressItem.Episode.Title.Should().Be("Winter Is Coming");
                    traktPlaybackProgressItem.Episode.Ids.Should().NotBeNull();
                    traktPlaybackProgressItem.Episode.Ids.Trakt.Should().Be(73640U);
                    traktPlaybackProgressItem.Episode.Ids.Tvdb.Should().Be(3254641U);
                    traktPlaybackProgressItem.Episode.Ids.Imdb.Should().Be("tt1480055");
                    traktPlaybackProgressItem.Episode.Ids.Tmdb.Should().Be(63056U);
                    traktPlaybackProgressItem.Episode.Ids.TvRage.Should().Be(1065008299U);

                    traktPlaybackProgressItem.Show.Should().BeNull();

                    traktPlaybackProgressItem.Movie.Should().BeNull();
                }
        }
        public async Task Test_SyncPlaybackProgressItemObjectJsonReader_Episode_ReadObject_From_Stream_Incomplete_5()
        {
            var jsonReader = new SyncPlaybackProgressItemObjectJsonReader();

            using (var stream = TYPE_EPISODE_JSON_INCOMPLETE_5.ToStream())
            {
                var traktPlaybackProgressItem = await jsonReader.ReadObjectAsync(stream);

                traktPlaybackProgressItem.Should().NotBeNull();
                traktPlaybackProgressItem.Id.Should().Be(37U);
                traktPlaybackProgressItem.Progress.Should().Be(65.5f);
                traktPlaybackProgressItem.PausedAt.Should().Be(DateTime.Parse("2015-01-25T22:01:32.000Z").ToUniversalTime());
                traktPlaybackProgressItem.Type.Should().Be(TraktSyncType.Episode);
                traktPlaybackProgressItem.Episode.Should().BeNull();

                traktPlaybackProgressItem.Show.Should().NotBeNull();
                traktPlaybackProgressItem.Show.Title.Should().Be("Game of Thrones");
                traktPlaybackProgressItem.Show.Year.Should().Be(2011);
                traktPlaybackProgressItem.Show.Ids.Should().NotBeNull();
                traktPlaybackProgressItem.Show.Ids.Trakt.Should().Be(1390U);
                traktPlaybackProgressItem.Show.Ids.Slug.Should().Be("game-of-thrones");
                traktPlaybackProgressItem.Show.Ids.Tvdb.Should().Be(121361U);
                traktPlaybackProgressItem.Show.Ids.Imdb.Should().Be("tt0944947");
                traktPlaybackProgressItem.Show.Ids.Tmdb.Should().Be(1399U);
                traktPlaybackProgressItem.Show.Ids.TvRage.Should().Be(24493U);

                traktPlaybackProgressItem.Movie.Should().BeNull();
            }
        }
        public async Task Test_SyncPlaybackProgressItemObjectJsonReader_Movie_ReadObject_From_JsonReader_Not_Valid_3()
        {
            var traktJsonReader = new SyncPlaybackProgressItemObjectJsonReader();

            using (var reader = new StringReader(TYPE_MOVIE_JSON_NOT_VALID_3))
                using (var jsonReader = new JsonTextReader(reader))
                {
                    var traktPlaybackProgressItem = await traktJsonReader.ReadObjectAsync(jsonReader);

                    traktPlaybackProgressItem.Should().NotBeNull();
                    traktPlaybackProgressItem.Id.Should().Be(37U);
                    traktPlaybackProgressItem.Progress.Should().Be(65.5f);
                    traktPlaybackProgressItem.PausedAt.Should().BeNull();
                    traktPlaybackProgressItem.Type.Should().Be(TraktSyncType.Movie);
                    traktPlaybackProgressItem.Movie.Should().NotBeNull();
                    traktPlaybackProgressItem.Movie.Title.Should().Be("Star Wars: The Force Awakens");
                    traktPlaybackProgressItem.Movie.Year.Should().Be(2015);
                    traktPlaybackProgressItem.Movie.Ids.Should().NotBeNull();
                    traktPlaybackProgressItem.Movie.Ids.Trakt.Should().Be(94024U);
                    traktPlaybackProgressItem.Movie.Ids.Slug.Should().Be("star-wars-the-force-awakens-2015");
                    traktPlaybackProgressItem.Movie.Ids.Imdb.Should().Be("tt2488496");
                    traktPlaybackProgressItem.Movie.Ids.Tmdb.Should().Be(140607U);

                    traktPlaybackProgressItem.Show.Should().BeNull();
                    traktPlaybackProgressItem.Episode.Should().BeNull();
                }
        }
        public async Task Test_SyncPlaybackProgressItemObjectJsonReader_Movie_ReadObject_From_JsonReader_Incomplete_2()
        {
            var traktJsonReader = new SyncPlaybackProgressItemObjectJsonReader();

            using (var reader = new StringReader(TYPE_MOVIE_JSON_INCOMPLETE_2))
                using (var jsonReader = new JsonTextReader(reader))
                {
                    var traktPlaybackProgressItem = await traktJsonReader.ReadObjectAsync(jsonReader);

                    traktPlaybackProgressItem.Should().NotBeNull();
                    traktPlaybackProgressItem.Id.Should().Be(37U);
                    traktPlaybackProgressItem.Progress.Should().BeNull();
                    traktPlaybackProgressItem.PausedAt.Should().Be(DateTime.Parse("2015-01-25T22:01:32.000Z").ToUniversalTime());
                    traktPlaybackProgressItem.Type.Should().Be(TraktSyncType.Movie);
                    traktPlaybackProgressItem.Movie.Should().NotBeNull();
                    traktPlaybackProgressItem.Movie.Title.Should().Be("Star Wars: The Force Awakens");
                    traktPlaybackProgressItem.Movie.Year.Should().Be(2015);
                    traktPlaybackProgressItem.Movie.Ids.Should().NotBeNull();
                    traktPlaybackProgressItem.Movie.Ids.Trakt.Should().Be(94024U);
                    traktPlaybackProgressItem.Movie.Ids.Slug.Should().Be("star-wars-the-force-awakens-2015");
                    traktPlaybackProgressItem.Movie.Ids.Imdb.Should().Be("tt2488496");
                    traktPlaybackProgressItem.Movie.Ids.Tmdb.Should().Be(140607U);

                    traktPlaybackProgressItem.Show.Should().BeNull();
                    traktPlaybackProgressItem.Episode.Should().BeNull();
                }
        }
        public async Task Test_SyncPlaybackProgressItemObjectJsonReader_Episode_ReadObject_From_Stream_Incomplete_11()
        {
            var jsonReader = new SyncPlaybackProgressItemObjectJsonReader();

            using (var stream = TYPE_EPISODE_JSON_INCOMPLETE_11.ToStream())
            {
                var traktPlaybackProgressItem = await jsonReader.ReadObjectAsync(stream);

                traktPlaybackProgressItem.Should().NotBeNull();
                traktPlaybackProgressItem.Id.Should().Be(0U);
                traktPlaybackProgressItem.Progress.Should().BeNull();
                traktPlaybackProgressItem.PausedAt.Should().BeNull();
                traktPlaybackProgressItem.Type.Should().BeNull();
                traktPlaybackProgressItem.Episode.Should().NotBeNull();
                traktPlaybackProgressItem.Episode.SeasonNumber.Should().Be(1);
                traktPlaybackProgressItem.Episode.Number.Should().Be(1);
                traktPlaybackProgressItem.Episode.Title.Should().Be("Winter Is Coming");
                traktPlaybackProgressItem.Episode.Ids.Should().NotBeNull();
                traktPlaybackProgressItem.Episode.Ids.Trakt.Should().Be(73640U);
                traktPlaybackProgressItem.Episode.Ids.Tvdb.Should().Be(3254641U);
                traktPlaybackProgressItem.Episode.Ids.Imdb.Should().Be("tt1480055");
                traktPlaybackProgressItem.Episode.Ids.Tmdb.Should().Be(63056U);
                traktPlaybackProgressItem.Episode.Ids.TvRage.Should().Be(1065008299U);

                traktPlaybackProgressItem.Show.Should().BeNull();

                traktPlaybackProgressItem.Movie.Should().BeNull();
            }
        }
        public async Task Test_TraktSyncPlaybackProgressItem_With_Type_Movie_From_Minimal_Json()
        {
            var jsonReader           = new SyncPlaybackProgressItemObjectJsonReader();
            var playbackProgressItem = await jsonReader.ReadObjectAsync(TYPE_MOVIE_MINIMAL_JSON) as TraktSyncPlaybackProgressItem;

            playbackProgressItem.Should().NotBeNull();
            playbackProgressItem.Id.Should().Be(37U);
            playbackProgressItem.Progress.Should().Be(65.5f);
            playbackProgressItem.PausedAt.Should().Be(DateTime.Parse("2015-01-25T22:01:32.000Z").ToUniversalTime());
            playbackProgressItem.Type.Should().Be(TraktSyncType.Movie);
            playbackProgressItem.Movie.Should().NotBeNull();
            playbackProgressItem.Movie.Title.Should().Be("Star Wars: The Force Awakens");
            playbackProgressItem.Movie.Year.Should().Be(2015);
            playbackProgressItem.Movie.Ids.Should().NotBeNull();
            playbackProgressItem.Movie.Ids.Trakt.Should().Be(94024U);
            playbackProgressItem.Movie.Ids.Slug.Should().Be("star-wars-the-force-awakens-2015");
            playbackProgressItem.Movie.Ids.Imdb.Should().Be("tt2488496");
            playbackProgressItem.Movie.Ids.Tmdb.Should().Be(140607U);
            playbackProgressItem.Movie.Tagline.Should().BeNullOrEmpty();
            playbackProgressItem.Movie.Overview.Should().BeNullOrEmpty();
            playbackProgressItem.Movie.Released.Should().NotHaveValue();
            playbackProgressItem.Movie.Runtime.Should().NotHaveValue();
            playbackProgressItem.Movie.UpdatedAt.Should().NotHaveValue();
            playbackProgressItem.Movie.Trailer.Should().BeNullOrEmpty();
            playbackProgressItem.Movie.Homepage.Should().BeNullOrEmpty();
            playbackProgressItem.Movie.Rating.Should().NotHaveValue();
            playbackProgressItem.Movie.Votes.Should().NotHaveValue();
            playbackProgressItem.Movie.LanguageCode.Should().BeNullOrEmpty();
            playbackProgressItem.Movie.AvailableTranslationLanguageCodes.Should().BeNull();
            playbackProgressItem.Movie.Genres.Should().BeNull();
            playbackProgressItem.Movie.Certification.Should().BeNullOrEmpty();
            playbackProgressItem.Show.Should().BeNull();
            playbackProgressItem.Episode.Should().BeNull();
        }
        public async Task Test_TraktSyncPlaybackProgressItem_With_Type_Movie_From_Full_Json()
        {
            var jsonReader           = new SyncPlaybackProgressItemObjectJsonReader();
            var playbackProgressItem = await jsonReader.ReadObjectAsync(TYPE_MOVIE_FULL_JSON) as TraktSyncPlaybackProgressItem;

            playbackProgressItem.Should().NotBeNull();
            playbackProgressItem.Id.Should().Be(37U);
            playbackProgressItem.Progress.Should().Be(65.5f);
            playbackProgressItem.PausedAt.Should().Be(DateTime.Parse("2015-01-25T22:01:32.000Z").ToUniversalTime());
            playbackProgressItem.Type.Should().Be(TraktSyncType.Movie);
            playbackProgressItem.Movie.Should().NotBeNull();
            playbackProgressItem.Movie.Title.Should().Be("Star Wars: The Force Awakens");
            playbackProgressItem.Movie.Year.Should().Be(2015);
            playbackProgressItem.Movie.Ids.Should().NotBeNull();
            playbackProgressItem.Movie.Ids.Trakt.Should().Be(94024U);
            playbackProgressItem.Movie.Ids.Slug.Should().Be("star-wars-the-force-awakens-2015");
            playbackProgressItem.Movie.Ids.Imdb.Should().Be("tt2488496");
            playbackProgressItem.Movie.Ids.Tmdb.Should().Be(140607U);
            playbackProgressItem.Movie.Tagline.Should().Be("Every generation has a story.");
            playbackProgressItem.Movie.Overview.Should().Be("Thirty years after defeating the Galactic Empire, Han Solo and his allies face a new threat from the evil Kylo Ren and his army of Stormtroopers.");
            playbackProgressItem.Movie.Released.Should().Be(DateTime.Parse("2015-12-18"));
            playbackProgressItem.Movie.Runtime.Should().Be(136);
            playbackProgressItem.Movie.UpdatedAt.Should().Be(DateTime.Parse("2016-03-31T09:01:59Z").ToUniversalTime());
            playbackProgressItem.Movie.Trailer.Should().Be("http://youtube.com/watch?v=uwa7N0ShN2U");
            playbackProgressItem.Movie.Homepage.Should().Be("http://www.starwars.com/films/star-wars-episode-vii");
            playbackProgressItem.Movie.Rating.Should().Be(8.31988f);
            playbackProgressItem.Movie.Votes.Should().Be(9338);
            playbackProgressItem.Movie.LanguageCode.Should().Be("en");
            playbackProgressItem.Movie.AvailableTranslationLanguageCodes.Should().NotBeNull().And.HaveCount(4).And.Contain("en", "de", "en", "it");
            playbackProgressItem.Movie.Genres.Should().NotBeNull().And.HaveCount(4).And.Contain("action", "adventure", "fantasy", "science-fiction");
            playbackProgressItem.Movie.Certification.Should().Be("PG-13");
            playbackProgressItem.Show.Should().BeNull();
            playbackProgressItem.Episode.Should().BeNull();
        }
Beispiel #15
0
        public async Task Test_SyncPlaybackProgressItemObjectJsonReader_Episode_ReadObject_From_Json_String_Not_Valid_3()
        {
            var jsonReader = new SyncPlaybackProgressItemObjectJsonReader();

            var traktPlaybackProgressItem = await jsonReader.ReadObjectAsync(TYPE_EPISODE_JSON_NOT_VALID_3);

            traktPlaybackProgressItem.Should().NotBeNull();
            traktPlaybackProgressItem.Id.Should().Be(37U);
            traktPlaybackProgressItem.Progress.Should().Be(65.5f);
            traktPlaybackProgressItem.PausedAt.Should().BeNull();
            traktPlaybackProgressItem.Type.Should().Be(TraktSyncType.Episode);
            traktPlaybackProgressItem.Episode.Should().NotBeNull();
            traktPlaybackProgressItem.Episode.SeasonNumber.Should().Be(1);
            traktPlaybackProgressItem.Episode.Number.Should().Be(1);
            traktPlaybackProgressItem.Episode.Title.Should().Be("Winter Is Coming");
            traktPlaybackProgressItem.Episode.Ids.Should().NotBeNull();
            traktPlaybackProgressItem.Episode.Ids.Trakt.Should().Be(73640U);
            traktPlaybackProgressItem.Episode.Ids.Tvdb.Should().Be(3254641U);
            traktPlaybackProgressItem.Episode.Ids.Imdb.Should().Be("tt1480055");
            traktPlaybackProgressItem.Episode.Ids.Tmdb.Should().Be(63056U);
            traktPlaybackProgressItem.Episode.Ids.TvRage.Should().Be(1065008299U);

            traktPlaybackProgressItem.Show.Should().NotBeNull();
            traktPlaybackProgressItem.Show.Title.Should().Be("Game of Thrones");
            traktPlaybackProgressItem.Show.Year.Should().Be(2011);
            traktPlaybackProgressItem.Show.Ids.Should().NotBeNull();
            traktPlaybackProgressItem.Show.Ids.Trakt.Should().Be(1390U);
            traktPlaybackProgressItem.Show.Ids.Slug.Should().Be("game-of-thrones");
            traktPlaybackProgressItem.Show.Ids.Tvdb.Should().Be(121361U);
            traktPlaybackProgressItem.Show.Ids.Imdb.Should().Be("tt0944947");
            traktPlaybackProgressItem.Show.Ids.Tmdb.Should().Be(1399U);
            traktPlaybackProgressItem.Show.Ids.TvRage.Should().Be(24493U);

            traktPlaybackProgressItem.Movie.Should().BeNull();
        }
        public async Task Test_TraktSyncPlaybackProgressItem_With_Type_Episode_From_Minimal_Json()
        {
            var jsonReader           = new SyncPlaybackProgressItemObjectJsonReader();
            var playbackProgressItem = await jsonReader.ReadObjectAsync(TYPE_EPISODE_MINIMAL_JSON) as TraktSyncPlaybackProgressItem;

            playbackProgressItem.Should().NotBeNull();
            playbackProgressItem.Id.Should().Be(37U);
            playbackProgressItem.Progress.Should().Be(65.5f);
            playbackProgressItem.PausedAt.Should().Be(DateTime.Parse("2015-01-25T22:01:32.000Z").ToUniversalTime());
            playbackProgressItem.Type.Should().Be(TraktSyncType.Episode);
            playbackProgressItem.Episode.Should().NotBeNull();
            playbackProgressItem.Episode.SeasonNumber.Should().Be(1);
            playbackProgressItem.Episode.Number.Should().Be(1);
            playbackProgressItem.Episode.Title.Should().Be("Winter Is Coming");
            playbackProgressItem.Episode.Ids.Should().NotBeNull();
            playbackProgressItem.Episode.Ids.Trakt.Should().Be(73640U);
            playbackProgressItem.Episode.Ids.Tvdb.Should().Be(3254641U);
            playbackProgressItem.Episode.Ids.Imdb.Should().Be("tt1480055");
            playbackProgressItem.Episode.Ids.Tmdb.Should().Be(63056U);
            playbackProgressItem.Episode.Ids.TvRage.Should().Be(1065008299U);
            playbackProgressItem.Episode.NumberAbsolute.Should().NotHaveValue();
            playbackProgressItem.Episode.Overview.Should().BeNullOrEmpty();
            playbackProgressItem.Episode.Runtime.Should().NotHaveValue();
            playbackProgressItem.Episode.Rating.Should().NotHaveValue();
            playbackProgressItem.Episode.Votes.Should().NotHaveValue();
            playbackProgressItem.Episode.FirstAired.Should().NotHaveValue();
            playbackProgressItem.Episode.UpdatedAt.Should().NotHaveValue();
            playbackProgressItem.Episode.AvailableTranslationLanguageCodes.Should().BeNull();
            playbackProgressItem.Episode.Translations.Should().BeNull();
            playbackProgressItem.Show.Should().NotBeNull();
            playbackProgressItem.Show.Title.Should().Be("Game of Thrones");
            playbackProgressItem.Show.Year.Should().Be(2011);
            playbackProgressItem.Show.Airs.Should().BeNull();
            playbackProgressItem.Show.AvailableTranslationLanguageCodes.Should().BeNull();
            playbackProgressItem.Show.Ids.Should().NotBeNull();
            playbackProgressItem.Show.Ids.Trakt.Should().Be(1390U);
            playbackProgressItem.Show.Ids.Slug.Should().Be("game-of-thrones");
            playbackProgressItem.Show.Ids.Tvdb.Should().Be(121361U);
            playbackProgressItem.Show.Ids.Imdb.Should().Be("tt0944947");
            playbackProgressItem.Show.Ids.Tmdb.Should().Be(1399U);
            playbackProgressItem.Show.Ids.TvRage.Should().Be(24493U);
            playbackProgressItem.Show.Genres.Should().BeNull();
            playbackProgressItem.Show.Seasons.Should().BeNull();
            playbackProgressItem.Show.Overview.Should().BeNullOrEmpty();
            playbackProgressItem.Show.FirstAired.Should().NotHaveValue();
            playbackProgressItem.Show.Runtime.Should().NotHaveValue();
            playbackProgressItem.Show.Certification.Should().BeNullOrEmpty();
            playbackProgressItem.Show.Network.Should().BeNullOrEmpty();
            playbackProgressItem.Show.CountryCode.Should().BeNullOrEmpty();
            playbackProgressItem.Show.UpdatedAt.Should().NotHaveValue();
            playbackProgressItem.Show.Trailer.Should().BeNullOrEmpty();
            playbackProgressItem.Show.Homepage.Should().BeNullOrEmpty();
            playbackProgressItem.Show.Status.Should().BeNull();
            playbackProgressItem.Show.Rating.Should().NotHaveValue();
            playbackProgressItem.Show.Votes.Should().NotHaveValue();
            playbackProgressItem.Show.LanguageCode.Should().BeNullOrEmpty();
            playbackProgressItem.Show.AiredEpisodes.Should().NotHaveValue();
            playbackProgressItem.Movie.Should().BeNull();
        }
Beispiel #17
0
        public async Task Test_SyncPlaybackProgressItemObjectJsonReader_ReadObject_From_JsonReader_Null()
        {
            var traktJsonReader = new SyncPlaybackProgressItemObjectJsonReader();

            var traktPlaybackProgressItem = await traktJsonReader.ReadObjectAsync(default(JsonTextReader));

            traktPlaybackProgressItem.Should().BeNull();
        }
Beispiel #18
0
        public async Task Test_SyncPlaybackProgressItemObjectJsonReader_ReadObject_From_Json_String_Empty()
        {
            var jsonReader = new SyncPlaybackProgressItemObjectJsonReader();

            var traktPlaybackProgressItem = await jsonReader.ReadObjectAsync(string.Empty);

            traktPlaybackProgressItem.Should().BeNull();
        }
Beispiel #19
0
        public async Task Test_SyncPlaybackProgressItemObjectJsonReader_ReadObject_From_Stream_Empty()
        {
            var jsonReader = new SyncPlaybackProgressItemObjectJsonReader();

            using (var stream = string.Empty.ToStream())
            {
                var traktPlaybackProgressItem = await jsonReader.ReadObjectAsync(stream);

                traktPlaybackProgressItem.Should().BeNull();
            }
        }
        public async Task Test_SyncPlaybackProgressItemObjectJsonReader_ReadObject_From_JsonReader_Empty()
        {
            var traktJsonReader = new SyncPlaybackProgressItemObjectJsonReader();

            using (var reader = new StringReader(string.Empty))
                using (var jsonReader = new JsonTextReader(reader))
                {
                    var traktPlaybackProgressItem = await traktJsonReader.ReadObjectAsync(jsonReader);

                    traktPlaybackProgressItem.Should().BeNull();
                }
        }
Beispiel #21
0
        public async Task Test_SyncPlaybackProgressItemObjectJsonReader_Movie_ReadObject_From_Json_String_Not_Valid_6()
        {
            var jsonReader = new SyncPlaybackProgressItemObjectJsonReader();

            var traktPlaybackProgressItem = await jsonReader.ReadObjectAsync(TYPE_MOVIE_JSON_NOT_VALID_6);

            traktPlaybackProgressItem.Should().NotBeNull();
            traktPlaybackProgressItem.Id.Should().Be(0U);
            traktPlaybackProgressItem.Progress.Should().BeNull();
            traktPlaybackProgressItem.PausedAt.Should().BeNull();
            traktPlaybackProgressItem.Type.Should().BeNull();
            traktPlaybackProgressItem.Movie.Should().BeNull();
            traktPlaybackProgressItem.Show.Should().BeNull();
            traktPlaybackProgressItem.Episode.Should().BeNull();
        }
Beispiel #22
0
        public async Task Test_SyncPlaybackProgressItemObjectJsonReader_Movie_ReadObject_From_Json_String_Not_Valid_5()
        {
            var jsonReader = new SyncPlaybackProgressItemObjectJsonReader();

            var traktPlaybackProgressItem = await jsonReader.ReadObjectAsync(TYPE_MOVIE_JSON_NOT_VALID_5);

            traktPlaybackProgressItem.Should().NotBeNull();
            traktPlaybackProgressItem.Id.Should().Be(37U);
            traktPlaybackProgressItem.Progress.Should().Be(65.5f);
            traktPlaybackProgressItem.PausedAt.Should().Be(DateTime.Parse("2015-01-25T22:01:32.000Z").ToUniversalTime());
            traktPlaybackProgressItem.Type.Should().Be(TraktSyncType.Movie);
            traktPlaybackProgressItem.Movie.Should().BeNull();

            traktPlaybackProgressItem.Show.Should().BeNull();
            traktPlaybackProgressItem.Episode.Should().BeNull();
        }
Beispiel #23
0
        public async Task Test_SyncPlaybackProgressItemObjectJsonReader_Movie_ReadObject_From_Json_String_Incomplete_9()
        {
            var jsonReader = new SyncPlaybackProgressItemObjectJsonReader();

            var traktPlaybackProgressItem = await jsonReader.ReadObjectAsync(TYPE_MOVIE_JSON_INCOMPLETE_9);

            traktPlaybackProgressItem.Should().NotBeNull();
            traktPlaybackProgressItem.Id.Should().Be(0U);
            traktPlaybackProgressItem.Progress.Should().BeNull();
            traktPlaybackProgressItem.PausedAt.Should().BeNull();
            traktPlaybackProgressItem.Type.Should().Be(TraktSyncType.Movie);
            traktPlaybackProgressItem.Movie.Should().BeNull();

            traktPlaybackProgressItem.Show.Should().BeNull();
            traktPlaybackProgressItem.Episode.Should().BeNull();
        }
Beispiel #24
0
        public async Task Test_SyncPlaybackProgressItemObjectJsonReader_Movie_ReadObject_From_Json_String_Incomplete_8()
        {
            var jsonReader = new SyncPlaybackProgressItemObjectJsonReader();

            var traktPlaybackProgressItem = await jsonReader.ReadObjectAsync(TYPE_MOVIE_JSON_INCOMPLETE_8);

            traktPlaybackProgressItem.Should().NotBeNull();
            traktPlaybackProgressItem.Id.Should().Be(0U);
            traktPlaybackProgressItem.Progress.Should().BeNull();
            traktPlaybackProgressItem.PausedAt.Should().Be(DateTime.Parse("2015-01-25T22:01:32.000Z").ToUniversalTime());
            traktPlaybackProgressItem.Type.Should().BeNull();
            traktPlaybackProgressItem.Movie.Should().BeNull();

            traktPlaybackProgressItem.Show.Should().BeNull();
            traktPlaybackProgressItem.Episode.Should().BeNull();
        }
        public async Task Test_SyncPlaybackProgressItemObjectJsonReader_Episode_ReadObject_From_Stream_Not_Valid_7()
        {
            var jsonReader = new SyncPlaybackProgressItemObjectJsonReader();

            using (var stream = TYPE_EPISODE_JSON_NOT_VALID_7.ToStream())
            {
                var traktPlaybackProgressItem = await jsonReader.ReadObjectAsync(stream);

                traktPlaybackProgressItem.Should().NotBeNull();
                traktPlaybackProgressItem.Id.Should().Be(0U);
                traktPlaybackProgressItem.Progress.Should().BeNull();
                traktPlaybackProgressItem.PausedAt.Should().BeNull();
                traktPlaybackProgressItem.Type.Should().BeNull();
                traktPlaybackProgressItem.Episode.Should().BeNull();
                traktPlaybackProgressItem.Show.Should().BeNull();
                traktPlaybackProgressItem.Movie.Should().BeNull();
            }
        }
        public async Task Test_SyncPlaybackProgressItemObjectJsonReader_Episode_ReadObject_From_Stream_Incomplete_10()
        {
            var jsonReader = new SyncPlaybackProgressItemObjectJsonReader();

            using (var stream = TYPE_EPISODE_JSON_INCOMPLETE_10.ToStream())
            {
                var traktPlaybackProgressItem = await jsonReader.ReadObjectAsync(stream);

                traktPlaybackProgressItem.Should().NotBeNull();
                traktPlaybackProgressItem.Id.Should().Be(0U);
                traktPlaybackProgressItem.Progress.Should().BeNull();
                traktPlaybackProgressItem.PausedAt.Should().BeNull();
                traktPlaybackProgressItem.Type.Should().Be(TraktSyncType.Episode);
                traktPlaybackProgressItem.Episode.Should().BeNull();
                traktPlaybackProgressItem.Show.Should().BeNull();

                traktPlaybackProgressItem.Movie.Should().BeNull();
            }
        }
        public async Task Test_SyncPlaybackProgressItemObjectJsonReader_Episode_ReadObject_From_Stream_Incomplete_9()
        {
            var jsonReader = new SyncPlaybackProgressItemObjectJsonReader();

            using (var stream = TYPE_EPISODE_JSON_INCOMPLETE_9.ToStream())
            {
                var traktPlaybackProgressItem = await jsonReader.ReadObjectAsync(stream);

                traktPlaybackProgressItem.Should().NotBeNull();
                traktPlaybackProgressItem.Id.Should().Be(0U);
                traktPlaybackProgressItem.Progress.Should().BeNull();
                traktPlaybackProgressItem.PausedAt.Should().Be(DateTime.Parse("2015-01-25T22:01:32.000Z").ToUniversalTime());
                traktPlaybackProgressItem.Type.Should().BeNull();
                traktPlaybackProgressItem.Episode.Should().BeNull();
                traktPlaybackProgressItem.Show.Should().BeNull();

                traktPlaybackProgressItem.Movie.Should().BeNull();
            }
        }
Beispiel #28
0
        public async Task Test_SyncPlaybackProgressItemObjectJsonReader_Episode_ReadObject_From_JsonReader_Not_Valid_7()
        {
            var traktJsonReader = new SyncPlaybackProgressItemObjectJsonReader();

            using (var reader = new StringReader(TYPE_EPISODE_JSON_NOT_VALID_7))
                using (var jsonReader = new JsonTextReader(reader))
                {
                    var traktPlaybackProgressItem = await traktJsonReader.ReadObjectAsync(jsonReader);

                    traktPlaybackProgressItem.Should().NotBeNull();
                    traktPlaybackProgressItem.Id.Should().Be(0U);
                    traktPlaybackProgressItem.Progress.Should().BeNull();
                    traktPlaybackProgressItem.PausedAt.Should().BeNull();
                    traktPlaybackProgressItem.Type.Should().BeNull();
                    traktPlaybackProgressItem.Episode.Should().BeNull();
                    traktPlaybackProgressItem.Show.Should().BeNull();
                    traktPlaybackProgressItem.Movie.Should().BeNull();
                }
        }
        public async Task Test_SyncPlaybackProgressItemObjectJsonReader_Movie_ReadObject_From_JsonReader_Incomplete_5()
        {
            var traktJsonReader = new SyncPlaybackProgressItemObjectJsonReader();

            using (var reader = new StringReader(TYPE_MOVIE_JSON_INCOMPLETE_5))
                using (var jsonReader = new JsonTextReader(reader))
                {
                    var traktPlaybackProgressItem = await traktJsonReader.ReadObjectAsync(jsonReader);

                    traktPlaybackProgressItem.Should().NotBeNull();
                    traktPlaybackProgressItem.Id.Should().Be(37U);
                    traktPlaybackProgressItem.Progress.Should().Be(65.5f);
                    traktPlaybackProgressItem.PausedAt.Should().Be(DateTime.Parse("2015-01-25T22:01:32.000Z").ToUniversalTime());
                    traktPlaybackProgressItem.Type.Should().Be(TraktSyncType.Movie);
                    traktPlaybackProgressItem.Movie.Should().BeNull();

                    traktPlaybackProgressItem.Show.Should().BeNull();
                    traktPlaybackProgressItem.Episode.Should().BeNull();
                }
        }
Beispiel #30
0
        public async Task Test_SyncPlaybackProgressItemObjectJsonReader_Episode_ReadObject_From_JsonReader_Incomplete_8()
        {
            var traktJsonReader = new SyncPlaybackProgressItemObjectJsonReader();

            using (var reader = new StringReader(TYPE_EPISODE_JSON_INCOMPLETE_8))
                using (var jsonReader = new JsonTextReader(reader))
                {
                    var traktPlaybackProgressItem = await traktJsonReader.ReadObjectAsync(jsonReader);

                    traktPlaybackProgressItem.Should().NotBeNull();
                    traktPlaybackProgressItem.Id.Should().Be(0U);
                    traktPlaybackProgressItem.Progress.Should().Be(65.5f);
                    traktPlaybackProgressItem.PausedAt.Should().BeNull();
                    traktPlaybackProgressItem.Type.Should().BeNull();
                    traktPlaybackProgressItem.Episode.Should().BeNull();
                    traktPlaybackProgressItem.Show.Should().BeNull();

                    traktPlaybackProgressItem.Movie.Should().BeNull();
                }
        }