public void CreateSettingsKeyName_WithGlobalConfigKey_CreatesGlobalSettingsKey(string settingsKeyName, string siteName, string categoryName, bool useCategorySections) { var options = new CmsSettingsConfigBuilderOptions { UseCategorySections = useCategorySections }; var sut = new CmsSettingConfigKeyNameFactory(Configuration, options); var setting = new CmsSetting(settingsKeyName, string.Empty, categoryName, siteName); string configKey = sut.CreateConfigKeyName(setting); SettingsKeyName actual = sut.CreateSettingsKeyName(configKey); Assert.Multiple(() => { Assert.That(actual.KeyName, Is.EqualTo(settingsKeyName)); Assert.That(actual.SiteName, Is.Empty); Assert.IsTrue(actual.IsGlobal); }); }
public void CreateSettingsKeyName_WithKeyPrefix_RestoresPrefixWhenStripped(string siteName, string categoryName, string keyPrefix, string keyName, bool stripPrefix, bool useCategorySections) { var options = new CmsSettingsConfigBuilderOptions { UseCategorySections = useCategorySections, KeyPrefix = keyPrefix, StripPrefix = stripPrefix }; var sut = new CmsSettingConfigKeyNameFactory(Configuration, options); string settingsKeyName = $"{keyPrefix}{keyName}"; var setting = new CmsSetting(settingsKeyName, string.Empty, categoryName, siteName); string configKey = sut.CreateConfigKeyName(setting); SettingsKeyName actual = sut.CreateSettingsKeyName(configKey); Assert.That( actual.KeyName, Does.StartWith(keyPrefix) ); }
public string GetValue(string key) { try { if (string.IsNullOrEmpty(key)) { return(null); } SettingsKeyName settingsKeyName = configKeyNameFactory.CreateSettingsKeyName(key); return(SettingsKeyInfoProvider.GetValue(settingsKeyName)); } catch (Exception) { if (!options.Optional) { throw; } } return(null); }