public void when_encoding_an_object_with_custom_naming_of_property_it_should_decode_taking_into_account_custom_property_name()
        {
            var CombinedResolverStrategy = new CombinedResolverStrategy(
                new JsonResolverStrategy(),
                new DataContractResolverStrategy(),
                new XmlResolverStrategy(),
                new ConventionResolverStrategy(ConventionResolverStrategy.WordCasing.PascalCase),
                new ConventionResolverStrategy(ConventionResolverStrategy.WordCasing.CamelCase),
                new ConventionResolverStrategy(ConventionResolverStrategy.WordCasing.Lowercase, "-"),
                new ConventionResolverStrategy(ConventionResolverStrategy.WordCasing.Uppercase, "_"));

            IEnumerable <IDataWriter> writers = new List <IDataWriter>
            {
                new JsonWriter(new DataWriterSettings(CombinedResolverStrategy), HttpContentTypes.ApplicationJson)
            };

            var encoder = new DefaultEncoder(new RegExBasedDataWriterProvider(writers));

            var customObject = new CustomNamedObject {
                UpperPropertyName = "someValue"
            };

            var encoded = encoder.Encode(customObject, HttpContentTypes.ApplicationJson);

            var str = System.Text.Encoding.UTF8.GetString(encoded);

            StringAssert.Contains("upperPropertyName", str);
        }
Exemple #2
0
        public void when_encoding_an_object_that_contains_an_enum()
        {
            IEnumerable <IDataWriter> writers = new List <IDataWriter>
            {
                new JsonWriter(new DataWriterSettings(), "application/.*json")
            };

            var _encoder = new DefaultEncoder(new RegExBasedDataWriterProvider(writers));

            var data = new Foo {
                Baz = Bar.First
            };

            var result = _encoder.Encode(data, "application/vnd.fubar+json");

            Assert.Greater(result.Length, 0);
        }