public void Write() { // Arrange var value = new StrongGrid.Models.Legacy.Field[] { new StrongGrid.Models.Legacy.Field <string>() { Id = 1, Name = "field1", Value = "111111" }, new StrongGrid.Models.Legacy.Field <long>() { Id = 2, Name = "field2", Value = 222222 }, new StrongGrid.Models.Legacy.Field <long?>() { Id = 3, Name = "field3", Value = null }, new StrongGrid.Models.Legacy.Field <DateTime>() { Id = 4, Name = "field4", Value = new DateTime(2017, 3, 28, 13, 55, 0) }, new StrongGrid.Models.Legacy.Field <DateTime?>() { Id = 5, Name = "field5", Value = null } }; var ms = new MemoryStream(); var jsonWriter = new Utf8JsonWriter(ms); var options = new JsonSerializerOptions(); var converter = new LegacyCustomFieldsConverter(); // Act converter.Write(jsonWriter, value, options); jsonWriter.Flush(); ms.Position = 0; var sr = new StreamReader(ms); var result = sr.ReadToEnd(); // Assert result.ShouldBe("[{\"value\":\"111111\",\"id\":1,\"name\":\"field1\"},{\"value\":222222,\"id\":2,\"name\":\"field2\"},{\"id\":3,\"name\":\"field3\"},{\"value\":\"2017-03-28T13:55:00\",\"id\":4,\"name\":\"field4\"},{\"id\":5,\"name\":\"field5\"}]"); }
public void Write() { // Arrange var sb = new StringBuilder(); var sw = new StringWriter(sb); var writer = new JsonTextWriter(sw); var value = new StrongGrid.Models.Legacy.Field[] { new StrongGrid.Models.Legacy.Field <string>() { Id = 1, Name = "field1", Value = "111111" }, new StrongGrid.Models.Legacy.Field <long>() { Id = 2, Name = "field2", Value = 222222 }, new StrongGrid.Models.Legacy.Field <long?>() { Id = 3, Name = "field3", Value = null }, new StrongGrid.Models.Legacy.Field <DateTime>() { Id = 4, Name = "field4", Value = new DateTime(2017, 3, 28, 13, 55, 0) }, new StrongGrid.Models.Legacy.Field <DateTime?>() { Id = 5, Name = "field5", Value = null } }; var serializer = new JsonSerializer(); var converter = new LegacyCustomFieldsConverter(); // Act converter.WriteJson(writer, value, serializer); var result = sb.ToString(); // Assert result.ShouldBe("[{\"value\":\"111111\",\"id\":1,\"name\":\"field1\"},{\"value\":222222,\"id\":2,\"name\":\"field2\"},{\"id\":3,\"name\":\"field3\"},{\"value\":\"2017-03-28T13:55:00\",\"id\":4,\"name\":\"field4\"},{\"id\":5,\"name\":\"field5\"}]"); }