public void SetUp() { provider = new CacheManagerSettingsManageabilityProvider(new Dictionary <Type, ConfigurationElementManageabilityProvider>(0)); machineKey = new MockRegistryKey(true); userKey = new MockRegistryKey(true); section = new CacheManagerSettings(); configurationSource = new DictionaryConfigurationSource(); configurationSource.Add(CacheManagerSettings.SectionName, section); }
public void SetUp() { provider = new CacheManagerSettingsManageabilityProvider(new Dictionary<Type, ConfigurationElementManageabilityProvider>(0)); machineKey = new MockRegistryKey(true); userKey = new MockRegistryKey(true); section = new CacheManagerSettings(); configurationSource = new DictionaryConfigurationSource(); configurationSource.Add(CacheManagerSettings.SectionName, section); }
public void ManageabilityProviderGeneratesProperAdmContent() { DictionaryConfigurationSource configurationSource = new DictionaryConfigurationSource(); configurationSource.Add(CacheManagerSettings.SectionName, section); IsolatedStorageCacheStorageData storage1, storage2; CacheManagerData manager1, manager2; StorageEncryptionProviderData encryption1; section.BackingStores.Add(storage1 = new IsolatedStorageCacheStorageData("storage1", "encryption1", "partition1")); section.CacheManagers.Add(manager1 = new CacheManagerData("manager1", 100, 200, 300, "storage1")); section.EncryptionProviders.Add(encryption1 = new StorageEncryptionProviderData("encryption1", typeof(object))); section.BackingStores.Add(storage2 = new IsolatedStorageCacheStorageData("storage2", "", "partition2")); section.CacheManagers.Add(manager2 = new CacheManagerData("manager2", 100, 200, 300, "storage2")); MockConfigurationElementManageabilityProvider subProvider = new MockConfigurationElementManageabilityProvider(); Dictionary <Type, ConfigurationElementManageabilityProvider> subProviders = new Dictionary <Type, ConfigurationElementManageabilityProvider>(); subProviders.Add(typeof(IsolatedStorageCacheStorageData), subProvider); subProviders.Add(typeof(StorageEncryptionProviderData), subProvider); provider = new CacheManagerSettingsManageabilityProvider(subProviders); MockAdmContentBuilder contentBuilder = new MockAdmContentBuilder(); provider.AddAdministrativeTemplateDirectives(contentBuilder, section, configurationSource, "TestApp"); Assert.AreEqual(3, subProvider.configurationObjects.Count); Assert.AreSame(storage1, subProvider.configurationObjects[0]); Assert.AreSame(encryption1, subProvider.configurationObjects[1]); Assert.AreSame(storage2, subProvider.configurationObjects[2]); MockAdmContent content = contentBuilder.GetMockContent(); IEnumerator <AdmCategory> categoriesEnumerator = content.Categories.GetEnumerator(); Assert.IsTrue(categoriesEnumerator.MoveNext()); IEnumerator <AdmCategory> subCategoriesEnumerator = categoriesEnumerator.Current.Categories.GetEnumerator(); Assert.IsTrue(subCategoriesEnumerator.MoveNext()); IEnumerator <AdmPolicy> cacheManagerPoliciesEnumerator = subCategoriesEnumerator.Current.Policies.GetEnumerator(); Assert.IsTrue(cacheManagerPoliciesEnumerator.MoveNext()); Assert.IsTrue(cacheManagerPoliciesEnumerator.MoveNext()); Assert.IsFalse(cacheManagerPoliciesEnumerator.MoveNext()); Assert.IsFalse(subCategoriesEnumerator.MoveNext()); IEnumerator <AdmPolicy> sectionPoliciesEnumerator = categoriesEnumerator.Current.Policies.GetEnumerator(); Assert.IsTrue(sectionPoliciesEnumerator.MoveNext()); Assert.IsFalse(sectionPoliciesEnumerator.MoveNext()); Assert.IsFalse(categoriesEnumerator.MoveNext()); }
public void RegisteredEncryptionProviderDataProviderIsCalledWithCorrectOverrides() { MockConfigurationElementManageabilityProvider registeredProvider = new MockConfigurationElementManageabilityProvider(); Dictionary <Type, ConfigurationElementManageabilityProvider> subProviders = new Dictionary <Type, ConfigurationElementManageabilityProvider>(); subProviders.Add(typeof(StorageEncryptionProviderData), registeredProvider); provider = new CacheManagerSettingsManageabilityProvider(subProviders); StorageEncryptionProviderData data = new StorageEncryptionProviderData("encryptionprovider1", typeof(Object)); section.EncryptionProviders.Add(data); MockRegistryKey machineEncryptionProvidersKey = new MockRegistryKey(false); machineKey.AddSubKey(CacheManagerSettingsManageabilityProvider.EncryptionProvidersKeyName, machineEncryptionProvidersKey); MockRegistryKey machineEncryptionProviderKey = new MockRegistryKey(false); machineEncryptionProvidersKey.AddSubKey("encryptionprovider1", machineEncryptionProviderKey); MockRegistryKey machineOtherEncryptionProviderKey = new MockRegistryKey(false); machineEncryptionProvidersKey.AddSubKey("encryptionprovider2", machineOtherEncryptionProviderKey); MockRegistryKey userEncryptionProvidersKey = new MockRegistryKey(false); userKey.AddSubKey(CacheManagerSettingsManageabilityProvider.EncryptionProvidersKeyName, userEncryptionProvidersKey); MockRegistryKey userEncryptionProviderKey = new MockRegistryKey(false); userEncryptionProvidersKey.AddSubKey("encryptionprovider1", userEncryptionProviderKey); MockRegistryKey userOtherEncryptionProviderKey = new MockRegistryKey(false); userEncryptionProvidersKey.AddSubKey("encryptionprovider2", userOtherEncryptionProviderKey); provider.OverrideWithGroupPolicies(section, true, machineKey, userKey); Assert.IsTrue(registeredProvider.called); Assert.AreSame(data, registeredProvider.LastConfigurationObject); Assert.AreEqual(machineEncryptionProviderKey, registeredProvider.machineKey); Assert.AreEqual(userEncryptionProviderKey, registeredProvider.userKey); Assert.IsTrue( MockRegistryKey.CheckAllClosed(machineEncryptionProvidersKey, machineEncryptionProviderKey, machineOtherEncryptionProviderKey, userEncryptionProvidersKey, userEncryptionProviderKey, userOtherEncryptionProviderKey)); }
public void RegisteredEncryptionProviderDataProviderIsCalledWithNoOverrides() { MockConfigurationElementManageabilityProvider registeredProvider = new MockConfigurationElementManageabilityProvider(); Dictionary <Type, ConfigurationElementManageabilityProvider> subProviders = new Dictionary <Type, ConfigurationElementManageabilityProvider>(); subProviders.Add(typeof(StorageEncryptionProviderData), registeredProvider); provider = new CacheManagerSettingsManageabilityProvider(subProviders); StorageEncryptionProviderData data = new StorageEncryptionProviderData("encryptionprovider1", typeof(Object)); section.EncryptionProviders.Add(data); provider.OverrideWithGroupPolicies(section, true, machineKey, userKey); Assert.IsTrue(registeredProvider.called); Assert.AreSame(data, registeredProvider.LastConfigurationObject); Assert.AreEqual(null, registeredProvider.machineKey); Assert.AreEqual(null, registeredProvider.userKey); }
public void ManageabilityProviderGeneratesProperAdmContent() { DictionaryConfigurationSource configurationSource = new DictionaryConfigurationSource(); configurationSource.Add(CacheManagerSettings.SectionName, section); IsolatedStorageCacheStorageData storage1, storage2; CacheManagerData manager1, manager2; StorageEncryptionProviderData encryption1; section.BackingStores.Add(storage1 = new IsolatedStorageCacheStorageData("storage1", "encryption1", "partition1")); section.CacheManagers.Add(manager1 = new CacheManagerData("manager1", 100, 200, 300, "storage1")); section.EncryptionProviders.Add(encryption1 = new StorageEncryptionProviderData("encryption1", typeof(object))); section.BackingStores.Add(storage2 = new IsolatedStorageCacheStorageData("storage2", "", "partition2")); section.CacheManagers.Add(manager2 = new CacheManagerData("manager2", 100, 200, 300, "storage2")); MockConfigurationElementManageabilityProvider subProvider = new MockConfigurationElementManageabilityProvider(); Dictionary<Type, ConfigurationElementManageabilityProvider> subProviders = new Dictionary<Type, ConfigurationElementManageabilityProvider>(); subProviders.Add(typeof(IsolatedStorageCacheStorageData), subProvider); subProviders.Add(typeof(StorageEncryptionProviderData), subProvider); provider = new CacheManagerSettingsManageabilityProvider(subProviders); MockAdmContentBuilder contentBuilder = new MockAdmContentBuilder(); provider.AddAdministrativeTemplateDirectives(contentBuilder, section, configurationSource, "TestApp"); Assert.AreEqual(3, subProvider.configurationObjects.Count); Assert.AreSame(storage1, subProvider.configurationObjects[0]); Assert.AreSame(encryption1, subProvider.configurationObjects[1]); Assert.AreSame(storage2, subProvider.configurationObjects[2]); MockAdmContent content = contentBuilder.GetMockContent(); IEnumerator<AdmCategory> categoriesEnumerator = content.Categories.GetEnumerator(); Assert.IsTrue(categoriesEnumerator.MoveNext()); IEnumerator<AdmCategory> subCategoriesEnumerator = categoriesEnumerator.Current.Categories.GetEnumerator(); Assert.IsTrue(subCategoriesEnumerator.MoveNext()); IEnumerator<AdmPolicy> cacheManagerPoliciesEnumerator = subCategoriesEnumerator.Current.Policies.GetEnumerator(); Assert.IsTrue(cacheManagerPoliciesEnumerator.MoveNext()); Assert.IsTrue(cacheManagerPoliciesEnumerator.MoveNext()); Assert.IsFalse(cacheManagerPoliciesEnumerator.MoveNext()); Assert.IsFalse(subCategoriesEnumerator.MoveNext()); IEnumerator<AdmPolicy> sectionPoliciesEnumerator = categoriesEnumerator.Current.Policies.GetEnumerator(); Assert.IsTrue(sectionPoliciesEnumerator.MoveNext()); Assert.IsFalse(sectionPoliciesEnumerator.MoveNext()); Assert.IsFalse(categoriesEnumerator.MoveNext()); }
public void RegisteredEncryptionProviderDataProviderIsCalledWithCorrectOverrides() { MockConfigurationElementManageabilityProvider registeredProvider = new MockConfigurationElementManageabilityProvider(); Dictionary<Type, ConfigurationElementManageabilityProvider> subProviders = new Dictionary<Type, ConfigurationElementManageabilityProvider>(); subProviders.Add(typeof(StorageEncryptionProviderData), registeredProvider); provider = new CacheManagerSettingsManageabilityProvider(subProviders); StorageEncryptionProviderData data = new StorageEncryptionProviderData("encryptionprovider1", typeof(Object)); section.EncryptionProviders.Add(data); MockRegistryKey machineEncryptionProvidersKey = new MockRegistryKey(false); machineKey.AddSubKey(CacheManagerSettingsManageabilityProvider.EncryptionProvidersKeyName, machineEncryptionProvidersKey); MockRegistryKey machineEncryptionProviderKey = new MockRegistryKey(false); machineEncryptionProvidersKey.AddSubKey("encryptionprovider1", machineEncryptionProviderKey); MockRegistryKey machineOtherEncryptionProviderKey = new MockRegistryKey(false); machineEncryptionProvidersKey.AddSubKey("encryptionprovider2", machineOtherEncryptionProviderKey); MockRegistryKey userEncryptionProvidersKey = new MockRegistryKey(false); userKey.AddSubKey(CacheManagerSettingsManageabilityProvider.EncryptionProvidersKeyName, userEncryptionProvidersKey); MockRegistryKey userEncryptionProviderKey = new MockRegistryKey(false); userEncryptionProvidersKey.AddSubKey("encryptionprovider1", userEncryptionProviderKey); MockRegistryKey userOtherEncryptionProviderKey = new MockRegistryKey(false); userEncryptionProvidersKey.AddSubKey("encryptionprovider2", userOtherEncryptionProviderKey); provider.OverrideWithGroupPolicies(section, true, machineKey, userKey); Assert.IsTrue(registeredProvider.called); Assert.AreSame(data, registeredProvider.LastConfigurationObject); Assert.AreEqual(machineEncryptionProviderKey, registeredProvider.machineKey); Assert.AreEqual(userEncryptionProviderKey, registeredProvider.userKey); Assert.IsTrue( MockRegistryKey.CheckAllClosed(machineEncryptionProvidersKey, machineEncryptionProviderKey, machineOtherEncryptionProviderKey, userEncryptionProvidersKey, userEncryptionProviderKey, userOtherEncryptionProviderKey)); }
public void RegisteredEncryptionProviderDataProviderIsCalledWithNoOverrides() { MockConfigurationElementManageabilityProvider registeredProvider = new MockConfigurationElementManageabilityProvider(); Dictionary<Type, ConfigurationElementManageabilityProvider> subProviders = new Dictionary<Type, ConfigurationElementManageabilityProvider>(); subProviders.Add(typeof(StorageEncryptionProviderData), registeredProvider); provider = new CacheManagerSettingsManageabilityProvider(subProviders); StorageEncryptionProviderData data = new StorageEncryptionProviderData("encryptionprovider1", typeof(Object)); section.EncryptionProviders.Add(data); provider.OverrideWithGroupPolicies(section, true, machineKey, userKey); Assert.IsTrue(registeredProvider.called); Assert.AreSame(data, registeredProvider.LastConfigurationObject); Assert.AreEqual(null, registeredProvider.machineKey); Assert.AreEqual(null, registeredProvider.userKey); }