コード例 #1
0
        public async Task GetSettingValueNotExistingShouldReturnNull(
            TestAppConfigSettingsSource source)
        {
            var settingValue = await source.GetSetting("Foo");

            Assert.Null(settingValue);
        }
コード例 #2
0
        public async Task NoAliasReturnsUnderlyingSettingValue(
            TestAppConfigSettingsSource wrappedSource)
        {
            var source       = new AliasSettingsSource(wrappedSource);
            var settingValue = await source.GetSetting("Logging:Enabled");

            Assert.Equal("true", settingValue);
        }
コード例 #3
0
        public async Task GetSettingValueExistingShouldReturnValue(
            TestAppConfigSettingsSource source,
            SettingsServiceBuilder serviceBuilder)
        {
            var service      = serviceBuilder.WithSource(source).Build();
            var settingValue = await service.GetSettingValue("Logging:Enabled", false);

            Assert.True(settingValue);
        }
コード例 #4
0
        public async Task GetSettingsExistingAsObjectShouldReturnObject(
            TestAppConfigSettingsSource source,
            SettingsServiceBuilder serviceBuilder)
        {
            var service = serviceBuilder.WithSource(source).Build();
            var expectedLoggingSettings = new { Enabled = true, IncludeDetail = true };
            var loggingSettings         = await service.GetSettings(typeof(LoggingSettings));

            loggingSettings.Should().BeEquivalentTo(expectedLoggingSettings);
        }
コード例 #5
0
        public async Task GetSettingValueNotExistingShouldReturnDefault(
            TestAppConfigSettingsSource source,
            SettingsServiceBuilder serviceBuilder,
            string defaultValue)
        {
            var service      = serviceBuilder.WithSource(source).Build();
            var settingValue = await service.GetSettingValue("UnexistingSetting", defaultValue);

            Assert.Equal(defaultValue, settingValue);
        }
コード例 #6
0
        public void DuplicateAliasThrowsException(
            TestAppConfigSettingsSource wrappedSource,
            string alias,
            List <string> keys)
        {
            var source = new AliasSettingsSource(wrappedSource);

            source.RegisterAlias(alias, keys);

            Assert.Throws <InvalidOperationException>(
                () => source.RegisterAlias(alias, keys));
        }
コード例 #7
0
        public async Task GetSettingsExistingShouldReturnPopulatedType(
            TestAppConfigSettingsSource source,
            SettingsServiceBuilder serviceBuilder)
        {
            var service = serviceBuilder.WithSource(source).Build();
            var expectedLoggingSettings = new LoggingSettings {
                Enabled = true, IncludeDetail = true
            };
            var loggingSettings = await service.GetSettings <LoggingSettings>();

            loggingSettings.Should().BeEquivalentTo(expectedLoggingSettings);
        }
コード例 #8
0
        public async Task AliasReturnsNullWhenAllKeysReturnNull(
            TestAppConfigSettingsSource wrappedSource,
            string alias,
            List <string> keys)
        {
            var source = new AliasSettingsSource(wrappedSource);

            source.RegisterAlias(alias, new List <string> {
                "baz", "bar"
            });

            var settingValue = await source.GetSetting(alias);

            Assert.Null(settingValue);
        }
コード例 #9
0
        public async Task AliasReturnsSecondKeyValueWhenFirstKeyValueReturnsNull(
            TestAppConfigSettingsSource wrappedSource,
            string alias,
            List <string> keys)
        {
            var source = new AliasSettingsSource(wrappedSource);

            source.RegisterAlias(alias, new List <string> {
                "baz", "Logging:Enabled"
            });

            var settingValue = await source.GetSetting(alias);

            Assert.Equal("true", settingValue);
        }