public async Task Test_GenreObjectJsonWriter_WriteObject_StringWriter_Exceptions() { var traktJsonWriter = new GenreObjectJsonWriter(); ITraktGenre traktGenre = new TraktGenre(); Func <Task <string> > action = () => traktJsonWriter.WriteObjectAsync(default(StringWriter), traktGenre); await action.Should().ThrowAsync <ArgumentNullException>(); }
public void Test_TraktGenre_Default_Constructor() { var traktGenre = new TraktGenre(); traktGenre.Name.Should().BeNull(); traktGenre.Slug.Should().BeNull(); traktGenre.Type.Should().BeNull(); }
public void Test_GenreObjectJsonWriter_WriteObject_JsonWriter_Exceptions() { var traktJsonWriter = new GenreObjectJsonWriter(); ITraktGenre traktGenre = new TraktGenre(); Func <Task> action = () => traktJsonWriter.WriteObjectAsync(default(JsonTextWriter), traktGenre); action.Should().Throw <ArgumentNullException>(); }
public void TestTraktGenreDefaultConstructor() { var genre = new TraktGenre(); genre.Name.Should().BeNullOrEmpty(); genre.Slug.Should().BeNullOrEmpty(); genre.Type.Should().BeNull(); }
public async Task Test_GenreObjectJsonWriter_WriteObject_Object_Only_Slug_Property() { ITraktGenre traktGenre = new TraktGenre { Slug = "genre slug" }; var traktJsonWriter = new GenreObjectJsonWriter(); string json = await traktJsonWriter.WriteObjectAsync(traktGenre); json.Should().Be(@"{""slug"":""genre slug""}"); }
public async Task Test_GenreObjectJsonWriter_WriteObject_Object_Complete() { ITraktGenre traktGenre = new TraktGenre { Name = "genre name", Slug = "genre slug" }; var traktJsonWriter = new GenreObjectJsonWriter(); string json = await traktJsonWriter.WriteObjectAsync(traktGenre); json.Should().Be(@"{""name"":""genre name"",""slug"":""genre slug""}"); }
public async Task Test_GenreObjectJsonWriter_WriteObject_StringWriter_Only_Name_Property() { ITraktGenre traktGenre = new TraktGenre { Name = "genre name" }; using (var stringWriter = new StringWriter()) { var traktJsonWriter = new GenreObjectJsonWriter(); string json = await traktJsonWriter.WriteObjectAsync(stringWriter, traktGenre); json.Should().Be(@"{""name"":""genre name""}"); } }
public async Task Test_GenreObjectJsonWriter_WriteObject_JsonWriter_Only_Slug_Property() { ITraktGenre traktGenre = new TraktGenre { Slug = "genre slug" }; using (var stringWriter = new StringWriter()) using (var jsonWriter = new JsonTextWriter(stringWriter)) { var traktJsonWriter = new GenreObjectJsonWriter(); await traktJsonWriter.WriteObjectAsync(jsonWriter, traktGenre); stringWriter.ToString().Should().Be(@"{""slug"":""genre slug""}"); } }
public async Task Test_GenreObjectJsonWriter_WriteObject_JsonWriter_Complete() { ITraktGenre traktGenre = new TraktGenre { Name = "genre name", Slug = "genre slug" }; using (var stringWriter = new StringWriter()) using (var jsonWriter = new JsonTextWriter(stringWriter)) { var traktJsonWriter = new GenreObjectJsonWriter(); await traktJsonWriter.WriteObjectAsync(jsonWriter, traktGenre); stringWriter.ToString().Should().Be(@"{""name"":""genre name"",""slug"":""genre slug""}"); } }
public override async Task <ITraktGenre> ReadObjectAsync(JsonTextReader jsonReader, CancellationToken cancellationToken = default) { if (jsonReader == null) { return(await Task.FromResult(default(ITraktGenre))); } if (await jsonReader.ReadAsync(cancellationToken) && jsonReader.TokenType == JsonToken.StartObject) { ITraktGenre traktGenre = new TraktGenre(); while (await jsonReader.ReadAsync(cancellationToken) && jsonReader.TokenType == JsonToken.PropertyName) { var propertyName = jsonReader.Value.ToString(); switch (propertyName) { case JsonProperties.GENRE_PROPERTY_NAME_NAME: traktGenre.Name = await jsonReader.ReadAsStringAsync(cancellationToken); break; case JsonProperties.GENRE_PROPERTY_NAME_SLUG: traktGenre.Slug = await jsonReader.ReadAsStringAsync(cancellationToken); break; default: await JsonReaderHelper.ReadAndIgnoreInvalidContentAsync(jsonReader, cancellationToken); break; } } return(traktGenre); } return(await Task.FromResult(default(ITraktGenre))); }