예제 #1
0
        public void FormKeyConverter_FormLink_Deserialize_Missing()
        {
            var settings = new JsonSerializerSettings();

            settings.Converters.Add(new FormKeyJsonConverter());
            var target        = new FormLinkClass();
            var toDeserialize = $"{{}}";

            JsonConvert.DeserializeObject <FormLinkClass>(toDeserialize, settings) !
            .Direct
            .Should().Be(target.Direct);
        }
예제 #2
0
        public void FormKeyConverter_FormLink_Serialize()
        {
            var settings = new JsonSerializerSettings();

            settings.Converters.Add(new FormKeyJsonConverter());
            var toSerialize = new FormLinkClass()
            {
                Direct = new FormLink <INpcGetter>(Utility.Form2),
                Setter = new FormLink <INpcGetter>(Utility.Form2),
                Getter = new FormLink <INpcGetter>(Utility.Form2)
            };

            JsonConvert.SerializeObject(toSerialize, settings)
            .Should().Be($"{{\"Direct\":\"{toSerialize.Direct.FormKey}\",\"Setter\":\"{toSerialize.Direct.FormKey}\",\"Getter\":\"{toSerialize.Direct.FormKey}\"}}");
        }
예제 #3
0
        public void FormKeyConverter_FormLink_Deserialize()
        {
            var settings = new JsonSerializerSettings();

            settings.Converters.Add(new FormKeyJsonConverter());
            var target = new FormLinkClass()
            {
                Direct = new FormLink <INpcGetter>(Utility.Form2),
                Setter = new FormLink <INpcGetter>(Utility.Form2),
                Getter = new FormLink <INpcGetter>(Utility.Form2)
            };
            var toDeserialize = $"{{\"Direct\":\"{target.Direct.FormKey}\",\"Setter\":\"{target.Direct.FormKey}\",\"Getter\":\"{target.Direct.FormKey}\"}}";

            JsonConvert.DeserializeObject <FormLinkClass>(toDeserialize, settings) !
            .Direct
            .Should().Be(target.Direct);
        }