public void GlobalSettinsConfigureCorrectly() { var appsettings = new Dictionary <string, string>() { ["management:endpoints:enabled"] = "false", ["management:endpoints:sensitive"] = "true", ["management:endpoints:path"] = "/management", ["management:endpoints:info:id"] = "infomanagement" }; ConfigurationBuilder configurationBuilder = new ConfigurationBuilder(); configurationBuilder.AddInMemoryCollection(appsettings); var config = configurationBuilder.Build(); TestOptions2 opts = new TestOptions2("management:endpoints:info", config); Assert.NotNull(opts.Global); Assert.False(opts.Global.Enabled); Assert.True(opts.Global.Sensitive); Assert.Equal("/management", opts.Global.Path); Assert.False(opts.Enabled); Assert.True(opts.Sensitive); Assert.Equal("infomanagement", opts.Id); Assert.Equal("/management/infomanagement", opts.Path); }
public void CanSetEnable() { TestOptions2 opt2 = new TestOptions2() { Enabled = false, }; Assert.False(opt2.Enabled); }
public void InitializedWithDefaults() { TestOptions2 opts = new TestOptions2(); Assert.True(opts.Enabled); Assert.NotNull(opts.Global); Assert.False(opts.Global.Enabled.HasValue); Assert.Equal("/", opts.Global.Path); Assert.Equal(Permissions.UNDEFINED, opts.RequiredPermissions); }
public void CanSetEnableSensitive() { TestOptions2 opt2 = new TestOptions2() { Enabled = false, Sensitive = true }; Assert.False(opt2.Enabled); Assert.True(opt2.Sensitive); }
public void BindsConfigurationCorrectly() { var appsettings = @" { 'management': { 'endpoints': { 'enabled': false, 'sensitive': true, 'path': '/management', 'info' : { 'enabled': true, 'sensitive': false, 'id': 'infomanagement', 'requiredPermissions': 'NONE' } } } }"; var path = TestHelpers.CreateTempFile(appsettings); string directory = Path.GetDirectoryName(path); string fileName = Path.GetFileName(path); ConfigurationBuilder configurationBuilder = new ConfigurationBuilder(); configurationBuilder.SetBasePath(directory); configurationBuilder.AddJsonFile(fileName); var config = configurationBuilder.Build(); TestOptions2 opts = new TestOptions2("management:endpoints:info", config); Assert.NotNull(opts.Global); Assert.False(opts.Global.Enabled); Assert.True(opts.Global.Sensitive); Assert.Equal("/management", opts.Global.Path); Assert.True(opts.Enabled); Assert.False(opts.Sensitive); Assert.Equal("infomanagement", opts.Id); Assert.Equal("/management/infomanagement", opts.Path); Assert.Equal(Permissions.NONE, opts.RequiredPermissions); }
public void BindsConfigurationCorrectly() { var appsettings = new Dictionary <string, string>() { ["management:endpoints:enabled"] = "false", ["management:endpoints:path"] = "/management", ["management:endpoints:info:enabled"] = "true", ["management:endpoints:info:id"] = "infomanagement", ["management:endpoints:info:requiredPermissions"] = "NONE" }; ConfigurationBuilder configurationBuilder = new ConfigurationBuilder(); configurationBuilder.AddInMemoryCollection(appsettings); var config = configurationBuilder.Build(); TestOptions2 opts = new TestOptions2("management:endpoints:info", config); Assert.True(opts.Enabled); Assert.Equal("infomanagement", opts.Id); Assert.Equal("/management/infomanagement", opts.Path); Assert.Equal(Permissions.NONE, opts.RequiredPermissions); }
public void IsAccessAllowed_ReturnsExpected() { TestOptions2 opt1 = new TestOptions2(); Assert.True(opt1.IsAccessAllowed(Permissions.FULL)); Assert.True(opt1.IsAccessAllowed(Permissions.RESTRICTED)); Assert.True(opt1.IsAccessAllowed(Permissions.NONE)); TestOptions2 opt2 = new TestOptions2() { RequiredPermissions = Permissions.NONE }; Assert.True(opt2.IsAccessAllowed(Permissions.FULL)); Assert.True(opt2.IsAccessAllowed(Permissions.RESTRICTED)); Assert.True(opt2.IsAccessAllowed(Permissions.NONE)); Assert.False(opt2.IsAccessAllowed(Permissions.UNDEFINED)); TestOptions2 opt3 = new TestOptions2() { RequiredPermissions = Permissions.RESTRICTED }; Assert.True(opt3.IsAccessAllowed(Permissions.FULL)); Assert.True(opt3.IsAccessAllowed(Permissions.RESTRICTED)); Assert.False(opt3.IsAccessAllowed(Permissions.NONE)); Assert.False(opt3.IsAccessAllowed(Permissions.UNDEFINED)); TestOptions2 opt4 = new TestOptions2() { RequiredPermissions = Permissions.FULL }; Assert.True(opt4.IsAccessAllowed(Permissions.FULL)); Assert.False(opt4.IsAccessAllowed(Permissions.RESTRICTED)); Assert.False(opt4.IsAccessAllowed(Permissions.NONE)); Assert.False(opt4.IsAccessAllowed(Permissions.UNDEFINED)); }