public void ReadKnownValuesTests() { // Arrange var inputs = new Dictionary <string, SampleEnumeration> { { "\"Value1\"", SampleEnumeration.Value1 }, { "\"valuE1\"", SampleEnumeration.Value1 }, { "\"Value2\"", SampleEnumeration.Value2 }, { "\"value2\"", SampleEnumeration.Value2 }, { "\"Value3\"", SampleEnumeration.Value3 }, { "\"value3\"", SampleEnumeration.Value3 } }; var target = new EnumerationConverter(); // Act & Assert foreach (var(json, expectedResult) in inputs) { Enumeration?result = null; var utf8JsonBytes = Encoding.UTF8.GetBytes(json); var reader = new Utf8JsonReader(utf8JsonBytes, true, new JsonReaderState()); while (reader.Read()) { result = target.Read(ref reader, typeof(SampleEnumeration), new JsonSerializerOptions()); } Assert.Equal(expectedResult, result); } }
public void ReadUnknownValuesTests() { // Arrange var target = new EnumerationConverter(); // Act Enumeration?result = null; var utf8JsonBytes = Encoding.UTF8.GetBytes("\"UNKNOWN_VALUE\""); var reader = new Utf8JsonReader(utf8JsonBytes, true, new JsonReaderState()); while (reader.Read()) { result = target.Read(ref reader, typeof(SampleEnumeration), new JsonSerializerOptions()); } // Assert Assert.Null(result); }