public async Task Test_EpisodeIdsObjectJsonReader_ReadObject_From_Stream_Complete() { var traktJsonReader = new EpisodeIdsObjectJsonReader(); using (var stream = JSON_COMPLETE.ToStream()) { var traktEpisodeIds = await traktJsonReader.ReadObjectAsync(stream); traktEpisodeIds.Should().NotBeNull(); traktEpisodeIds.Trakt.Should().Be(73640); traktEpisodeIds.Tvdb.Should().Be(3254641U); traktEpisodeIds.Imdb.Should().Be("tt1480055"); traktEpisodeIds.Tmdb.Should().Be(63056U); traktEpisodeIds.TvRage.Should().Be(1065008299U); } }
public async Task Test_EpisodeIdsObjectJsonReader_ReadObject_From_Stream_Incomplete_7() { var traktJsonReader = new EpisodeIdsObjectJsonReader(); using (var stream = JSON_INCOMPLETE_7.ToStream()) { var traktEpisodeIds = await traktJsonReader.ReadObjectAsync(stream); traktEpisodeIds.Should().NotBeNull(); traktEpisodeIds.Trakt.Should().Be(0); traktEpisodeIds.Tvdb.Should().Be(3254641U); traktEpisodeIds.Imdb.Should().BeNull(); traktEpisodeIds.Tmdb.Should().BeNull(); traktEpisodeIds.TvRage.Should().BeNull(); } }
public override async Task <ITraktSyncHistoryPostEpisode> ReadObjectAsync(JsonTextReader jsonReader, CancellationToken cancellationToken = default) { if (jsonReader == null) { return(await Task.FromResult(default(ITraktSyncHistoryPostEpisode))); } if (await jsonReader.ReadAsync(cancellationToken) && jsonReader.TokenType == JsonToken.StartObject) { var episodeIdsReader = new EpisodeIdsObjectJsonReader(); ITraktSyncHistoryPostEpisode syncHistoryPostEpisode = new TraktSyncHistoryPostEpisode(); while (await jsonReader.ReadAsync(cancellationToken) && jsonReader.TokenType == JsonToken.PropertyName) { var propertyName = jsonReader.Value.ToString(); switch (propertyName) { case JsonProperties.SYNC_HISTORY_POST_EPISODE_PROPERTY_NAME_WATCHED_AT: { Pair <bool, DateTime> value = await JsonReaderHelper.ReadDateTimeValueAsync(jsonReader, cancellationToken); if (value.First) { syncHistoryPostEpisode.WatchedAt = value.Second; } break; } case JsonProperties.SYNC_HISTORY_POST_EPISODE_PROPERTY_NAME_IDS: syncHistoryPostEpisode.Ids = await episodeIdsReader.ReadObjectAsync(jsonReader, cancellationToken); break; default: await JsonReaderHelper.ReadAndIgnoreInvalidContentAsync(jsonReader, cancellationToken); break; } } return(syncHistoryPostEpisode); } return(await Task.FromResult(default(ITraktSyncHistoryPostEpisode))); }
public async Task Test_EpisodeIdsObjectJsonReader_ReadObject_From_JsonReader_Incomplete_4() { var traktJsonReader = new EpisodeIdsObjectJsonReader(); using (var reader = new StringReader(JSON_INCOMPLETE_4)) using (var jsonReader = new JsonTextReader(reader)) { var traktEpisodeIds = await traktJsonReader.ReadObjectAsync(jsonReader); traktEpisodeIds.Should().NotBeNull(); traktEpisodeIds.Trakt.Should().Be(73640); traktEpisodeIds.Tvdb.Should().Be(3254641U); traktEpisodeIds.Imdb.Should().Be("tt1480055"); traktEpisodeIds.Tmdb.Should().BeNull(); traktEpisodeIds.TvRage.Should().Be(1065008299U); } }
public async Task Test_EpisodeIdsObjectJsonReader_ReadObject_From_JsonReader_Not_Valid_6() { var traktJsonReader = new EpisodeIdsObjectJsonReader(); using (var reader = new StringReader(JSON_NOT_VALID_6)) using (var jsonReader = new JsonTextReader(reader)) { var traktEpisodeIds = await traktJsonReader.ReadObjectAsync(jsonReader); traktEpisodeIds.Should().NotBeNull(); traktEpisodeIds.Trakt.Should().Be(0); traktEpisodeIds.Tvdb.Should().BeNull(); traktEpisodeIds.Imdb.Should().BeNull(); traktEpisodeIds.Tmdb.Should().BeNull(); traktEpisodeIds.TvRage.Should().BeNull(); } }
public async Task Test_EpisodeIdsObjectJsonReader_ReadObject_From_JsonReader_Not_Valid_2() { var traktJsonReader = new EpisodeIdsObjectJsonReader(); using (var reader = new StringReader(JSON_NOT_VALID_2)) using (var jsonReader = new JsonTextReader(reader)) { var traktEpisodeIds = await traktJsonReader.ReadObjectAsync(jsonReader); traktEpisodeIds.Should().NotBeNull(); traktEpisodeIds.Trakt.Should().Be(73640); traktEpisodeIds.Tvdb.Should().BeNull(); traktEpisodeIds.Imdb.Should().Be("tt1480055"); traktEpisodeIds.Tmdb.Should().Be(63056U); traktEpisodeIds.TvRage.Should().Be(1065008299U); } }
public async Task Test_EpisodeIdsObjectJsonReader_ReadObject_From_JsonReader_Incomplete_9() { var traktJsonReader = new EpisodeIdsObjectJsonReader(); using (var reader = new StringReader(JSON_INCOMPLETE_9)) using (var jsonReader = new JsonTextReader(reader)) { var traktEpisodeIds = await traktJsonReader.ReadObjectAsync(jsonReader); traktEpisodeIds.Should().NotBeNull(); traktEpisodeIds.Trakt.Should().Be(0); traktEpisodeIds.Tvdb.Should().BeNull(); traktEpisodeIds.Imdb.Should().BeNull(); traktEpisodeIds.Tmdb.Should().Be(63056U); traktEpisodeIds.TvRage.Should().BeNull(); } }
public override async Task <ITraktSyncRatingsPostResponseNotFoundEpisode> ReadObjectAsync(JsonTextReader jsonReader, CancellationToken cancellationToken = default) { if (jsonReader == null) { return(await Task.FromResult(default(ITraktSyncRatingsPostResponseNotFoundEpisode))); } if (await jsonReader.ReadAsync(cancellationToken) && jsonReader.TokenType == JsonToken.StartObject) { var episodeIdsReader = new EpisodeIdsObjectJsonReader(); ITraktSyncRatingsPostResponseNotFoundEpisode syncRatingsPostResponseNotFoundEpisode = new TraktSyncRatingsPostResponseNotFoundEpisode(); while (await jsonReader.ReadAsync(cancellationToken) && jsonReader.TokenType == JsonToken.PropertyName) { var propertyName = jsonReader.Value.ToString(); switch (propertyName) { case JsonProperties.SYNC_RATINGS_POST_RESPONSE_NOT_FOUND_EPISODE_PROPERTY_NAME_RATING: syncRatingsPostResponseNotFoundEpisode.Rating = await jsonReader.ReadAsInt32Async(cancellationToken); break; case JsonProperties.SYNC_RATINGS_POST_RESPONSE_NOT_FOUND_EPISODE_PROPERTY_NAME_IDS: syncRatingsPostResponseNotFoundEpisode.Ids = await episodeIdsReader.ReadObjectAsync(jsonReader, cancellationToken); break; default: await JsonReaderHelper.ReadAndIgnoreInvalidContentAsync(jsonReader, cancellationToken); break; } } return(syncRatingsPostResponseNotFoundEpisode); } return(await Task.FromResult(default(ITraktSyncRatingsPostResponseNotFoundEpisode))); }
public async Task Test_EpisodeIdsObjectJsonReader_ReadObject_From_Json_String_Null() { var jsonReader = new EpisodeIdsObjectJsonReader(); Func <Task <ITraktEpisodeIds> > traktEpisodeIds = () => jsonReader.ReadObjectAsync(default(string)); await traktEpisodeIds.Should().ThrowAsync <ArgumentNullException>(); }
public override async Task <ITraktSyncCollectionPostEpisode> ReadObjectAsync(JsonTextReader jsonReader, CancellationToken cancellationToken = default) { CheckJsonTextReader(jsonReader); if (await jsonReader.ReadAsync(cancellationToken) && jsonReader.TokenType == JsonToken.StartObject) { ITraktSyncCollectionPostEpisode traktSyncCollectionPostEpisode = new TraktSyncCollectionPostEpisode(); var episodeIdsObjectJsonReader = new EpisodeIdsObjectJsonReader(); while (await jsonReader.ReadAsync(cancellationToken) && jsonReader.TokenType == JsonToken.PropertyName) { var propertyName = jsonReader.Value.ToString(); switch (propertyName) { case JsonProperties.PROPERTY_NAME_COLLECTED_AT: { Pair <bool, DateTime> value = await JsonReaderHelper.ReadDateTimeValueAsync(jsonReader, cancellationToken); if (value.First) { traktSyncCollectionPostEpisode.CollectedAt = value.Second; } break; } case JsonProperties.PROPERTY_NAME_IDS: traktSyncCollectionPostEpisode.Ids = await episodeIdsObjectJsonReader.ReadObjectAsync(jsonReader, cancellationToken); break; case JsonProperties.PROPERTY_NAME_MEDIA_TYPE: traktSyncCollectionPostEpisode.MediaType = await JsonReaderHelper.ReadEnumerationValueAsync <TraktMediaType>(jsonReader, cancellationToken); break; case JsonProperties.PROPERTY_NAME_RESOLUTION: traktSyncCollectionPostEpisode.MediaResolution = await JsonReaderHelper.ReadEnumerationValueAsync <TraktMediaResolution>(jsonReader, cancellationToken); break; case JsonProperties.PROPERTY_NAME_AUDIO: traktSyncCollectionPostEpisode.Audio = await JsonReaderHelper.ReadEnumerationValueAsync <TraktMediaAudio>(jsonReader, cancellationToken); break; case JsonProperties.PROPERTY_NAME_AUDIO_CHANNELS: traktSyncCollectionPostEpisode.AudioChannels = await JsonReaderHelper.ReadEnumerationValueAsync <TraktMediaAudioChannel>(jsonReader, cancellationToken); break; case JsonProperties.PROPERTY_NAME_3D: traktSyncCollectionPostEpisode.ThreeDimensional = await jsonReader.ReadAsBooleanAsync(cancellationToken); break; default: await JsonReaderHelper.ReadAndIgnoreInvalidContentAsync(jsonReader, cancellationToken); break; } } return(traktSyncCollectionPostEpisode); } return(await Task.FromResult(default(ITraktSyncCollectionPostEpisode))); }