public async Task Test_SyncRecommendationsPostShowObjectJsonWriter_WriteObject_JsonWriter_Complete() { ITraktSyncRecommendationsPostShow traktSyncRecommendationsPostShow = new TraktSyncRecommendationsPostShow { Title = "Breaking Bad", Year = 2008, Ids = new TraktShowIds { Trakt = 1, Slug = "breaking-bad", Tvdb = 81189, Imdb = "tt0903747", Tmdb = 1396 }, Notes = "I AM THE DANGER!" }; using var stringWriter = new StringWriter(); using var jsonWriter = new JsonTextWriter(stringWriter); var traktJsonWriter = new SyncRecommendationsPostShowObjectJsonWriter(); await traktJsonWriter.WriteObjectAsync(jsonWriter, traktSyncRecommendationsPostShow); stringWriter.ToString().Should().Be(@"{""title"":""Breaking Bad"",""year"":2008," + @"""ids"":{""trakt"":1,""slug"":""breaking-bad""," + @"""tvdb"":81189,""imdb"":""tt0903747"",""tmdb"":1396}," + @"""notes"":""I AM THE DANGER!""}"); }
public async Task Test_SyncRecommendationsPostShowObjectJsonWriter_WriteObject_JsonWriter_Exceptions() { var traktJsonWriter = new SyncRecommendationsPostShowObjectJsonWriter(); ITraktSyncRecommendationsPostShow traktSyncRecommendationsPostShow = new TraktSyncRecommendationsPostShow(); Func <Task> action = () => traktJsonWriter.WriteObjectAsync(default(JsonTextWriter), traktSyncRecommendationsPostShow); await action.Should().ThrowAsync <ArgumentNullException>(); }
public void Test_TraktSyncRecommendationsPostShow_Default_Constructor() { var syncRecommendationsPostShow = new TraktSyncRecommendationsPostShow(); syncRecommendationsPostShow.Title.Should().BeNull(); syncRecommendationsPostShow.Year.Should().BeNull(); syncRecommendationsPostShow.Ids.Should().BeNull(); syncRecommendationsPostShow.Notes.Should().BeNull(); }
private ITraktSyncRecommendationsPostShow CreateSyncRecommendationsPostShow(ITraktShow show, string notes = null) { var syncRecommendationsPostShow = new TraktSyncRecommendationsPostShow { Ids = show.Ids, Title = show.Title, Year = show.Year }; if (!string.IsNullOrWhiteSpace(notes)) { syncRecommendationsPostShow.Notes = notes; } return(syncRecommendationsPostShow); }
public override async Task <ITraktSyncRecommendationsPostShow> ReadObjectAsync(JsonTextReader jsonReader, CancellationToken cancellationToken = default) { CheckJsonTextReader(jsonReader); if (await jsonReader.ReadAsync(cancellationToken) && jsonReader.TokenType == JsonToken.StartObject) { ITraktSyncRecommendationsPostShow traktSyncRecommendationsPostShow = new TraktSyncRecommendationsPostShow(); var showIdsObjectJsonReader = new ShowIdsObjectJsonReader(); while (await jsonReader.ReadAsync(cancellationToken) && jsonReader.TokenType == JsonToken.PropertyName) { var propertyName = jsonReader.Value.ToString(); switch (propertyName) { case JsonProperties.PROPERTY_NAME_TITLE: traktSyncRecommendationsPostShow.Title = await jsonReader.ReadAsStringAsync(cancellationToken); break; case JsonProperties.PROPERTY_NAME_YEAR: traktSyncRecommendationsPostShow.Year = await jsonReader.ReadAsInt32Async(cancellationToken); break; case JsonProperties.PROPERTY_NAME_IDS: traktSyncRecommendationsPostShow.Ids = await showIdsObjectJsonReader.ReadObjectAsync(jsonReader, cancellationToken); break; case JsonProperties.PROPERTY_NAME_NOTES: traktSyncRecommendationsPostShow.Notes = await jsonReader.ReadAsStringAsync(cancellationToken); break; default: await JsonReaderHelper.ReadAndIgnoreInvalidContentAsync(jsonReader, cancellationToken); break; } } return(traktSyncRecommendationsPostShow); } return(await Task.FromResult(default(ITraktSyncRecommendationsPostShow))); }