public void JsonEnumValueConverterSerialize() { //-- Arrange JsonTypeWithEnum jsonObject = new JsonTypeWithEnum() { Property = "test_property_value", Array = new string[] { "test_array_value_1", "test_array_value_2" }, Dictionary = new Dictionary <string, object>() { { "property_1", "value_1" }, { "property_2", "value_2" }, { "property_3", new JsonTypeWithEnum() { Property = "property_nested" } } }, Enum = EnumType.EnumValue1 }; string jsonSerializedExpectedObject = "{\"property_test\":\"test_property_value\",\"array_test\":[\"test_array_value_1\",\"test_array_value_2\"],\"dictionary_test\":{\"property_1\":\"value_1\",\"property_2\":\"value_2\",\"property_3\":{\"property_test\":\"property_nested\"}},\"enum_test\":\"Enum-Value-1\"}"; //-- Act string jsonSerializedObject = new JsonSerializer <JsonTypeWithEnum>(new List <JsonConverter>() { new JsonEnumValueConverter() }).Serialize(jsonObject); //-- Assert Assert.Equal(jsonSerializedExpectedObject, jsonSerializedObject); }
public void JsonEnumValueAttributeDeserilize() { //-- Arrange JsonTypeWithEnum jsonExpectedDeserializedObject = new JsonTypeWithEnum() { Enum = EnumType.EnumValue2 }; string jsonObject = "{\"enum_test\":\"Enum-Value-2\"}"; //-- Act JsonTypeWithEnum jsonSerializedObject = new JsonSerializer <JsonTypeWithEnum>(new List <JsonConverter>() { new JsonEnumValueConverter() }).Deserialize(jsonObject); //-- Assert Assert.Equal(jsonExpectedDeserializedObject.Enum, jsonSerializedObject.Enum); }