public void BindCanSetNonPublicWhenSet(string property) { var dic = new Dictionary <string, string> { { property, "stuff" }, }; var configManager = new ConfigurationManagerFixture() .WithAppSettings(dic) .Build(); var config = new AppConfiguration(configManager); var options = new ComplexOptions(); config.Bind(options, o => o.BindNonPublicProperties = true); Assert.That("stuff", Is.EqualTo(options.GetType().GetTypeInfo().GetDeclaredProperty(property).GetValue(options))); }
public void NonPublicModeBindStillIgnoresReadonly(string property) { var dic = new Dictionary <string, string> { { property, "stuff" }, }; var configManager = new ConfigurationManagerFixture() .WithAppSettings(dic) .Build(); var config = new AppConfiguration(configManager); var options = new ComplexOptions(); config.Bind(options, o => o.BindNonPublicProperties = true); Assert.That(options.GetType().GetTypeInfo().GetDeclaredProperty(property).GetValue(options), Is.Null); }
public void BindIgnoresTests(string property) { var dic = new Dictionary <string, string> { { property, "stuff" }, }; var configManager = new ConfigurationManagerFixture() .WithAppSettings(dic) .Build(); var config = new AppConfiguration(configManager); var options = new ComplexOptions(); config.Bind(options); Assert.That(options.GetType().GetTypeInfo().GetDeclaredProperty(property).GetValue(options), Is.Null); }