Exemplo n.º 1
0
        protected override (IConfigurationProvider Provider, Action Initializer) LoadThroughProvider(TestSection testConfig)
        {
            var jsonBuilder = new StringBuilder();

            SectionToJson(jsonBuilder, testConfig);

            var provider = new JsonConfigurationProvider(
                new JsonConfigurationSource
            {
                Optional = true
            });

            var json = jsonBuilder.ToString();

            return(provider, () => provider.Load(TestStreamHelpers.StringToStream(json)));
        }
        protected override (IConfigurationProvider Provider, Action Initializer) LoadThroughProvider(TestSection testConfig)
        {
            var jsonBuilder = new StringBuilder();

            SectionToJson(jsonBuilder, testConfig, includeComma: false);

            var provider = new JsonConfigurationProvider(
                new JsonConfigurationSource
            {
                Optional = true
            });

            var json = jsonBuilder.ToString();

            json = JObject.Parse(json).ToString(); // standardize the json (removing trailing commas)
            return(provider, () => provider.Load(TestStreamHelpers.StringToStream(json)));
        }
Exemplo n.º 3
0
        public void SupportAndIgnoreComments()
        {
            var json          = @"/* Comments */
                {/* Comments */
                ""name"": /* Comments */ ""test"",
                ""address"": {
                    ""street"": ""Something street"", /* Comments */
                    ""zipcode"": ""12345""
                }
            }";
            var jsonConfigSrc = new JsonConfigurationProvider(TestStreamHelpers.ArbitraryFilePath);

            jsonConfigSrc.Load(TestStreamHelpers.StringToStream(json));

            Assert.Equal("test", jsonConfigSrc.Get("name"));
            Assert.Equal("Something street", jsonConfigSrc.Get("address:street"));
            Assert.Equal("12345", jsonConfigSrc.Get("address:zipcode"));
        }
Exemplo n.º 4
0
        public void LoadKeyValuePairsFromValidJson()
        {
            var json          = @"
{
    'firstname': 'test',
    'test.last.name': 'last.name',
        'residential.address': {
            'street.name': 'Something street',
            'zipcode': '12345'
        }
}";
            var jsonConfigSrc = new JsonConfigurationProvider(TestStreamHelpers.ArbitraryFilePath);

            jsonConfigSrc.Load(TestStreamHelpers.StringToStream(json));

            Assert.Equal("test", jsonConfigSrc.Get("firstname"));
            Assert.Equal("last.name", jsonConfigSrc.Get("test.last.name"));
            Assert.Equal("Something street", jsonConfigSrc.Get("residential.address:STREET.name"));
            Assert.Equal("12345", jsonConfigSrc.Get("residential.address:zipcode"));
        }