public void SerializeKeyAsValueOnlyGivenStringValue() { var items = new ExtendableEnumDictionary <SampleStatusByString, string> { { SampleStatusByString.Active, nameof(SampleStatusByString.Active) }, { SampleStatusByString.Deleted, nameof(SampleStatusByString.Deleted) }, }; var serialized = JsonConvert.SerializeObject(items); Assert.AreEqual("{\"B\":\"Active\",\"C\":\"Deleted\"}", serialized); }
public void DeserializeGivenValidSerializedByString() { var serialized = "{ \"B\":\"Active\",\"C\":\"Deleted\"}"; var expected = new ExtendableEnumDictionary <SampleStatusByString, string> { { SampleStatusByString.Active, nameof(SampleStatusByString.Active) }, { SampleStatusByString.Deleted, nameof(SampleStatusByString.Deleted) }, }; var result = JsonConvert.DeserializeObject <ExtendableEnumDictionary <SampleStatusByString, string> >(serialized); result.Should().BeEquivalentTo(expected); }
public void DeserializeGivenDisplayNameSerialized() { Console.WriteLine(JsonConvert.SerializeObject(SampleStatus.Active)); var serialized = "{ \"Active\":\"Active\",\"Deleted\":\"Deleted\"}"; var expected = new ExtendableEnumDictionary <SampleStatus, string> { { SampleStatus.Active, nameof(SampleStatus.Active) }, { SampleStatus.Deleted, nameof(SampleStatus.Deleted) }, }; var result = JsonConvert.DeserializeObject <ExtendableEnumDictionary <SampleStatus, string> >(serialized); result.Should().BeEquivalentTo(expected); }