using System.Reflection; using System.Text; using System.Text.Json; namespace Terminal.Gui.DrawingTests; public class GlyphTests { [Fact] public void Default_GlyphDefinitions_Deserialize () { var defs = new GlyphDefinitions (); // enumerate all properties in GlyphDefinitions foreach (PropertyInfo prop in typeof (GlyphDefinitions).GetProperties ()) { if (prop.PropertyType == typeof (Rune)) { // Act var rune = (Rune)prop.GetValue (defs); string json = JsonSerializer.Serialize (rune, ConfigurationManager._serializerOptions); var deserialized = JsonSerializer.Deserialize (json, ConfigurationManager._serializerOptions); // Assert Assert.Equal (((Rune)prop.GetValue (defs)).Value, deserialized.Value); } } } }