public override async Task WriteObjectAsync(JsonTextWriter jsonWriter, ITraktSyncRatingsPostEpisode obj, CancellationToken cancellationToken = default) { if (jsonWriter == null) { throw new ArgumentNullException(nameof(jsonWriter)); } await jsonWriter.WriteStartObjectAsync(cancellationToken).ConfigureAwait(false); if (obj.RatedAt.HasValue) { await jsonWriter.WritePropertyNameAsync(JsonProperties.SYNC_RATINGS_POST_EPISODE_PROPERTY_NAME_RATED_AT, cancellationToken).ConfigureAwait(false); await jsonWriter.WriteValueAsync(obj.RatedAt.Value.ToTraktLongDateTimeString(), cancellationToken).ConfigureAwait(false); } if (obj.Rating.HasValue) { await jsonWriter.WritePropertyNameAsync(JsonProperties.SYNC_RATINGS_POST_EPISODE_PROPERTY_NAME_RATING, cancellationToken).ConfigureAwait(false); await jsonWriter.WriteValueAsync(obj.Rating, cancellationToken).ConfigureAwait(false); } if (obj.Ids != null) { var episodeIdsObjectJsonWriter = new EpisodeIdsObjectJsonWriter(); await jsonWriter.WritePropertyNameAsync(JsonProperties.SYNC_RATINGS_POST_EPISODE_PROPERTY_NAME_IDS, cancellationToken).ConfigureAwait(false); await episodeIdsObjectJsonWriter.WriteObjectAsync(jsonWriter, obj.Ids, cancellationToken).ConfigureAwait(false); } await jsonWriter.WriteEndObjectAsync(cancellationToken).ConfigureAwait(false); }
public async Task Test_EpisodeIdsObjectJsonWriter_WriteObject_JsonWriter_Exceptions() { var traktJsonWriter = new EpisodeIdsObjectJsonWriter(); ITraktEpisodeIds traktEpisodeIds = new TraktEpisodeIds(); Func <Task> action = () => traktJsonWriter.WriteObjectAsync(default(JsonTextWriter), traktEpisodeIds); await action.Should().ThrowAsync <ArgumentNullException>(); }
public void Test_EpisodeIdsObjectJsonWriter_WriteObject_Object_Exceptions() { var traktJsonWriter = new EpisodeIdsObjectJsonWriter(); Func <Task <string> > action = () => traktJsonWriter.WriteObjectAsync(default(ITraktEpisodeIds)); action.Should().Throw <ArgumentNullException>(); }
public async Task Test_EpisodeIdsObjectJsonWriter_WriteObject_Object_Only_TvRage_Property() { ITraktEpisodeIds traktEpisodeIds = new TraktEpisodeIds { TvRage = 101 }; var traktJsonWriter = new EpisodeIdsObjectJsonWriter(); string json = await traktJsonWriter.WriteObjectAsync(traktEpisodeIds); json.Should().Be(@"{""trakt"":0,""tvrage"":101}"); }
public async Task Test_EpisodeIdsObjectJsonWriter_WriteObject_Object_Only_Tmdb_Property() { ITraktEpisodeIds traktEpisodeIds = new TraktEpisodeIds { Tmdb = 789 }; var traktJsonWriter = new EpisodeIdsObjectJsonWriter(); string json = await traktJsonWriter.WriteObjectAsync(traktEpisodeIds); json.Should().Be(@"{""trakt"":0,""tmdb"":789}"); }
public override async Task WriteObjectAsync(JsonTextWriter jsonWriter, ITraktSyncWatchlistPostEpisode obj, CancellationToken cancellationToken = default) { CheckJsonTextWriter(jsonWriter); await jsonWriter.WriteStartObjectAsync(cancellationToken).ConfigureAwait(false); if (obj.Ids != null) { var episodeIdsObjectJsonWriter = new EpisodeIdsObjectJsonWriter(); await jsonWriter.WritePropertyNameAsync(JsonProperties.PROPERTY_NAME_IDS, cancellationToken).ConfigureAwait(false); await episodeIdsObjectJsonWriter.WriteObjectAsync(jsonWriter, obj.Ids, cancellationToken).ConfigureAwait(false); } await jsonWriter.WriteEndObjectAsync(cancellationToken).ConfigureAwait(false); }
public async Task Test_EpisodeIdsObjectJsonWriter_WriteObject_StringWriter_Only_Imdb_Property() { ITraktEpisodeIds traktEpisodeIds = new TraktEpisodeIds { Imdb = "ids imdb" }; using (var stringWriter = new StringWriter()) { var traktJsonWriter = new EpisodeIdsObjectJsonWriter(); string json = await traktJsonWriter.WriteObjectAsync(stringWriter, traktEpisodeIds); json.Should().Be(@"{""trakt"":0,""imdb"":""ids imdb""}"); } }
public async Task Test_EpisodeIdsObjectJsonWriter_WriteObject_StringWriter_Only_Trakt_Property() { ITraktEpisodeIds traktEpisodeIds = new TraktEpisodeIds { Trakt = 123 }; using (var stringWriter = new StringWriter()) { var traktJsonWriter = new EpisodeIdsObjectJsonWriter(); string json = await traktJsonWriter.WriteObjectAsync(stringWriter, traktEpisodeIds); json.Should().Be(@"{""trakt"":123}"); } }
public async Task Test_EpisodeIdsObjectJsonWriter_WriteObject_JsonWriter_Only_TvRage_Property() { ITraktEpisodeIds traktEpisodeIds = new TraktEpisodeIds { TvRage = 101 }; using (var stringWriter = new StringWriter()) using (var jsonWriter = new JsonTextWriter(stringWriter)) { var traktJsonWriter = new EpisodeIdsObjectJsonWriter(); await traktJsonWriter.WriteObjectAsync(jsonWriter, traktEpisodeIds); stringWriter.ToString().Should().Be(@"{""trakt"":0,""tvrage"":101}"); } }
public async Task Test_EpisodeIdsObjectJsonWriter_WriteObject_Object_Complete() { ITraktEpisodeIds traktEpisodeIds = new TraktEpisodeIds { Trakt = 123, Tvdb = 456, Imdb = "ids imdb", Tmdb = 789, TvRage = 101 }; var traktJsonWriter = new EpisodeIdsObjectJsonWriter(); string json = await traktJsonWriter.WriteObjectAsync(traktEpisodeIds); json.Should().Be(@"{""trakt"":123,""tvdb"":456," + @"""imdb"":""ids imdb"",""tmdb"":789,""tvrage"":101}"); }
protected override async Task WriteMetadataObjectAsync(JsonTextWriter jsonWriter, ITraktSyncCollectionPostEpisode obj, CancellationToken cancellationToken = default) { if (obj.CollectedAt.HasValue) { await jsonWriter.WritePropertyNameAsync(JsonProperties.SYNC_COLLECTION_POST_EPISODE_PROPERTY_NAME_COLLECTED_AT, cancellationToken).ConfigureAwait(false); await jsonWriter.WriteValueAsync(obj.CollectedAt.Value.ToTraktLongDateTimeString(), cancellationToken).ConfigureAwait(false); } if (obj.Ids != null) { var episodeIdsObjectJsonWriter = new EpisodeIdsObjectJsonWriter(); await jsonWriter.WritePropertyNameAsync(JsonProperties.SYNC_COLLECTION_POST_EPISODE_PROPERTY_NAME_IDS, cancellationToken).ConfigureAwait(false); await episodeIdsObjectJsonWriter.WriteObjectAsync(jsonWriter, obj.Ids, cancellationToken).ConfigureAwait(false); } await base.WriteMetadataObjectAsync(jsonWriter, obj, cancellationToken).ConfigureAwait(false); }
public override async Task WriteObjectAsync(JsonTextWriter jsonWriter, ITraktPostResponseNotFoundEpisode obj, CancellationToken cancellationToken = default) { if (jsonWriter == null) { throw new ArgumentNullException(nameof(jsonWriter)); } await jsonWriter.WriteStartObjectAsync(cancellationToken).ConfigureAwait(false); if (obj.Ids != null) { var episodeIdsObjectJsonWriter = new EpisodeIdsObjectJsonWriter(); await jsonWriter.WritePropertyNameAsync(JsonProperties.POST_RESPONSE_NOT_FOUND_EPISODE_PROPERTY_NAME_IDS, cancellationToken).ConfigureAwait(false); await episodeIdsObjectJsonWriter.WriteObjectAsync(jsonWriter, obj.Ids, cancellationToken).ConfigureAwait(false); } await jsonWriter.WriteEndObjectAsync(cancellationToken).ConfigureAwait(false); }
public override async Task WriteObjectAsync(JsonTextWriter jsonWriter, ITraktSyncWatchlistPostEpisode obj, CancellationToken cancellationToken = default) { if (jsonWriter == null) { throw new ArgumentNullException(nameof(jsonWriter)); } await jsonWriter.WriteStartObjectAsync(cancellationToken).ConfigureAwait(false); if (obj.Ids != null) { var episodeIdsObjectJsonWriter = new EpisodeIdsObjectJsonWriter(); await jsonWriter.WritePropertyNameAsync(JsonProperties.SYNC_WATCHLIST_POST_EPISODE_PROPERTY_NAME_IDS, cancellationToken).ConfigureAwait(false); await episodeIdsObjectJsonWriter.WriteObjectAsync(jsonWriter, obj.Ids, cancellationToken).ConfigureAwait(false); } await jsonWriter.WriteEndObjectAsync(cancellationToken).ConfigureAwait(false); }
public async Task Test_EpisodeIdsObjectJsonWriter_WriteObject_JsonWriter_Complete() { ITraktEpisodeIds traktEpisodeIds = new TraktEpisodeIds { Trakt = 123, Tvdb = 456, Imdb = "ids imdb", Tmdb = 789, TvRage = 101 }; using (var stringWriter = new StringWriter()) using (var jsonWriter = new JsonTextWriter(stringWriter)) { var traktJsonWriter = new EpisodeIdsObjectJsonWriter(); await traktJsonWriter.WriteObjectAsync(jsonWriter, traktEpisodeIds); stringWriter.ToString().Should().Be(@"{""trakt"":123,""tvdb"":456," + @"""imdb"":""ids imdb"",""tmdb"":789,""tvrage"":101}"); } }
public override async Task WriteObjectAsync(JsonTextWriter jsonWriter, ITraktSyncHistoryPostEpisode obj, CancellationToken cancellationToken = default) { CheckJsonTextWriter(jsonWriter); await jsonWriter.WriteStartObjectAsync(cancellationToken).ConfigureAwait(false); if (obj.WatchedAt.HasValue) { await jsonWriter.WritePropertyNameAsync(JsonProperties.PROPERTY_NAME_WATCHED_AT, cancellationToken).ConfigureAwait(false); await jsonWriter.WriteValueAsync(obj.WatchedAt.Value.ToTraktLongDateTimeString(), cancellationToken).ConfigureAwait(false); } if (obj.Ids != null) { var episodeIdsObjectJsonWriter = new EpisodeIdsObjectJsonWriter(); await jsonWriter.WritePropertyNameAsync(JsonProperties.PROPERTY_NAME_IDS, cancellationToken).ConfigureAwait(false); await episodeIdsObjectJsonWriter.WriteObjectAsync(jsonWriter, obj.Ids, cancellationToken).ConfigureAwait(false); } await jsonWriter.WriteEndObjectAsync(cancellationToken).ConfigureAwait(false); }
public override async Task WriteObjectAsync(JsonTextWriter jsonWriter, ITraktSyncRatingsPostResponseNotFoundEpisode obj, CancellationToken cancellationToken = default) { CheckJsonTextWriter(jsonWriter); await jsonWriter.WriteStartObjectAsync(cancellationToken).ConfigureAwait(false); if (obj.Rating.HasValue) { await jsonWriter.WritePropertyNameAsync(JsonProperties.PROPERTY_NAME_RATING, cancellationToken).ConfigureAwait(false); await jsonWriter.WriteValueAsync(obj.Rating, cancellationToken).ConfigureAwait(false); } if (obj.Ids != null) { var episodeIdsObjectJsonWriter = new EpisodeIdsObjectJsonWriter(); await jsonWriter.WritePropertyNameAsync(JsonProperties.PROPERTY_NAME_IDS, cancellationToken).ConfigureAwait(false); await episodeIdsObjectJsonWriter.WriteObjectAsync(jsonWriter, obj.Ids, cancellationToken).ConfigureAwait(false); } await jsonWriter.WriteEndObjectAsync(cancellationToken).ConfigureAwait(false); }