public override async Task <ITraktCertifications> ReadObjectAsync(JsonTextReader jsonReader, CancellationToken cancellationToken = default) { CheckJsonTextReader(jsonReader); if (await jsonReader.ReadAsync(cancellationToken) && jsonReader.TokenType == JsonToken.StartObject) { var certificationsArrayReader = new ArrayJsonReader <ITraktCertification>(); ITraktCertifications traktCertifications = new TraktCertifications(); while (await jsonReader.ReadAsync(cancellationToken) && jsonReader.TokenType == JsonToken.PropertyName) { var propertyName = jsonReader.Value.ToString(); switch (propertyName) { case JsonProperties.PROPERTY_NAME_US: traktCertifications.US = await certificationsArrayReader.ReadArrayAsync(jsonReader, cancellationToken); break; default: await JsonReaderHelper.ReadAndIgnoreInvalidContentAsync(jsonReader, cancellationToken); break; } } return(traktCertifications); } return(await Task.FromResult(default(ITraktCertifications))); }
public async Task Test_CertificationsObjectJsonWriter_WriteObject_Object_Complete() { ITraktCertifications traktCertifications = new TraktCertifications { US = new List <ITraktCertification> { new TraktCertification { Name = "certification name 1", Slug = "certification slug 1", Description = "certification description 1" }, new TraktCertification { Name = "certification name 2", Slug = "certification slug 2", Description = "certification description 2" }, new TraktCertification { Name = "certification name 3", Slug = "certification slug 3", Description = "certification description 3" } } }; var traktJsonWriter = new CertificationsObjectJsonWriter(); string json = await traktJsonWriter.WriteObjectAsync(traktCertifications); json.Should().Be(@"{""us"":[{""name"":""certification name 1"",""slug"":""certification slug 1"",""description"":""certification description 1""}," + @"{""name"":""certification name 2"",""slug"":""certification slug 2"",""description"":""certification description 2""}," + @"{""name"":""certification name 3"",""slug"":""certification slug 3"",""description"":""certification description 3""}]}"); }
public async Task Test_CertificationsObjectJsonWriter_WriteObject_StringWriter_Exceptions() { var traktJsonWriter = new CertificationsObjectJsonWriter(); ITraktCertifications traktCertifications = new TraktCertifications(); Func <Task <string> > action = () => traktJsonWriter.WriteObjectAsync(default(StringWriter), traktCertifications); await action.Should().ThrowAsync <ArgumentNullException>(); }
public void Test_CertificationsObjectJsonWriter_WriteObject_JsonWriter_Exceptions() { var traktJsonWriter = new CertificationsObjectJsonWriter(); ITraktCertifications traktCertifications = new TraktCertifications(); Func <Task> action = () => traktJsonWriter.WriteObjectAsync(default(JsonTextWriter), traktCertifications); action.Should().Throw <ArgumentNullException>(); }
public async Task Test_CertificationsObjectJsonWriter_WriteObject_Object_Empty() { ITraktCertifications traktCertifications = new TraktCertifications(); var traktJsonWriter = new CertificationsObjectJsonWriter(); string json = await traktJsonWriter.WriteObjectAsync(traktCertifications); json.Should().Be("{}"); }
public async Task Test_CertificationsObjectJsonWriter_WriteObject_JsonWriter_Empty() { ITraktCertifications traktCertifications = new TraktCertifications(); using (var stringWriter = new StringWriter()) using (var jsonWriter = new JsonTextWriter(stringWriter)) { var traktJsonWriter = new CertificationsObjectJsonWriter(); await traktJsonWriter.WriteObjectAsync(jsonWriter, traktCertifications); stringWriter.ToString().Should().Be("{}"); } }
public async Task Test_CertificationsObjectJsonWriter_WriteObject_JsonWriter_Complete() { ITraktCertifications traktCertifications = new TraktCertifications { US = new List <ITraktCertification> { new TraktCertification { Name = "certification name 1", Slug = "certification slug 1", Description = "certification description 1" }, new TraktCertification { Name = "certification name 2", Slug = "certification slug 2", Description = "certification description 2" }, new TraktCertification { Name = "certification name 3", Slug = "certification slug 3", Description = "certification description 3" } } }; using (var stringWriter = new StringWriter()) using (var jsonWriter = new JsonTextWriter(stringWriter)) { var traktJsonWriter = new CertificationsObjectJsonWriter(); await traktJsonWriter.WriteObjectAsync(jsonWriter, traktCertifications); stringWriter.ToString().Should().Be(@"{""us"":[{""name"":""certification name 1"",""slug"":""certification slug 1"",""description"":""certification description 1""}," + @"{""name"":""certification name 2"",""slug"":""certification slug 2"",""description"":""certification description 2""}," + @"{""name"":""certification name 3"",""slug"":""certification slug 3"",""description"":""certification description 3""}]}"); } }
public void TestTraktCertificationsDefaultConstructor() { var certifications = new TraktCertifications(); certifications.US.Should().BeNull(); }
public void Test_TraktCertifications_Default_Constructor() { var traktCertifications = new TraktCertifications(); traktCertifications.US.Should().BeNull(); }