public void BindCanSetNonPublicWhenSet(string property)
        {
            var dic = new Dictionary <string, string>
            {
                { property, "stuff" },
            };
            var configurationBuilder = new ConfigurationBuilder();

            configurationBuilder.AddInMemoryCollection(dic);
            var config = configurationBuilder.Build();

            var options = new ComplexOptions();

            config.Bind(options, o => o.BindNonPublicProperties = true);
            Assert.Equal("stuff", options.GetType().GetTypeInfo().GetDeclaredProperty(property).GetValue(options));
        }
        public void NonPublicModeBindStillIgnoresReadonly(string property)
        {
            var dic = new Dictionary <string, string>
            {
                { property, "stuff" },
            };
            var configurationBuilder = new ConfigurationBuilder();

            configurationBuilder.AddInMemoryCollection(dic);
            var config = configurationBuilder.Build();

            var options = new ComplexOptions();

            config.Bind(options, o => o.BindNonPublicProperties = true);
            Assert.Null(options.GetType().GetTypeInfo().GetDeclaredProperty(property).GetValue(options));
        }
Esempio n. 3
0
        public void GetIgnoresTests(string property)
        {
            var dic = new Dictionary <string, string>
            {
                { property, "stuff" },
            };
            var configurationBuilder = new ConfigurationBuilder();

            configurationBuilder.AddInMemoryCollection(dic);
            var config = configurationBuilder.Build();

            var options = new ComplexOptions();

            config.Bind(options);
            Assert.Null(options.GetType().GetTypeInfo().GetDeclaredProperty(property).GetValue(options));
        }