public void Parts_Should_Contain_One_Part_Per_AppSetting() { // Arrange AppSettingsCatalog catalog = new AppSettingsCatalog(); // Act int partCount = catalog.Parts.Count(); // Assert Assert.AreEqual(ConfigurationManager.AppSettings.Count, partCount); }
public void AppSettingPart_Should_Export_KeyName_As_Contract() { // Arrange AppSettingsCatalog catalog = new AppSettingsCatalog(); // Act IQueryable<ExportDefinition> exports = catalog.Parts.Select(p => p.ExportDefinitions.Single()); // Assert EnumerableAssert.ElementsMatch(exports, ConfigurationManager.AppSettings.Keys.Cast<string>(), (export, setting) => String.Equals(export.ContractName, setting, StringComparison.OrdinalIgnoreCase)); }
public void AppSettingPart_Should_Return_SettingValue_On_Create() { // Arrange AppSettingsCatalog catalog = new AppSettingsCatalog(); // Act IQueryable<string> parts = catalog.Parts.Select(p => p.CreatePart() .GetExportedObject(p.ExportDefinitions.Single())) .Cast<string>(); // Assert EnumerableAssert.ElementsMatch(parts, ConfigurationManager.AppSettings.Keys.Cast<string>(), (part, setting) => String.Equals(part, ConfigurationManager.AppSettings[setting], StringComparison.OrdinalIgnoreCase)); }