public async Task Test_MostPWCMovieObjectJsonReader_ReadObject_From_Stream_Incomplete_2() { var traktJsonReader = new MostPWCMovieObjectJsonReader(); using (var stream = JSON_INCOMPLETE_2.ToStream()) { var traktMostPWCMovie = await traktJsonReader.ReadObjectAsync(stream); traktMostPWCMovie.Should().NotBeNull(); traktMostPWCMovie.WatcherCount.Should().Be(4992); traktMostPWCMovie.PlayCount.Should().BeNull(); traktMostPWCMovie.CollectedCount.Should().Be(1348); traktMostPWCMovie.Movie.Should().NotBeNull(); traktMostPWCMovie.Movie.Title.Should().Be("Star Wars: The Force Awakens"); traktMostPWCMovie.Movie.Year.Should().Be(2015); traktMostPWCMovie.Movie.Ids.Should().NotBeNull(); traktMostPWCMovie.Movie.Ids.Trakt.Should().Be(94024U); traktMostPWCMovie.Movie.Ids.Slug.Should().Be("star-wars-the-force-awakens-2015"); traktMostPWCMovie.Movie.Ids.Imdb.Should().Be("tt2488496"); traktMostPWCMovie.Movie.Ids.Tmdb.Should().Be(140607U); } }
public async Task Test_EpisodeCheckinPostResponseObjectJsonReader_ReadObject_From_Stream_Incomplete_2() { var jsonReader = new EpisodeCheckinPostResponseObjectJsonReader(); using (var stream = JSON_INCOMPLETE_2.ToStream()) { var checkinEpisodeResponse = await jsonReader.ReadObjectAsync(stream); checkinEpisodeResponse.Should().NotBeNull(); checkinEpisodeResponse.Id.Should().Be(3373536620UL); checkinEpisodeResponse.WatchedAt.Should().BeNull(); checkinEpisodeResponse.Sharing.Should().NotBeNull(); checkinEpisodeResponse.Sharing.Twitter.Should().BeTrue(); checkinEpisodeResponse.Sharing.Google.Should().BeTrue(); checkinEpisodeResponse.Sharing.Tumblr.Should().BeTrue(); checkinEpisodeResponse.Sharing.Medium.Should().BeTrue(); checkinEpisodeResponse.Sharing.Slack.Should().BeTrue(); checkinEpisodeResponse.Episode.Should().NotBeNull(); checkinEpisodeResponse.Episode.SeasonNumber.Should().Be(1); checkinEpisodeResponse.Episode.Number.Should().Be(1); checkinEpisodeResponse.Episode.Title.Should().Be("Winter Is Coming"); checkinEpisodeResponse.Episode.Ids.Should().NotBeNull(); checkinEpisodeResponse.Episode.Ids.Trakt.Should().Be(73640U); checkinEpisodeResponse.Episode.Ids.Tvdb.Should().Be(3254641U); checkinEpisodeResponse.Episode.Ids.Imdb.Should().Be("tt1480055"); checkinEpisodeResponse.Episode.Ids.Tmdb.Should().Be(63056U); checkinEpisodeResponse.Episode.Ids.TvRage.Should().Be(1065008299U); checkinEpisodeResponse.Show.Should().NotBeNull(); checkinEpisodeResponse.Show.Title.Should().Be("Game of Thrones"); checkinEpisodeResponse.Show.Year.Should().Be(2011); checkinEpisodeResponse.Show.Ids.Should().NotBeNull(); checkinEpisodeResponse.Show.Ids.Trakt.Should().Be(1390U); checkinEpisodeResponse.Show.Ids.Slug.Should().Be("game-of-thrones"); checkinEpisodeResponse.Show.Ids.Tvdb.Should().Be(121361U); checkinEpisodeResponse.Show.Ids.Imdb.Should().Be("tt0944947"); checkinEpisodeResponse.Show.Ids.Tmdb.Should().Be(1399U); checkinEpisodeResponse.Show.Ids.TvRage.Should().Be(24493U); } }
public async Task Test_GenreArrayJsonReader_ReadArray_From_Stream_Incomplete_2() { var jsonReader = new ArrayJsonReader <ITraktGenre>(); using (var stream = JSON_INCOMPLETE_2.ToStream()) { IEnumerable <ITraktGenre> traktGenres = await jsonReader.ReadArrayAsync(stream); traktGenres.Should().NotBeNull(); ITraktGenre[] genres = traktGenres.ToArray(); genres[0].Should().NotBeNull(); genres[0].Name.Should().Be("Action"); genres[0].Slug.Should().BeNull(); genres[0].Type.Should().BeNull(); genres[1].Should().NotBeNull(); genres[1].Name.Should().Be("Action"); genres[1].Slug.Should().Be("action"); genres[1].Type.Should().BeNull(); } }
public async Task Test_TrendingShowObjectJsonReader_ReadObject_From_Stream_Incomplete_2() { var traktJsonReader = new TrendingShowObjectJsonReader(); using (var stream = JSON_INCOMPLETE_2.ToStream()) { var traktTrendingShow = await traktJsonReader.ReadObjectAsync(stream); traktTrendingShow.Should().NotBeNull(); traktTrendingShow.Watchers.Should().BeNull(); traktTrendingShow.Show.Should().NotBeNull(); traktTrendingShow.Show.Title.Should().Be("Game of Thrones"); traktTrendingShow.Show.Year.Should().Be(2011); traktTrendingShow.Show.Ids.Should().NotBeNull(); traktTrendingShow.Show.Ids.Trakt.Should().Be(1390U); traktTrendingShow.Show.Ids.Slug.Should().Be("game-of-thrones"); traktTrendingShow.Show.Ids.Tvdb.Should().Be(121361U); traktTrendingShow.Show.Ids.Imdb.Should().Be("tt0944947"); traktTrendingShow.Show.Ids.Tmdb.Should().Be(1399U); traktTrendingShow.Show.Ids.TvRage.Should().Be(24493U); } }
public async Task Test_CertificationArrayJsonReader_ReadArray_From_Stream_Incomplete_2() { var traktJsonReader = new ArrayJsonReader <ITraktCertification>(); using (var stream = JSON_INCOMPLETE_2.ToStream()) { var traktCertifications = await traktJsonReader.ReadArrayAsync(stream); traktCertifications.Should().NotBeNull().And.NotBeEmpty().And.HaveCount(2); var items = traktCertifications.ToArray(); items[0].Should().NotBeNull(); items[0].Name.Should().Be("PG"); items[0].Slug.Should().BeNull(); items[0].Description.Should().Be("Parental Guidance Suggested"); items[1].Should().NotBeNull(); items[1].Name.Should().Be("PG-13"); items[1].Slug.Should().Be("pg-13"); items[1].Description.Should().Be("Parents Strongly Cautioned - Ages 13+ Recommended"); } }
public async Task Test_WatchedMovieObjectJsonReader_ReadObject_From_Stream_Incomplete_2() { var jsonReader = new WatchedMovieObjectJsonReader(); using (var stream = JSON_INCOMPLETE_2.ToStream()) { var traktWatchedMovie = await jsonReader.ReadObjectAsync(stream); traktWatchedMovie.Should().NotBeNull(); traktWatchedMovie.Plays.Should().Be(1); traktWatchedMovie.LastWatchedAt.Should().BeNull(); traktWatchedMovie.LastUpdatedAt.Should().Be(DateTime.Parse("2014-09-01T09:10:11.000Z").ToUniversalTime()); traktWatchedMovie.Movie.Should().NotBeNull(); traktWatchedMovie.Movie.Title.Should().Be("Star Wars: The Force Awakens"); traktWatchedMovie.Movie.Year.Should().Be(2015); traktWatchedMovie.Movie.Ids.Should().NotBeNull(); traktWatchedMovie.Movie.Ids.Trakt.Should().Be(94024U); traktWatchedMovie.Movie.Ids.Slug.Should().Be("star-wars-the-force-awakens-2015"); traktWatchedMovie.Movie.Ids.Imdb.Should().Be("tt2488496"); traktWatchedMovie.Movie.Ids.Tmdb.Should().Be(140607U); } }
public async Task Test_CommentItemArrayJsonReader_ReadArray_From_Stream_Incomplete_2() { var jsonReader = new ArrayJsonReader <ITraktCommentItem>(); using (var stream = JSON_INCOMPLETE_2.ToStream()) { IEnumerable <ITraktCommentItem> traktCommentItems = await jsonReader.ReadArrayAsync(stream); traktCommentItems.Should().NotBeNull(); ITraktCommentItem[] commentItems = traktCommentItems.ToArray(); commentItems[0].Should().NotBeNull(); commentItems[0].Type.Should().Be(TraktObjectType.Movie); commentItems[0].Movie.Should().NotBeNull(); commentItems[0].Movie.Title.Should().Be("Star Wars: The Force Awakens"); commentItems[0].Movie.Year.Should().Be(2015); commentItems[0].Movie.Ids.Should().NotBeNull(); commentItems[0].Movie.Ids.Trakt.Should().Be(94024U); commentItems[0].Movie.Ids.Slug.Should().Be("star-wars-the-force-awakens-2015"); commentItems[0].Movie.Ids.Imdb.Should().Be("tt2488496"); commentItems[0].Movie.Ids.Tmdb.Should().Be(140607U); commentItems[0].Show.Should().BeNull(); commentItems[0].Season.Should().BeNull(); commentItems[0].Episode.Should().BeNull(); commentItems[0].List.Should().BeNull(); commentItems[1].Should().NotBeNull(); commentItems[1].Type.Should().Be(TraktObjectType.Movie); commentItems[1].Movie.Should().NotBeNull(); commentItems[1].Movie.Title.Should().Be("Star Wars: The Force Awakens"); commentItems[1].Movie.Year.Should().Be(2015); commentItems[1].Movie.Ids.Should().NotBeNull(); commentItems[1].Movie.Ids.Trakt.Should().Be(94024U); commentItems[1].Movie.Ids.Slug.Should().Be("star-wars-the-force-awakens-2015"); commentItems[1].Movie.Ids.Imdb.Should().Be("tt2488496"); commentItems[1].Movie.Ids.Tmdb.Should().Be(140607U); commentItems[1].Show.Should().NotBeNull(); commentItems[1].Show.Title.Should().Be("Game of Thrones"); commentItems[1].Show.Year.Should().Be(2011); commentItems[1].Show.Ids.Should().NotBeNull(); commentItems[1].Show.Ids.Trakt.Should().Be(1390U); commentItems[1].Show.Ids.Slug.Should().Be("game-of-thrones"); commentItems[1].Show.Ids.Tvdb.Should().Be(121361U); commentItems[1].Show.Ids.Imdb.Should().Be("tt0944947"); commentItems[1].Show.Ids.Tmdb.Should().Be(1399U); commentItems[1].Show.Ids.TvRage.Should().Be(24493U); commentItems[1].Season.Should().NotBeNull(); commentItems[1].Season.Number.Should().Be(1); commentItems[1].Season.Ids.Should().NotBeNull(); commentItems[1].Season.Ids.Trakt.Should().Be(61430U); commentItems[1].Season.Ids.Tvdb.Should().Be(279121U); commentItems[1].Season.Ids.Tmdb.Should().Be(60523U); commentItems[1].Season.Ids.TvRage.Should().Be(36939U); commentItems[1].Episode.Should().NotBeNull(); commentItems[1].Episode.SeasonNumber.Should().Be(1); commentItems[1].Episode.Number.Should().Be(1); commentItems[1].Episode.Title.Should().Be("Winter Is Coming"); commentItems[1].Episode.Ids.Should().NotBeNull(); commentItems[1].Episode.Ids.Trakt.Should().Be(73640U); commentItems[1].Episode.Ids.Tvdb.Should().Be(3254641U); commentItems[1].Episode.Ids.Imdb.Should().Be("tt1480055"); commentItems[1].Episode.Ids.Tmdb.Should().Be(63056U); commentItems[1].Episode.Ids.TvRage.Should().Be(1065008299U); commentItems[1].List.Should().NotBeNull(); commentItems[1].List.Name.Should().Be("Star Wars in machete order"); commentItems[1].List.Description.Should().Be("Next time you want to introduce someone to Star Wars for the first time, watch the films with them in this order: IV, V, II, III, VI."); commentItems[1].List.Privacy.Should().Be(TraktAccessScope.Public); commentItems[1].List.DisplayNumbers.Should().BeTrue(); commentItems[1].List.AllowComments.Should().BeFalse(); commentItems[1].List.SortBy.Should().Be("rank"); commentItems[1].List.SortHow.Should().Be("asc"); commentItems[1].List.CreatedAt.Should().Be(DateTime.Parse("2014-10-11T17:00:54.000Z").ToUniversalTime()); commentItems[1].List.UpdatedAt.Should().Be(DateTime.Parse("2014-11-09T17:00:54.000Z").ToUniversalTime()); commentItems[1].List.ItemCount.Should().Be(5); commentItems[1].List.CommentCount.Should().Be(1); commentItems[1].List.Likes.Should().Be(2); commentItems[1].List.Ids.Should().NotBeNull(); commentItems[1].List.Ids.Trakt.Should().Be(55U); commentItems[1].List.Ids.Slug.Should().Be("star-wars-in-machete-order"); commentItems[1].List.User.Should().NotBeNull(); commentItems[1].List.User.Username.Should().Be("sean"); commentItems[1].List.User.IsPrivate.Should().BeFalse(); commentItems[1].List.User.Name.Should().Be("Sean Rudford"); commentItems[1].List.User.IsVIP.Should().BeTrue(); commentItems[1].List.User.IsVIP_EP.Should().BeFalse(); commentItems[1].List.User.Ids.Should().NotBeNull(); commentItems[1].List.User.Ids.Slug.Should().Be("sean"); } }
public async Task Test_CollectionShowObjectJsonReader_ReadObject_From_Stream_Incomplete_2() { var jsonReader = new CollectionShowObjectJsonReader(); using (var stream = JSON_INCOMPLETE_2.ToStream()) { var traktCollectionShow = await jsonReader.ReadObjectAsync(stream); traktCollectionShow.Should().NotBeNull(); traktCollectionShow.LastCollectedAt.Should().Be(DateTime.Parse("2014-07-14T01:00:00.000Z").ToUniversalTime()); traktCollectionShow.Show.Should().BeNull(); traktCollectionShow.CollectionSeasons.Should().NotBeNull().And.HaveCount(2); var seasons = traktCollectionShow.CollectionSeasons.ToArray(); // Season 1 seasons[0].Should().NotBeNull(); seasons[0].Number.Should().Be(1); seasons[0].Episodes.Should().NotBeNull(); seasons[0].Episodes.Should().HaveCount(2); // Episodes of Season 1 var episodesSeason1 = seasons[0].Episodes.ToArray(); episodesSeason1[0].Should().NotBeNull(); episodesSeason1[0].Number.Should().Be(1); episodesSeason1[0].CollectedAt.Should().Be(DateTime.Parse("2014-09-01T09:10:11.000Z").ToUniversalTime()); episodesSeason1[0].Metadata.Should().NotBeNull(); episodesSeason1[0].Metadata.MediaType.Should().Be(TraktMediaType.Digital); episodesSeason1[0].Metadata.MediaResolution.Should().Be(TraktMediaResolution.HD_720p); episodesSeason1[0].Metadata.Audio.Should().Be(TraktMediaAudio.AAC); episodesSeason1[0].Metadata.AudioChannels.Should().Be(TraktMediaAudioChannel.Channels_5_1); episodesSeason1[0].Metadata.ThreeDimensional.Should().BeFalse(); episodesSeason1[1].Should().NotBeNull(); episodesSeason1[1].Number.Should().Be(2); episodesSeason1[1].CollectedAt.Should().Be(DateTime.Parse("2014-09-01T09:10:11.000Z").ToUniversalTime()); episodesSeason1[1].Metadata.Should().NotBeNull(); episodesSeason1[1].Metadata.MediaType.Should().Be(TraktMediaType.Digital); episodesSeason1[1].Metadata.MediaResolution.Should().Be(TraktMediaResolution.HD_720p); episodesSeason1[1].Metadata.Audio.Should().Be(TraktMediaAudio.AAC); episodesSeason1[1].Metadata.AudioChannels.Should().Be(TraktMediaAudioChannel.Channels_5_1); episodesSeason1[1].Metadata.ThreeDimensional.Should().BeFalse(); // Season 2 seasons[1].Should().NotBeNull(); seasons[1].Number.Should().Be(2); seasons[1].Episodes.Should().NotBeNull(); seasons[1].Episodes.Should().HaveCount(2); // Episodes of Season 2 var episodesSeason2 = seasons[1].Episodes.ToArray(); episodesSeason2[0].Should().NotBeNull(); episodesSeason2[0].Number.Should().Be(1); episodesSeason2[0].CollectedAt.Should().Be(DateTime.Parse("2014-09-01T09:10:11.000Z").ToUniversalTime()); episodesSeason1[0].Metadata.Should().NotBeNull(); episodesSeason1[0].Metadata.MediaType.Should().Be(TraktMediaType.Digital); episodesSeason1[0].Metadata.MediaResolution.Should().Be(TraktMediaResolution.HD_720p); episodesSeason1[0].Metadata.Audio.Should().Be(TraktMediaAudio.AAC); episodesSeason1[0].Metadata.AudioChannels.Should().Be(TraktMediaAudioChannel.Channels_5_1); episodesSeason1[0].Metadata.ThreeDimensional.Should().BeFalse(); episodesSeason2[1].Should().NotBeNull(); episodesSeason2[1].Number.Should().Be(2); episodesSeason2[1].CollectedAt.Should().Be(DateTime.Parse("2014-09-01T09:10:11.000Z").ToUniversalTime()); episodesSeason1[1].Metadata.Should().NotBeNull(); episodesSeason1[1].Metadata.MediaType.Should().Be(TraktMediaType.Digital); episodesSeason1[1].Metadata.MediaResolution.Should().Be(TraktMediaResolution.HD_720p); episodesSeason1[1].Metadata.Audio.Should().Be(TraktMediaAudio.AAC); episodesSeason1[1].Metadata.AudioChannels.Should().Be(TraktMediaAudioChannel.Channels_5_1); episodesSeason1[1].Metadata.ThreeDimensional.Should().BeFalse(); } }
public async Task Test_UserCustomListItemsPostResponseObjectJsonReader_ReadObject_From_Stream_Incomplete_2() { var jsonReader = new UserCustomListItemsPostResponseObjectJsonReader(); using (var stream = JSON_INCOMPLETE_2.ToStream()) { var customListItemsPostResponse = await jsonReader.ReadObjectAsync(stream); customListItemsPostResponse.Should().NotBeNull(); customListItemsPostResponse.Added.Should().NotBeNull(); customListItemsPostResponse.Added.Movies.Should().Be(1); customListItemsPostResponse.Added.Shows.Should().Be(2); customListItemsPostResponse.Added.Seasons.Should().Be(3); customListItemsPostResponse.Added.Episodes.Should().Be(4); customListItemsPostResponse.Added.People.Should().Be(5); customListItemsPostResponse.Existing.Should().BeNull(); customListItemsPostResponse.NotFound.Should().NotBeNull(); var notFound = customListItemsPostResponse.NotFound; notFound.Movies.Should().NotBeNull().And.NotBeEmpty().And.HaveCount(2); var movies = notFound.Movies.ToArray(); movies[0].Should().NotBeNull(); movies[0].Ids.Should().NotBeNull(); movies[0].Ids.Trakt.Should().Be(94024U); movies[0].Ids.Slug.Should().Be("star-wars-the-force-awakens-2015"); movies[0].Ids.Imdb.Should().Be("tt2488496"); movies[0].Ids.Tmdb.Should().Be(140607U); movies[1].Should().NotBeNull(); movies[1].Ids.Should().NotBeNull(); movies[1].Ids.Trakt.Should().Be(172687U); movies[1].Ids.Slug.Should().Be("king-arthur-legend-of-the-sword-2017"); movies[1].Ids.Imdb.Should().Be("tt1972591"); movies[1].Ids.Tmdb.Should().Be(274857U); // -------------------------------------------------- notFound.Shows.Should().NotBeNull().And.NotBeEmpty().And.HaveCount(2); var shows = notFound.Shows.ToArray(); shows[0].Should().NotBeNull(); shows[0].Ids.Should().NotBeNull(); shows[0].Ids.Trakt.Should().Be(1390U); shows[0].Ids.Slug.Should().Be("game-of-thrones"); shows[0].Ids.Tvdb.Should().Be(121361U); shows[0].Ids.Imdb.Should().Be("tt0944947"); shows[0].Ids.Tmdb.Should().Be(1399U); shows[0].Ids.TvRage.Should().Be(24493U); shows[1].Should().NotBeNull(); shows[1].Ids.Should().NotBeNull(); shows[1].Ids.Trakt.Should().Be(60300U); shows[1].Ids.Slug.Should().Be("the-flash-2014"); shows[1].Ids.Tvdb.Should().Be(279121U); shows[1].Ids.Imdb.Should().Be("tt3107288"); shows[1].Ids.Tmdb.Should().Be(60735U); shows[1].Ids.TvRage.Should().Be(36939U); // -------------------------------------------------- notFound.Seasons.Should().NotBeNull().And.NotBeEmpty().And.HaveCount(2); var seasons = notFound.Seasons.ToArray(); seasons[0].Should().NotBeNull(); seasons[0].Ids.Should().NotBeNull(); seasons[0].Ids.Trakt.Should().Be(61430U); seasons[0].Ids.Tvdb.Should().Be(279121U); seasons[0].Ids.Tmdb.Should().Be(60523U); seasons[0].Ids.TvRage.Should().Be(36939U); seasons[1].Should().NotBeNull(); seasons[1].Ids.Should().NotBeNull(); seasons[1].Ids.Trakt.Should().Be(61431U); seasons[1].Ids.Tvdb.Should().Be(578373U); seasons[1].Ids.Tmdb.Should().Be(60524U); seasons[1].Ids.TvRage.Should().Be(36940U); // -------------------------------------------------- notFound.Episodes.Should().NotBeNull().And.NotBeEmpty().And.HaveCount(2); var episodes = notFound.Episodes.ToArray(); episodes[0].Should().NotBeNull(); episodes[0].Ids.Should().NotBeNull(); episodes[0].Ids.Trakt.Should().Be(73640U); episodes[0].Ids.Tvdb.Should().Be(3254641U); episodes[0].Ids.Imdb.Should().Be("tt1480055"); episodes[0].Ids.Tmdb.Should().Be(63056U); episodes[0].Ids.TvRage.Should().Be(1065008299U); episodes[1].Should().NotBeNull(); episodes[1].Ids.Should().NotBeNull(); episodes[1].Ids.Trakt.Should().Be(73641U); episodes[1].Ids.Tvdb.Should().Be(3436411U); episodes[1].Ids.Imdb.Should().Be("tt1668746"); episodes[1].Ids.Tmdb.Should().Be(63057U); episodes[1].Ids.TvRage.Should().Be(1065023912U); // -------------------------------------------------- notFound.People.Should().NotBeNull().And.NotBeEmpty().And.HaveCount(2); var people = notFound.People.ToArray(); people[0].Should().NotBeNull(); people[0].Ids.Should().NotBeNull(); people[0].Ids.Trakt.Should().Be(297737U); people[0].Ids.Slug.Should().Be("bryan-cranston"); people[0].Ids.Imdb.Should().Be("nm0186505"); people[0].Ids.Tmdb.Should().Be(17419U); people[0].Ids.TvRage.Should().Be(1797U); people[1].Should().NotBeNull(); people[1].Ids.Should().NotBeNull(); people[1].Ids.Trakt.Should().Be(9486U); people[1].Ids.Slug.Should().Be("samuel-l-jackson"); people[1].Ids.Imdb.Should().Be("nm0000168"); people[1].Ids.Tmdb.Should().Be(2231U); people[1].Ids.TvRage.Should().Be(55720U); } }
public async Task Test_SeasonWatchedProgressArrayJsonReader_ReadArray_From_Stream_Incomplete_2() { var traktJsonReader = new ArrayJsonReader <ITraktSeasonWatchedProgress>(); using (var stream = JSON_INCOMPLETE_2.ToStream()) { var traktSeasonWatchedProgresses = await traktJsonReader.ReadArrayAsync(stream); traktSeasonWatchedProgresses.Should().NotBeNull().And.NotBeEmpty().And.HaveCount(3); var watchedProgresses = traktSeasonWatchedProgresses.ToArray(); watchedProgresses[0].Number.Should().Be(1); watchedProgresses[0].Aired.Should().Be(3); watchedProgresses[0].Completed.Should().Be(2); watchedProgresses[0].Episodes.Should().NotBeNull().And.HaveCount(2); var episodesWatchedProgress = watchedProgresses[0].Episodes.ToArray(); episodesWatchedProgress[0].Should().NotBeNull(); episodesWatchedProgress[0].Number.Should().Be(1); episodesWatchedProgress[0].Completed.Should().BeTrue(); episodesWatchedProgress[0].LastWatchedAt.Should().Be(DateTime.Parse("2011-04-18T01:00:00.000Z").ToUniversalTime()); episodesWatchedProgress[1].Should().NotBeNull(); episodesWatchedProgress[1].Number.Should().Be(2); episodesWatchedProgress[1].Completed.Should().BeTrue(); episodesWatchedProgress[1].LastWatchedAt.Should().Be(DateTime.Parse("2011-04-19T02:00:00.000Z").ToUniversalTime()); // ----------------------------------------------- watchedProgresses[1].Number.Should().Be(2); watchedProgresses[1].Aired.Should().BeNull(); watchedProgresses[1].Completed.Should().Be(2); watchedProgresses[1].Episodes.Should().NotBeNull().And.HaveCount(2); episodesWatchedProgress = watchedProgresses[1].Episodes.ToArray(); episodesWatchedProgress[0].Should().NotBeNull(); episodesWatchedProgress[0].Number.Should().Be(1); episodesWatchedProgress[0].Completed.Should().BeTrue(); episodesWatchedProgress[0].LastWatchedAt.Should().Be(DateTime.Parse("2011-04-18T01:00:00.000Z").ToUniversalTime()); episodesWatchedProgress[1].Should().NotBeNull(); episodesWatchedProgress[1].Number.Should().Be(2); episodesWatchedProgress[1].Completed.Should().BeTrue(); episodesWatchedProgress[1].LastWatchedAt.Should().Be(DateTime.Parse("2011-04-19T02:00:00.000Z").ToUniversalTime()); // ----------------------------------------------- watchedProgresses[2].Number.Should().Be(3); watchedProgresses[2].Aired.Should().Be(3); watchedProgresses[2].Completed.Should().Be(2); watchedProgresses[2].Episodes.Should().NotBeNull().And.HaveCount(2); episodesWatchedProgress = watchedProgresses[2].Episodes.ToArray(); episodesWatchedProgress[0].Should().NotBeNull(); episodesWatchedProgress[0].Number.Should().Be(1); episodesWatchedProgress[0].Completed.Should().BeTrue(); episodesWatchedProgress[0].LastWatchedAt.Should().Be(DateTime.Parse("2011-04-18T01:00:00.000Z").ToUniversalTime()); episodesWatchedProgress[1].Should().NotBeNull(); episodesWatchedProgress[1].Number.Should().Be(2); episodesWatchedProgress[1].Completed.Should().BeTrue(); episodesWatchedProgress[1].LastWatchedAt.Should().Be(DateTime.Parse("2011-04-19T02:00:00.000Z").ToUniversalTime()); } }
public async Task Test_WatchedShowObjectJsonReader_ReadObject_From_Stream_Incomplete_2() { var jsonReader = new WatchedShowObjectJsonReader(); using (var stream = JSON_INCOMPLETE_2.ToStream()) { var traktWatchedShow = await jsonReader.ReadObjectAsync(stream); traktWatchedShow.Should().NotBeNull(); traktWatchedShow.Plays.Should().Be(1); traktWatchedShow.LastWatchedAt.Should().BeNull(); traktWatchedShow.LastUpdatedAt.Should().Be(DateTime.Parse("2014-09-01T09:10:11.000Z").ToUniversalTime()); traktWatchedShow.ResetAt.Should().Be(DateTime.Parse("2014-09-01T09:10:11.000Z").ToUniversalTime()); traktWatchedShow.Show.Should().NotBeNull(); traktWatchedShow.Show.Title.Should().Be("Game of Thrones"); traktWatchedShow.Show.Year.Should().Be(2011); traktWatchedShow.Show.Ids.Should().NotBeNull(); traktWatchedShow.Show.Ids.Trakt.Should().Be(1390U); traktWatchedShow.Show.Ids.Slug.Should().Be("game-of-thrones"); traktWatchedShow.Show.Ids.Tvdb.Should().Be(121361U); traktWatchedShow.Show.Ids.Imdb.Should().Be("tt0944947"); traktWatchedShow.Show.Ids.Tmdb.Should().Be(1399U); traktWatchedShow.Show.Ids.TvRage.Should().Be(24493U); traktWatchedShow.WatchedSeasons.Should().NotBeNull().And.HaveCount(2); var seasons = traktWatchedShow.WatchedSeasons.ToArray(); seasons[0].Should().NotBeNull(); seasons[0].Number.Should().Be(1); seasons[0].Episodes.Should().NotBeNull().And.HaveCount(2); var episodes = seasons[0].Episodes.ToArray(); episodes[0].Should().NotBeNull(); episodes[0].Number.Should().Be(1); episodes[0].Plays.Should().Be(1); episodes[0].LastWatchedAt.Should().Be(DateTime.Parse("2014-09-01T09:10:11.000Z").ToUniversalTime()); episodes[1].Should().NotBeNull(); episodes[1].Number.Should().Be(2); episodes[1].Plays.Should().Be(1); episodes[1].LastWatchedAt.Should().Be(DateTime.Parse("2014-09-01T09:10:11.000Z").ToUniversalTime()); seasons[1].Should().NotBeNull(); seasons[1].Number.Should().Be(2); seasons[1].Episodes.Should().NotBeNull().And.HaveCount(2); episodes = seasons[1].Episodes.ToArray(); episodes[0].Should().NotBeNull(); episodes[0].Number.Should().Be(1); episodes[0].Plays.Should().Be(1); episodes[0].LastWatchedAt.Should().Be(DateTime.Parse("2014-09-01T09:10:11.000Z").ToUniversalTime()); episodes[1].Should().NotBeNull(); episodes[1].Number.Should().Be(2); episodes[1].Plays.Should().Be(1); episodes[1].LastWatchedAt.Should().Be(DateTime.Parse("2014-09-01T09:10:11.000Z").ToUniversalTime()); } }