public void ManageabilityProviderGeneratesProperAdmContent() { configurationObject.PropertyMappings.Add(new FaultContractExceptionHandlerMappingData("name1", "value1")); configurationObject.PropertyMappings.Add(new FaultContractExceptionHandlerMappingData("name2", "value2")); configurationObject.ExceptionMessage = "message"; configurationObject.FaultContractType = "fault contract"; DictionaryConfigurationSource configurationSource = new DictionaryConfigurationSource(); MockAdmContentBuilder contentBuilder = new MockAdmContentBuilder(); contentBuilder.StartCategory("category"); contentBuilder.StartPolicy("policy", "policy key"); provider.InvokeAddAdministrativeTemplateDirectives(contentBuilder, configurationObject, configurationSource, "TestApp"); contentBuilder.EndPolicy(); contentBuilder.EndCategory(); MockAdmContent content = contentBuilder.GetMockContent(); IEnumerator <AdmCategory> categoriesEnumerator = content.Categories.GetEnumerator(); categoriesEnumerator.MoveNext(); IEnumerator <AdmPolicy> policiesEnumerator = categoriesEnumerator.Current.Policies.GetEnumerator(); policiesEnumerator.MoveNext(); IEnumerator <AdmPart> partsEnumerator = policiesEnumerator.Current.Parts.GetEnumerator(); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmTextPart), partsEnumerator.Current.GetType()); Assert.AreEqual(String.Format(Resources.HandlerPartNameTemplate, configurationObject.Name), partsEnumerator.Current.PartName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmEditTextPart), partsEnumerator.Current.GetType()); Assert.AreEqual(Resources.FaultContractExceptionHandlerExceptionMessagePartName, partsEnumerator.Current.PartName); Assert.IsNotNull(partsEnumerator.Current.KeyName); Assert.AreEqual(FaultContractExceptionHandlerDataManageabilityProvider.ExceptionMessagePropertyName, partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmEditTextPart), partsEnumerator.Current.GetType()); Assert.AreEqual(Resources.FaultContractExceptionHandlerFaultContractTypePartName, partsEnumerator.Current.PartName); Assert.IsNotNull(partsEnumerator.Current.KeyName); Assert.AreEqual(FaultContractExceptionHandlerDataManageabilityProvider.FaultContractTypePropertyName, partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmEditTextPart), partsEnumerator.Current.GetType()); Assert.AreEqual(Resources.FaultContractExceptionHandlerAttributesPartName, partsEnumerator.Current.PartName); Assert.AreEqual(FaultContractExceptionHandlerDataManageabilityProvider.AttributesPropertyName, partsEnumerator.Current.ValueName); Assert.IsNotNull(((AdmEditTextPart)partsEnumerator.Current).KeyName); IDictionary <String, String> attributes = new Dictionary <String, String>(); KeyValuePairParser.ExtractKeyValueEntries(((AdmEditTextPart)partsEnumerator.Current).DefaultValue, attributes); Assert.AreEqual(2, attributes.Count); Assert.AreEqual("value1", attributes["name1"]); Assert.AreEqual("value2", attributes["name2"]); Assert.IsFalse(partsEnumerator.MoveNext()); }
public void ManageabilityProviderGeneratesProperAdmContentWithMultiLineTemplate() { DictionaryConfigurationSource configurationSource = new DictionaryConfigurationSource(); configurationObject.Template = "multi\nline\r\ntem\\plate"; MockAdmContentBuilder contentBuilder = new MockAdmContentBuilder(); contentBuilder.StartCategory("category"); provider.AddAdministrativeTemplateDirectives(contentBuilder, configurationObject, configurationSource, "TestApp"); contentBuilder.EndCategory(); MockAdmContent content = contentBuilder.GetMockContent(); IEnumerator <AdmCategory> categoriesEnumerator = content.Categories.GetEnumerator(); categoriesEnumerator.MoveNext(); IEnumerator <AdmPolicy> policiesEnumerator = categoriesEnumerator.Current.Policies.GetEnumerator(); Assert.IsTrue(policiesEnumerator.MoveNext()); IEnumerator <AdmPart> partsEnumerator = policiesEnumerator.Current.Parts.GetEnumerator(); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmEditTextPart), partsEnumerator.Current.GetType()); Assert.IsNull(partsEnumerator.Current.KeyName); Assert.AreEqual(TextFormatterDataManageabilityProvider.TemplatePropertyName, partsEnumerator.Current.ValueName); // TODO resolve bug 163 //Assert.AreEqual(@"multi\nline\r\ntem\\plate", ((AdmEditTextPart)partsEnumerator.Current).DefaultValue); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.IsFalse(partsEnumerator.MoveNext()); Assert.IsFalse(policiesEnumerator.MoveNext()); }
public void ManageabilityProviderGeneratesProperAdmContentWithRegisteredProviders() { DictionaryConfigurationSource configurationSource = new DictionaryConfigurationSource(); configurationSource.Add(ExceptionHandlingSettings.SectionName, section); ExceptionPolicyData policy1 = new ExceptionPolicyData("policy1"); section.ExceptionPolicies.Add(policy1); ExceptionTypeData exceptionType11 = new ExceptionTypeData("type11", typeof(Exception), PostHandlingAction.None); policy1.ExceptionTypes.Add(exceptionType11); ExceptionHandlerData handler11 = new ExceptionHandlerData("handler11", typeof(object)); exceptionType11.ExceptionHandlers.Add(handler11); MockConfigurationElementManageabilityProvider subProvider = new MockConfigurationElementManageabilityProvider(false, true); Dictionary <Type, ConfigurationElementManageabilityProvider> subProviders = new Dictionary <Type, ConfigurationElementManageabilityProvider>(); subProviders.Add(typeof(ExceptionHandlerData), subProvider); provider = new ConfigurationSectionManageabilityProviderWrapper(new ExceptionHandlingSettingsManageabilityProvider(subProviders)); MockAdmContentBuilder contentBuilder = new MockAdmContentBuilder(); provider.InvokeAddAdministrativeTemplateDirectives(contentBuilder, section, configurationSource, "TestApp"); MockAdmContent content = contentBuilder.GetMockContent(); IEnumerator <AdmCategory> categoriesEnumerator = content.Categories.GetEnumerator(); Assert.IsTrue(categoriesEnumerator.MoveNext()); Assert.AreEqual(Resources.SectionCategoryName, categoriesEnumerator.Current.Name); IEnumerator <AdmCategory> subCategoriesEnumerator = categoriesEnumerator.Current.Categories.GetEnumerator(); Assert.IsTrue(subCategoriesEnumerator.MoveNext()); Assert.AreEqual(policy1.Name, subCategoriesEnumerator.Current.Name); IEnumerator <AdmPolicy> policyPoliciesEnumerator = subCategoriesEnumerator.Current.Policies.GetEnumerator(); Assert.IsTrue(policyPoliciesEnumerator.MoveNext()); Assert.AreEqual(String.Format(Resources.ExceptionTypePolicyNameTemplate, exceptionType11.Name), policyPoliciesEnumerator.Current.Name); IEnumerator <AdmPart> partsEnumerator = policyPoliciesEnumerator.Current.Parts.GetEnumerator(); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmDropDownListPart), partsEnumerator.Current.GetType()); Assert.IsNull(partsEnumerator.Current.KeyName); Assert.AreEqual(ExceptionHandlingSettingsManageabilityProvider.PolicyTypePostHandlingActionPropertyName, partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmTextPart), partsEnumerator.Current.GetType()); Assert.AreEqual(Resources.ExceptionTypeHandlersPartName, partsEnumerator.Current.PartName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmTextPart), partsEnumerator.Current.GetType()); Assert.AreEqual(MockConfigurationElementManageabilityProvider.Part, partsEnumerator.Current.PartName); Assert.IsFalse(partsEnumerator.MoveNext()); Assert.IsFalse(policyPoliciesEnumerator.MoveNext()); Assert.IsFalse(subCategoriesEnumerator.MoveNext()); Assert.IsFalse(categoriesEnumerator.MoveNext()); }
public void ManageabilityProviderGeneratesProperAdmContent() { DictionaryConfigurationSource configurationSource = new DictionaryConfigurationSource(); MockAdmContentBuilder contentBuilder = new MockAdmContentBuilder(); configurationObject.Type = typeof(Object); contentBuilder.StartCategory("category"); contentBuilder.StartPolicy("policy", "policy key"); provider.InvokeAddAdministrativeTemplateDirectives(contentBuilder, configurationObject, configurationSource, "TestApp"); contentBuilder.EndPolicy(); contentBuilder.EndCategory(); MockAdmContent content = contentBuilder.GetMockContent(); IEnumerator <AdmCategory> categoriesEnumerator = content.Categories.GetEnumerator(); categoriesEnumerator.MoveNext(); IEnumerator <AdmPolicy> policiesEnumerator = categoriesEnumerator.Current.Policies.GetEnumerator(); policiesEnumerator.MoveNext(); IEnumerator <AdmPart> partsEnumerator = policiesEnumerator.Current.Parts.GetEnumerator(); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmEditTextPart), partsEnumerator.Current.GetType()); Assert.IsNotNull(((AdmEditTextPart)partsEnumerator.Current).KeyName); Assert.AreEqual(IsolatedStorageCacheStorageDataManageabilityProvider.PartitionNamePropertyName, ((AdmEditTextPart)partsEnumerator.Current).ValueName); Assert.IsFalse(partsEnumerator.MoveNext()); }
public void ManageabilityProviderGeneratesProperAdmContentWithUnknownCacheManager() { DictionaryConfigurationSource configurationSource = new DictionaryConfigurationSource(); configurationSource.Add(CacheManagerSettings.SectionName, section); MockCacheManagerData manager1, manager2; section.CacheManagers.Add(manager1 = new MockCacheManagerData("manager1", typeof(object))); section.CacheManagers.Add(manager2 = new MockCacheManagerData("manager2", typeof(object))); MockAdmContentBuilder contentBuilder = new MockAdmContentBuilder(); provider.AddAdministrativeTemplateDirectives(contentBuilder, section, configurationSource, "TestApp"); 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 ManageabilityProviderGeneratesProperAdmContent() { DictionaryConfigurationSource configurationSource = new DictionaryConfigurationSource(); MockAdmContentBuilder contentBuilder = new MockAdmContentBuilder(); configurationObject.Type = typeof(Object); contentBuilder.StartCategory("category"); contentBuilder.StartPolicy("policy", "policy key"); provider.AddAdministrativeTemplateDirectives(contentBuilder, configurationObject, configurationSource, "TestApp"); contentBuilder.EndPolicy(); contentBuilder.EndCategory(); MockAdmContent content = contentBuilder.GetMockContent(); IEnumerator <AdmCategory> categoriesEnumerator = content.Categories.GetEnumerator(); categoriesEnumerator.MoveNext(); IEnumerator <AdmPolicy> policiesEnumerator = categoriesEnumerator.Current.Policies.GetEnumerator(); policiesEnumerator.MoveNext(); IEnumerator <AdmPart> partsEnumerator = policiesEnumerator.Current.Parts.GetEnumerator(); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmTextPart), partsEnumerator.Current.GetType()); Assert.IsFalse(partsEnumerator.MoveNext()); }
public void ManageabilityProviderGeneratesProperAdmContent() { DictionaryConfigurationSource configurationSource = new DictionaryConfigurationSource(); MockAdmContentBuilder contentBuilder = new MockAdmContentBuilder(); contentBuilder.StartCategory("category"); provider.AddAdministrativeTemplateDirectives(contentBuilder, configurationObject, configurationSource, "TestApp"); contentBuilder.EndCategory(); MockAdmContent content = contentBuilder.GetMockContent(); IEnumerator <AdmCategory> categoriesEnumerator = content.Categories.GetEnumerator(); categoriesEnumerator.MoveNext(); IEnumerator <AdmPolicy> policiesEnumerator = categoriesEnumerator.Current.Policies.GetEnumerator(); Assert.IsTrue(policiesEnumerator.MoveNext()); IEnumerator <AdmPart> partsEnumerator = policiesEnumerator.Current.Parts.GetEnumerator(); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmCheckboxPart), partsEnumerator.Current.GetType()); Assert.IsNull(partsEnumerator.Current.KeyName); Assert.AreEqual(HashAlgorithmProviderDataManageabilityProvider.SaltEnabledPropertyName, partsEnumerator.Current.ValueName); Assert.IsFalse(partsEnumerator.MoveNext()); Assert.IsFalse(policiesEnumerator.MoveNext()); }
public void ManageabilityProviderGeneratesProperAdmContent() { DictionaryConfigurationSource configurationSource = new DictionaryConfigurationSource(); configurationObject.MaximumPriority = 999999; // ADM templates do not support the default value for this property. MockAdmContentBuilder contentBuilder = new MockAdmContentBuilder(); contentBuilder.StartCategory("category"); provider.AddAdministrativeTemplateDirectives(contentBuilder, configurationObject, configurationSource, "TestApp"); contentBuilder.EndCategory(); MockAdmContent content = contentBuilder.GetMockContent(); IEnumerator<AdmCategory> categoriesEnumerator = content.Categories.GetEnumerator(); categoriesEnumerator.MoveNext(); IEnumerator<AdmPolicy> policiesEnumerator = categoriesEnumerator.Current.Policies.GetEnumerator(); Assert.IsTrue(policiesEnumerator.MoveNext()); IEnumerator<AdmPart> partsEnumerator = policiesEnumerator.Current.Parts.GetEnumerator(); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmNumericPart), partsEnumerator.Current.GetType()); Assert.IsNull(partsEnumerator.Current.KeyName); Assert.AreEqual(PriorityFilterDataManageabilityProvider.MaximumPriorityPropertyName, partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmNumericPart), partsEnumerator.Current.GetType()); Assert.IsNull(partsEnumerator.Current.KeyName); Assert.AreEqual(PriorityFilterDataManageabilityProvider.MinimumPriorityPropertyName, partsEnumerator.Current.ValueName); Assert.IsFalse(partsEnumerator.MoveNext()); Assert.IsFalse(policiesEnumerator.MoveNext()); }
public void ManageabilityProviderGeneratesProperAdmContent() { DictionaryConfigurationSource configurationSource = new DictionaryConfigurationSource(); LoggingSettings section = new LoggingSettings(); configurationSource.Add(LoggingSettings.SectionName, section); MockAdmContentBuilder contentBuilder = new MockAdmContentBuilder(); contentBuilder.StartCategory("category"); provider.InvokeAddAdministrativeTemplateDirectives(contentBuilder, configurationObject, configurationSource, "TestApp"); contentBuilder.EndCategory(); MockAdmContent content = contentBuilder.GetMockContent(); IEnumerator <AdmCategory> categoriesEnumerator = content.Categories.GetEnumerator(); categoriesEnumerator.MoveNext(); IEnumerator <AdmPolicy> policiesEnumerator = categoriesEnumerator.Current.Policies.GetEnumerator(); Assert.IsTrue(policiesEnumerator.MoveNext()); Assert.AreEqual(String.Format(Resources.TraceListenerPolicyNameTemplate, configurationObject.Name), policiesEnumerator.Current.Name); IEnumerator <AdmPart> partsEnumerator = policiesEnumerator.Current.Parts.GetEnumerator(); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmDropDownListPart), partsEnumerator.Current.GetType()); Assert.IsNull(partsEnumerator.Current.KeyName); Assert.AreEqual(WmiTraceListenerDataManageabilityProvider.TraceOutputOptionsPropertyName, partsEnumerator.Current.ValueName); Assert.IsFalse(partsEnumerator.MoveNext()); Assert.IsFalse(policiesEnumerator.MoveNext()); }
public void ManageabilityProviderGeneratesProperAdmContent() { DictionaryConfigurationSource configurationSource = new DictionaryConfigurationSource(); CryptographySettings cryptographySettings = new CryptographySettings(); configurationSource.Add("securityCryptographyConfiguration", cryptographySettings); MockAdmContentBuilder contentBuilder = new MockAdmContentBuilder(); contentBuilder.StartCategory("category"); contentBuilder.StartPolicy("policy", "policy key"); provider.InvokeAddAdministrativeTemplateDirectives(contentBuilder, configurationObject, configurationSource, "TestApp"); contentBuilder.EndPolicy(); contentBuilder.EndCategory(); MockAdmContent content = contentBuilder.GetMockContent(); IEnumerator <AdmCategory> categoriesEnumerator = content.Categories.GetEnumerator(); categoriesEnumerator.MoveNext(); IEnumerator <AdmPolicy> policiesEnumerator = categoriesEnumerator.Current.Policies.GetEnumerator(); policiesEnumerator.MoveNext(); IEnumerator <AdmPart> partsEnumerator = policiesEnumerator.Current.Parts.GetEnumerator(); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmDropDownListPart), partsEnumerator.Current.GetType()); Assert.IsNotNull(partsEnumerator.Current.KeyName); Assert.AreEqual(SymmetricStorageEncryptionProviderDataManageabilityProvider.SymmetricInstancePropertyName, partsEnumerator.Current.ValueName); Assert.AreEqual(Resources.SymmetricStorageEncryptionProviderSymmetricInstancePartName, partsEnumerator.Current.PartName); Assert.IsFalse(partsEnumerator.MoveNext()); }
public void ManageabilityProviderGeneratesProperAdmContent() { DictionaryConfigurationSource configurationSource = new DictionaryConfigurationSource(); configurationObject.Type = typeof(object); MockAdmContentBuilder contentBuilder = new MockAdmContentBuilder(); contentBuilder.StartCategory("category"); provider.InvokeAddAdministrativeTemplateDirectives(contentBuilder, configurationObject, configurationSource, "TestApp"); contentBuilder.EndCategory(); MockAdmContent content = contentBuilder.GetMockContent(); IEnumerator <AdmCategory> categoriesEnumerator = content.Categories.GetEnumerator(); categoriesEnumerator.MoveNext(); IEnumerator <AdmPolicy> policiesEnumerator = categoriesEnumerator.Current.Policies.GetEnumerator(); Assert.IsTrue(policiesEnumerator.MoveNext()); Assert.AreEqual(String.Format(Resources.AuthorizationProviderPolicyNameTemplate, configurationObject.Name), policiesEnumerator.Current.Name); IEnumerator <AdmPart> partsEnumerator = policiesEnumerator.Current.Parts.GetEnumerator(); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmEditTextPart), partsEnumerator.Current.GetType()); Assert.IsNull(((AdmEditTextPart)partsEnumerator.Current).KeyName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmEditTextPart), partsEnumerator.Current.GetType()); Assert.IsNull(((AdmEditTextPart)partsEnumerator.Current).KeyName); Assert.IsFalse(partsEnumerator.MoveNext()); Assert.IsFalse(policiesEnumerator.MoveNext()); }
public void ManageabilityProviderGeneratesProperAdmContent() { DictionaryConfigurationSource configurationSource = new DictionaryConfigurationSource(); OracleConnectionData data1 = new OracleConnectionData(); section.OracleConnectionsData.Add(data1); data1.Name = "data1"; data1.Packages.Add(new OraclePackageData("name1", "prefix1")); data1.Packages.Add(new OraclePackageData("name2", "pre;fix2")); OracleConnectionData data2 = new OracleConnectionData(); section.OracleConnectionsData.Add(data2); data2.Name = "data2"; MockAdmContentBuilder contentBuilder = new MockAdmContentBuilder(); provider.InvokeAddAdministrativeTemplateDirectives(contentBuilder, section, configurationSource, "TestApp"); MockAdmContent content = contentBuilder.GetMockContent(); IEnumerator <AdmCategory> categoriesEnumerator = content.Categories.GetEnumerator(); Assert.IsTrue(categoriesEnumerator.MoveNext()); Assert.AreEqual(Resources.DatabaseCategoryName, categoriesEnumerator.Current.Name); IEnumerator <AdmCategory> subCategoriesEnumerator = categoriesEnumerator.Current.Categories.GetEnumerator(); Assert.IsTrue(subCategoriesEnumerator.MoveNext()); Assert.AreEqual(Resources.OracleConnectionsCategoryName, subCategoriesEnumerator.Current.Name); IEnumerator <AdmPolicy> policiesEnumerator = subCategoriesEnumerator.Current.Policies.GetEnumerator(); Assert.IsTrue(policiesEnumerator.MoveNext()); Assert.AreEqual(String.Format(Resources.OracleConnectionPolicyNameTemplate, data1.Name), policiesEnumerator.Current.Name); IEnumerator <AdmPart> oracleDataPartsEnumerator = policiesEnumerator.Current.Parts.GetEnumerator(); Assert.IsTrue(oracleDataPartsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmEditTextPart), oracleDataPartsEnumerator.Current.GetType()); Assert.IsNull(oracleDataPartsEnumerator.Current.KeyName); Assert.AreEqual(OracleConnectionSettingsManageabilityProvider.PackagesPropertyName, oracleDataPartsEnumerator.Current.ValueName); Assert.AreEqual(Resources.OracleConnectionPackagesPartName, oracleDataPartsEnumerator.Current.PartName); IDictionary <String, String> packages = new Dictionary <String, String>(); KeyValuePairParser.ExtractKeyValueEntries(((AdmEditTextPart)oracleDataPartsEnumerator.Current).DefaultValue, packages); Assert.AreEqual(2, packages.Count); Assert.AreEqual("prefix1", packages["name1"]); Assert.AreEqual("pre;fix2", packages["name2"]); Assert.IsFalse(oracleDataPartsEnumerator.MoveNext()); Assert.IsTrue(policiesEnumerator.MoveNext()); Assert.IsFalse(policiesEnumerator.MoveNext()); Assert.IsFalse(subCategoriesEnumerator.MoveNext()); IEnumerator <AdmPolicy> sectionPoliciesEnumerator = categoriesEnumerator.Current.Policies.GetEnumerator(); Assert.IsFalse(sectionPoliciesEnumerator.MoveNext()); Assert.IsFalse(categoriesEnumerator.MoveNext()); }
public void ManageabilityProviderGeneratesProperAdmContent() { DictionaryConfigurationSource configurationSource = new DictionaryConfigurationSource(); configurationSource.Add(SecuritySettings.SectionName, section); AuthorizationProviderData authorization = new AuthorizationProviderData("authorization", typeof(object)); SecurityCacheProviderData security = new SecurityCacheProviderData("security", typeof(object)); section.AuthorizationProviders.Add(authorization); section.SecurityCacheProviders.Add(security); MockConfigurationElementManageabilityProvider subProvider = new MockConfigurationElementManageabilityProvider(); Dictionary <Type, ConfigurationElementManageabilityProvider> subProviders = new Dictionary <Type, ConfigurationElementManageabilityProvider>(); subProviders.Add(typeof(AuthorizationProviderData), subProvider); subProviders.Add(typeof(SecurityCacheProviderData), subProvider); provider = new ConfigurationSectionManageabilityProviderWrapper(new SecuritySettingsManageabilityProvider(subProviders)); MockAdmContentBuilder contentBuilder = new MockAdmContentBuilder(); provider.InvokeAddAdministrativeTemplateDirectives(contentBuilder, section, configurationSource, "TestApp"); Assert.AreEqual(2, subProvider.configurationObjects.Count); Assert.AreSame(authorization, subProvider.configurationObjects[0]); Assert.AreSame(security, subProvider.configurationObjects[1]); MockAdmContent content = contentBuilder.GetMockContent(); IEnumerator <AdmCategory> categoriesEnumerator = content.Categories.GetEnumerator(); Assert.IsTrue(categoriesEnumerator.MoveNext()); Assert.AreEqual(Resources.SecuritySectionCategoryName, categoriesEnumerator.Current.Name); IEnumerator <AdmCategory> subCategoriesEnumerator = categoriesEnumerator.Current.Categories.GetEnumerator(); Assert.IsTrue(subCategoriesEnumerator.MoveNext()); Assert.AreEqual(Resources.AuthorizationProvidersCategoryName, subCategoriesEnumerator.Current.Name); Assert.IsTrue(subCategoriesEnumerator.MoveNext()); Assert.AreEqual(Resources.SecurityCacheProvidersCategoryName, subCategoriesEnumerator.Current.Name); Assert.IsFalse(subCategoriesEnumerator.MoveNext()); IEnumerator <AdmPolicy> sectionPoliciesEnumerator = categoriesEnumerator.Current.Policies.GetEnumerator(); Assert.IsTrue(sectionPoliciesEnumerator.MoveNext()); Assert.AreEqual(Resources.SecuritySettingsPolicyName, sectionPoliciesEnumerator.Current.Name); IEnumerator <AdmPart> sectionPartsEnumerator = sectionPoliciesEnumerator.Current.Parts.GetEnumerator(); Assert.IsTrue(sectionPartsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmDropDownListPart), sectionPartsEnumerator.Current.GetType()); Assert.AreEqual(SecuritySettingsManageabilityProvider.DefaultAuthorizationProviderPropertyName, ((AdmDropDownListPart)sectionPartsEnumerator.Current).ValueName); Assert.IsTrue(sectionPartsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmDropDownListPart), sectionPartsEnumerator.Current.GetType()); Assert.AreEqual(SecuritySettingsManageabilityProvider.DefaultSecurityCacheProviderPropertyName, ((AdmDropDownListPart)sectionPartsEnumerator.Current).ValueName); Assert.IsFalse(sectionPartsEnumerator.MoveNext()); Assert.IsFalse(sectionPoliciesEnumerator.MoveNext()); Assert.IsFalse(categoriesEnumerator.MoveNext()); }
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 ConfigurationSectionManageabilityProviderWrapper(new CacheManagerSettingsManageabilityProvider(subProviders)); MockAdmContentBuilder contentBuilder = new MockAdmContentBuilder(); provider.InvokeAddAdministrativeTemplateDirectives(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()); Assert.AreEqual(Resources.CachingSectionCategoryName, categoriesEnumerator.Current.Name); IEnumerator <AdmCategory> subCategoriesEnumerator = categoriesEnumerator.Current.Categories.GetEnumerator(); Assert.IsTrue(subCategoriesEnumerator.MoveNext()); Assert.AreEqual(Resources.CacheManagersCategoryName, subCategoriesEnumerator.Current.Name); IEnumerator <AdmPolicy> cacheManagerPoliciesEnumerator = subCategoriesEnumerator.Current.Policies.GetEnumerator(); Assert.IsTrue(cacheManagerPoliciesEnumerator.MoveNext()); Assert.AreEqual(String.Format(Resources.CacheManagerPolicyNameTemplate, manager1.Name), cacheManagerPoliciesEnumerator.Current.Name); Assert.IsTrue(cacheManagerPoliciesEnumerator.MoveNext()); Assert.AreEqual(String.Format(Resources.CacheManagerPolicyNameTemplate, manager2.Name), cacheManagerPoliciesEnumerator.Current.Name); Assert.IsFalse(cacheManagerPoliciesEnumerator.MoveNext()); Assert.IsFalse(subCategoriesEnumerator.MoveNext()); IEnumerator <AdmPolicy> sectionPoliciesEnumerator = categoriesEnumerator.Current.Policies.GetEnumerator(); Assert.IsTrue(sectionPoliciesEnumerator.MoveNext()); Assert.AreEqual(Resources.CacheManagerSettingsPolicyName, sectionPoliciesEnumerator.Current.Name); Assert.IsFalse(sectionPoliciesEnumerator.MoveNext()); Assert.IsFalse(categoriesEnumerator.MoveNext()); }
public void ManageabilityProviderGeneratesProperAdmContent() { DictionaryConfigurationSource configurationSource = new DictionaryConfigurationSource(); configurationSource.Add("connectionStrings", section); section.ConnectionStrings.Add(new ConnectionStringSettings("cs1", "cs1")); section.ConnectionStrings.Add(new ConnectionStringSettings("cs2", "cs2")); MockAdmContentBuilder contentBuilder = new MockAdmContentBuilder(); provider.InvokeAddAdministrativeTemplateDirectives(contentBuilder, section, configurationSource, "TestApp"); MockAdmContent content = contentBuilder.GetMockContent(); IEnumerator <AdmCategory> categoriesEnumerator = content.Categories.GetEnumerator(); Assert.IsTrue(categoriesEnumerator.MoveNext()); Assert.AreEqual(Resources.DatabaseCategoryName, categoriesEnumerator.Current.Name); IEnumerator <AdmCategory> subCategoriesEnumerator = categoriesEnumerator.Current.Categories.GetEnumerator(); Assert.IsTrue(subCategoriesEnumerator.MoveNext()); Assert.AreEqual(Resources.ConnectionStringsCategoryName, subCategoriesEnumerator.Current.Name); IEnumerator <AdmPolicy> policiesEnumerator = subCategoriesEnumerator.Current.Policies.GetEnumerator(); Assert.IsTrue(policiesEnumerator.MoveNext()); Assert.AreEqual(String.Format(Resources.ConnectionStringPolicyNameTemplate, "cs1"), policiesEnumerator.Current.Name); IEnumerator <AdmPart> connectionStringPartsEnumerator = policiesEnumerator.Current.Parts.GetEnumerator(); Assert.IsTrue(connectionStringPartsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmEditTextPart), connectionStringPartsEnumerator.Current.GetType()); Assert.IsNull(connectionStringPartsEnumerator.Current.KeyName); Assert.AreEqual(ConnectionStringsManageabilityProvider.ConnectionStringPropertyName, connectionStringPartsEnumerator.Current.ValueName); Assert.AreEqual(Resources.ConnectionStringConnectionStringPartName, connectionStringPartsEnumerator.Current.PartName); Assert.IsTrue(connectionStringPartsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmComboBoxPart), connectionStringPartsEnumerator.Current.GetType()); Assert.IsNull(connectionStringPartsEnumerator.Current.KeyName); Assert.AreEqual(ConnectionStringsManageabilityProvider.ProviderNamePropertyName, connectionStringPartsEnumerator.Current.ValueName); Assert.AreEqual(Resources.ConnectionStringProviderNamePartName, connectionStringPartsEnumerator.Current.PartName); Assert.IsFalse(connectionStringPartsEnumerator.MoveNext()); Assert.IsTrue(policiesEnumerator.MoveNext()); Assert.IsFalse(policiesEnumerator.MoveNext()); // 2 connection strings -> 2 policies Assert.IsFalse(subCategoriesEnumerator.MoveNext()); IEnumerator <AdmPolicy> sectionPoliciesEnumerator = categoriesEnumerator.Current.Policies.GetEnumerator(); Assert.IsFalse(sectionPoliciesEnumerator.MoveNext()); Assert.IsFalse(categoriesEnumerator.MoveNext()); }
public void ManageabilityProviderGeneratesProperAdmContent() { DictionaryConfigurationSource configurationSource = new DictionaryConfigurationSource(); ConnectionStringsSection connectionStringsSection = new ConnectionStringsSection(); connectionStringsSection.ConnectionStrings.Add( new ConnectionStringSettings("database1", "connection1", "system.provider1")); connectionStringsSection.ConnectionStrings.Add( new ConnectionStringSettings("database2", "connection2", "system.provider2")); configurationSource.Add("connectionStrings", connectionStringsSection); section.DefaultDatabase = "database1"; section.ProviderMappings.Add(new DbProviderMapping("system.provider1", typeof(SqlDatabase))); MockAdmContentBuilder contentBuilder = new MockAdmContentBuilder(); provider.AddAdministrativeTemplateDirectives(contentBuilder, section, configurationSource, "TestApp"); 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> policiesEnumerator = subCategoriesEnumerator.Current.Policies.GetEnumerator(); Assert.IsTrue(policiesEnumerator.MoveNext()); IEnumerator <AdmPart> providerPartsEnumerator = policiesEnumerator.Current.Parts.GetEnumerator(); Assert.IsTrue(providerPartsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmComboBoxPart), providerPartsEnumerator.Current.GetType()); Assert.IsNull(providerPartsEnumerator.Current.KeyName); Assert.AreEqual(DatabaseSettingsManageabilityProvider.DatabaseTypePropertyName, providerPartsEnumerator.Current.ValueName); Assert.IsFalse(providerPartsEnumerator.MoveNext()); Assert.IsFalse(policiesEnumerator.MoveNext()); Assert.IsFalse(subCategoriesEnumerator.MoveNext()); IEnumerator <AdmPolicy> sectionPoliciesEnumerator = categoriesEnumerator.Current.Policies.GetEnumerator(); Assert.IsTrue(sectionPoliciesEnumerator.MoveNext()); IEnumerator <AdmPart> sectionPartsEnumerator = sectionPoliciesEnumerator.Current.Parts.GetEnumerator(); Assert.IsTrue(sectionPartsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmDropDownListPart), sectionPartsEnumerator.Current.GetType()); Assert.IsNull(sectionPartsEnumerator.Current.KeyName); Assert.AreEqual(DatabaseSettingsManageabilityProvider.DefaultDatabasePropertyName, sectionPartsEnumerator.Current.ValueName); Assert.IsFalse(sectionPartsEnumerator.MoveNext()); Assert.IsFalse(sectionPoliciesEnumerator.MoveNext()); Assert.IsFalse(categoriesEnumerator.MoveNext()); }
public void ManageabilityProviderGeneratesProperAdmContent() { DictionaryConfigurationSource configurationSource = new DictionaryConfigurationSource(); configurationObject.WrapExceptionType = typeof(Exception); MockAdmContentBuilder contentBuilder = new MockAdmContentBuilder(); contentBuilder.StartCategory("category"); contentBuilder.StartPolicy("policy", "policy key"); provider.AddAdministrativeTemplateDirectives(contentBuilder, configurationObject, configurationSource, "TestApp"); contentBuilder.EndPolicy(); contentBuilder.EndCategory(); MockAdmContent content = contentBuilder.GetMockContent(); IEnumerator <AdmCategory> categoriesEnumerator = content.Categories.GetEnumerator(); categoriesEnumerator.MoveNext(); IEnumerator <AdmPolicy> policiesEnumerator = categoriesEnumerator.Current.Policies.GetEnumerator(); policiesEnumerator.MoveNext(); IEnumerator <AdmPart> partsEnumerator = policiesEnumerator.Current.Parts.GetEnumerator(); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmTextPart), partsEnumerator.Current.GetType()); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmEditTextPart), partsEnumerator.Current.GetType()); Assert.IsNotNull(((AdmEditTextPart)partsEnumerator.Current).KeyName); Assert.AreEqual(WrapHandlerDataManageabilityProvider.ExceptionMessagePropertyName, partsEnumerator.Current.ValueName); Assert.IsFalse(((AdmEditTextPart)partsEnumerator.Current).Required); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmEditTextPart), partsEnumerator.Current.GetType()); Assert.IsNotNull(((AdmEditTextPart)partsEnumerator.Current).KeyName); Assert.AreEqual(WrapHandlerDataManageabilityProvider.ExceptionMessageResourceTypePropertyName, partsEnumerator.Current.ValueName); Assert.IsFalse(((AdmEditTextPart)partsEnumerator.Current).Required); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmEditTextPart), partsEnumerator.Current.GetType()); Assert.IsNotNull(((AdmEditTextPart)partsEnumerator.Current).KeyName); Assert.AreEqual(WrapHandlerDataManageabilityProvider.ExceptionMessageResourceNamePropertyName, partsEnumerator.Current.ValueName); Assert.IsFalse(((AdmEditTextPart)partsEnumerator.Current).Required); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmEditTextPart), partsEnumerator.Current.GetType()); Assert.IsNotNull(((AdmEditTextPart)partsEnumerator.Current).KeyName); Assert.AreEqual(WrapHandlerDataManageabilityProvider.WrapExceptionTypePropertyName, partsEnumerator.Current.ValueName); Assert.IsTrue(((AdmEditTextPart)partsEnumerator.Current).Required); Assert.IsFalse(partsEnumerator.MoveNext()); }
public void ManageabilityProviderGeneratesProperAdmContent() { DictionaryConfigurationSource configurationSource = new DictionaryConfigurationSource(); configurationObject.Type = typeof(object); configurationObject.Attributes.Add("name1", "valu;e1"); configurationObject.Attributes.Add("name2", "value2"); MockAdmContentBuilder contentBuilder = new MockAdmContentBuilder(); contentBuilder.StartCategory("category"); contentBuilder.StartPolicy("policy", "policy key"); provider.AddAdministrativeTemplateDirectives(contentBuilder, configurationObject, configurationSource, "TestApp"); contentBuilder.EndPolicy(); contentBuilder.EndCategory(); MockAdmContent content = contentBuilder.GetMockContent(); IEnumerator <AdmCategory> categoriesEnumerator = content.Categories.GetEnumerator(); categoriesEnumerator.MoveNext(); IEnumerator <AdmPolicy> policiesEnumerator = categoriesEnumerator.Current.Policies.GetEnumerator(); policiesEnumerator.MoveNext(); IEnumerator <AdmPart> partsEnumerator = policiesEnumerator.Current.Parts.GetEnumerator(); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmTextPart), partsEnumerator.Current.GetType()); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmEditTextPart), partsEnumerator.Current.GetType()); Assert.AreEqual(CustomHandlerDataManageabilityProvider.ProviderTypePropertyName, partsEnumerator.Current.ValueName); Assert.IsNotNull(partsEnumerator.Current.KeyName); Assert.AreEqual(typeof(object).AssemblyQualifiedName, ((AdmEditTextPart)partsEnumerator.Current).DefaultValue); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmEditTextPart), partsEnumerator.Current.GetType()); Assert.AreEqual(CustomHandlerDataManageabilityProvider.AttributesPropertyName, partsEnumerator.Current.ValueName); Assert.IsNotNull(partsEnumerator.Current.KeyName); IDictionary <String, String> attributes = new Dictionary <String, String>(); KeyValuePairParser.ExtractKeyValueEntries(((AdmEditTextPart)partsEnumerator.Current).DefaultValue, attributes); Assert.AreEqual(2, attributes.Count); Assert.AreEqual("valu;e1", attributes["name1"]); Assert.AreEqual("value2", attributes["name2"]); Assert.IsFalse(partsEnumerator.MoveNext()); }
public void ManageabilityProviderGeneratesProperAdmContent() { DictionaryConfigurationSource configurationSource = new DictionaryConfigurationSource(); MockAdmContentBuilder contentBuilder = new MockAdmContentBuilder(); contentBuilder.StartCategory("category"); provider.InvokeAddAdministrativeTemplateDirectives(contentBuilder, configurationObject, configurationSource, "TestApp"); contentBuilder.EndCategory(); MockAdmContent content = contentBuilder.GetMockContent(); IEnumerator <AdmCategory> categoriesEnumerator = content.Categories.GetEnumerator(); categoriesEnumerator.MoveNext(); IEnumerator <AdmPolicy> policiesEnumerator = categoriesEnumerator.Current.Policies.GetEnumerator(); Assert.IsTrue(policiesEnumerator.MoveNext()); Assert.AreEqual(String.Format(Resources.HashProviderPolicyNameTemplate, configurationObject.Name), policiesEnumerator.Current.Name); IEnumerator <AdmPart> partsEnumerator = policiesEnumerator.Current.Parts.GetEnumerator(); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmCheckboxPart), partsEnumerator.Current.GetType()); Assert.IsNull(partsEnumerator.Current.KeyName); Assert.AreEqual(KeyedHashAlgorithmProviderDataManageabilityProvider.SaltEnabledPropertyName, partsEnumerator.Current.ValueName); Assert.AreEqual(Resources.KeyedHashAlgorithmProviderSaltEnabledPartName, partsEnumerator.Current.PartName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmEditTextPart), partsEnumerator.Current.GetType()); Assert.IsNull(partsEnumerator.Current.KeyName); Assert.AreEqual(KeyedHashAlgorithmProviderDataManageabilityProvider.ProtectedKeyFilenamePropertyName, partsEnumerator.Current.ValueName); Assert.AreEqual(Resources.KeyedHashAlgorithmProviderKeyFileNamePartName, partsEnumerator.Current.PartName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmDropDownListPart), partsEnumerator.Current.GetType()); Assert.IsNull(partsEnumerator.Current.KeyName); Assert.AreEqual(KeyedHashAlgorithmProviderDataManageabilityProvider.ProtectedKeyProtectionScopePropertyName, partsEnumerator.Current.ValueName); Assert.AreEqual(Resources.KeyedHashAlgorithmProviderKeyProtectionScopePartName, partsEnumerator.Current.PartName); Assert.IsFalse(partsEnumerator.MoveNext()); Assert.IsFalse(policiesEnumerator.MoveNext()); }
public void ManageabilityProviderGeneratesProperAdmContent() { DictionaryConfigurationSource configurationSource = new DictionaryConfigurationSource(); CacheManagerSettings cacheSettings = new CacheManagerSettings(); configurationSource.Add(CacheManagerSettings.SectionName, cacheSettings); cacheSettings.CacheManagers.Add(new CacheManagerData("manager", 0, 0, 0, "storage")); MockAdmContentBuilder contentBuilder = new MockAdmContentBuilder(); contentBuilder.StartCategory("category"); provider.InvokeAddAdministrativeTemplateDirectives(contentBuilder, configurationObject, configurationSource, "TestApp"); contentBuilder.EndCategory(); MockAdmContent content = contentBuilder.GetMockContent(); IEnumerator <AdmCategory> categoriesEnumerator = content.Categories.GetEnumerator(); categoriesEnumerator.MoveNext(); IEnumerator <AdmPolicy> policiesEnumerator = categoriesEnumerator.Current.Policies.GetEnumerator(); Assert.IsTrue(policiesEnumerator.MoveNext()); Assert.AreEqual(String.Format(Resources.SecurityCacheProviderPolicyNameTemplate, configurationObject.Name), policiesEnumerator.Current.Name); IEnumerator <AdmPart> partsEnumerator = policiesEnumerator.Current.Parts.GetEnumerator(); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmDropDownListPart), partsEnumerator.Current.GetType()); Assert.IsNull(((AdmDropDownListPart)partsEnumerator.Current).KeyName); Assert.AreEqual(CachingStoreProviderDataManageabilityProvider.CacheManagerPropertyName, ((AdmDropDownListPart)partsEnumerator.Current).ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmNumericPart), partsEnumerator.Current.GetType()); Assert.IsNull(((AdmNumericPart)partsEnumerator.Current).KeyName); Assert.AreEqual(CachingStoreProviderDataManageabilityProvider.AbsoluteExpirationPropertyName, ((AdmNumericPart)partsEnumerator.Current).ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmNumericPart), partsEnumerator.Current.GetType()); Assert.IsNull(((AdmNumericPart)partsEnumerator.Current).KeyName); Assert.AreEqual(CachingStoreProviderDataManageabilityProvider.SlidingExpirationPropertyName, ((AdmNumericPart)partsEnumerator.Current).ValueName); Assert.IsFalse(partsEnumerator.MoveNext()); Assert.IsFalse(policiesEnumerator.MoveNext()); }
public void ManageabilityProviderGeneratesProperAdmContent() { DictionaryConfigurationSource configurationSource = new DictionaryConfigurationSource(); LoggingSettings section = new LoggingSettings(); configurationSource.Add(LoggingSettings.SectionName, section); section.TraceSources.Add(new TraceSourceData("source1", SourceLevels.Off)); section.TraceSources.Add(new TraceSourceData("source2", SourceLevels.Off)); MockAdmContentBuilder contentBuilder = new MockAdmContentBuilder(); contentBuilder.StartCategory("category"); provider.AddAdministrativeTemplateDirectives(contentBuilder, configurationObject, configurationSource, "TestApp"); contentBuilder.EndCategory(); MockAdmContent content = contentBuilder.GetMockContent(); IEnumerator <AdmCategory> categoriesEnumerator = content.Categories.GetEnumerator(); categoriesEnumerator.MoveNext(); IEnumerator <AdmPolicy> policiesEnumerator = categoriesEnumerator.Current.Policies.GetEnumerator(); Assert.IsTrue(policiesEnumerator.MoveNext()); IEnumerator <AdmPart> partsEnumerator = policiesEnumerator.Current.Parts.GetEnumerator(); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmDropDownListPart), partsEnumerator.Current.GetType()); Assert.IsNull(partsEnumerator.Current.KeyName); Assert.AreEqual(CategoryFilterDataManageabilityProvider.CategoryFilterModePropertyName, partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmTextPart), partsEnumerator.Current.GetType()); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmCheckboxPart), partsEnumerator.Current.GetType()); Assert.IsTrue(partsEnumerator.Current.KeyName.EndsWith(CategoryFilterDataManageabilityProvider.CategoryFiltersKeyName)); Assert.AreEqual("source1", partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmCheckboxPart), partsEnumerator.Current.GetType()); Assert.IsTrue(partsEnumerator.Current.KeyName.EndsWith(CategoryFilterDataManageabilityProvider.CategoryFiltersKeyName)); Assert.AreEqual("source2", partsEnumerator.Current.ValueName); Assert.IsFalse(partsEnumerator.MoveNext()); Assert.IsFalse(policiesEnumerator.MoveNext()); }
public void ManageabilityProviderGeneratesProperAdmContent() { DictionaryConfigurationSource configurationSource = new DictionaryConfigurationSource(); ConnectionStringsSection connectionStringsSection = new ConnectionStringsSection(); configurationSource.Add("connectionStrings", connectionStringsSection); connectionStringsSection.ConnectionStrings.Add(new ConnectionStringSettings("cs1", "cs1")); MockAdmContentBuilder contentBuilder = new MockAdmContentBuilder(); configurationObject.Type = typeof(Object); contentBuilder.StartCategory("category"); contentBuilder.StartPolicy("policy", "policy key"); provider.AddAdministrativeTemplateDirectives(contentBuilder, configurationObject, configurationSource, "TestApp"); contentBuilder.EndPolicy(); contentBuilder.EndCategory(); MockAdmContent content = contentBuilder.GetMockContent(); IEnumerator <AdmCategory> categoriesEnumerator = content.Categories.GetEnumerator(); categoriesEnumerator.MoveNext(); IEnumerator <AdmPolicy> policiesEnumerator = categoriesEnumerator.Current.Policies.GetEnumerator(); policiesEnumerator.MoveNext(); IEnumerator <AdmPart> partsEnumerator = policiesEnumerator.Current.Parts.GetEnumerator(); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmDropDownListPart), partsEnumerator.Current.GetType()); Assert.IsNotNull(partsEnumerator.Current.KeyName); Assert.AreEqual(DataCacheStorageDataManageabilityProvider.DatabaseInstanceNamePropertyName, partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmEditTextPart), partsEnumerator.Current.GetType()); Assert.IsNotNull(partsEnumerator.Current.KeyName); Assert.AreEqual(DataCacheStorageDataManageabilityProvider.PartitionNamePropertyName, partsEnumerator.Current.ValueName); Assert.IsFalse(partsEnumerator.MoveNext()); }
public void ManageabilityProviderGeneratesProperAdmContent() { DictionaryConfigurationSource configurationSource = new DictionaryConfigurationSource(); MockAdmContentBuilder contentBuilder = new MockAdmContentBuilder(); configurationObject.Rules.Add(new AuthorizationRuleData("name1", "rule1")); configurationObject.Rules.Add(new AuthorizationRuleData("name2", "rul;e2")); contentBuilder.StartCategory("category"); provider.AddAdministrativeTemplateDirectives(contentBuilder, configurationObject, configurationSource, "TestApp"); contentBuilder.EndCategory(); MockAdmContent content = contentBuilder.GetMockContent(); IEnumerator <AdmCategory> categoriesEnumerator = content.Categories.GetEnumerator(); categoriesEnumerator.MoveNext(); IEnumerator <AdmPolicy> policiesEnumerator = categoriesEnumerator.Current.Policies.GetEnumerator(); Assert.IsTrue(policiesEnumerator.MoveNext()); IEnumerator <AdmPart> partsEnumerator = policiesEnumerator.Current.Parts.GetEnumerator(); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmEditTextPart), partsEnumerator.Current.GetType()); Assert.IsNull(((AdmEditTextPart)partsEnumerator.Current).KeyName); Assert.AreEqual(AuthorizationRuleProviderDataManageabilityProvider.RulesPropertyName, ((AdmEditTextPart)partsEnumerator.Current).ValueName); IDictionary <String, String> rules = new Dictionary <String, String>(); KeyValuePairParser.ExtractKeyValueEntries(((AdmEditTextPart)partsEnumerator.Current).DefaultValue, rules); Assert.AreEqual(2, rules.Count); Assert.AreEqual("rule1", rules["name1"]); Assert.AreEqual("rul;e2", rules["name2"]); Assert.IsFalse(partsEnumerator.MoveNext()); Assert.IsFalse(policiesEnumerator.MoveNext()); }
public void ManageabilityProviderGeneratesProperAdmContent() { DictionaryConfigurationSource configurationSource = new DictionaryConfigurationSource(); LoggingSettings section = new LoggingSettings(); configurationSource.Add(LoggingSettings.SectionName, section); MockAdmContentBuilder contentBuilder = new MockAdmContentBuilder(); contentBuilder.StartCategory("category"); provider.AddAdministrativeTemplateDirectives(contentBuilder, configurationObject, configurationSource, "TestApp"); contentBuilder.EndCategory(); MockAdmContent content = contentBuilder.GetMockContent(); IEnumerator <AdmCategory> categoriesEnumerator = content.Categories.GetEnumerator(); categoriesEnumerator.MoveNext(); IEnumerator <AdmPolicy> policiesEnumerator = categoriesEnumerator.Current.Policies.GetEnumerator(); Assert.IsTrue(policiesEnumerator.MoveNext()); IEnumerator <AdmPart> partsEnumerator = policiesEnumerator.Current.Parts.GetEnumerator(); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmTextPart), partsEnumerator.Current.GetType()); Assert.IsNull(partsEnumerator.Current.KeyName); Assert.IsNull(partsEnumerator.Current.ValueName); // trace output options checkboxes Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmCheckboxPart), partsEnumerator.Current.GetType()); Assert.IsNotNull(partsEnumerator.Current.KeyName); Assert.AreEqual("LogicalOperationStack", partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmCheckboxPart), partsEnumerator.Current.GetType()); Assert.IsNotNull(partsEnumerator.Current.KeyName); Assert.AreEqual("DateTime", partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmCheckboxPart), partsEnumerator.Current.GetType()); Assert.IsNotNull(partsEnumerator.Current.KeyName); Assert.AreEqual("Timestamp", partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmCheckboxPart), partsEnumerator.Current.GetType()); Assert.IsNotNull(partsEnumerator.Current.KeyName); Assert.AreEqual("ProcessId", partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmCheckboxPart), partsEnumerator.Current.GetType()); Assert.IsNotNull(partsEnumerator.Current.KeyName); Assert.AreEqual("ThreadId", partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmCheckboxPart), partsEnumerator.Current.GetType()); Assert.IsNotNull(partsEnumerator.Current.KeyName); Assert.AreEqual("Callstack", partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmDropDownListPart), partsEnumerator.Current.GetType()); Assert.IsNull(partsEnumerator.Current.KeyName); Assert.AreEqual(WmiTraceListenerDataManageabilityProvider.FilterPropertyName, partsEnumerator.Current.ValueName); Assert.IsFalse(partsEnumerator.MoveNext()); Assert.IsFalse(policiesEnumerator.MoveNext()); }
public void ManageabilityProviderGeneratesProperAdmContent() { DictionaryConfigurationSource configurationSource = new DictionaryConfigurationSource(); configurationSource.Add(ExceptionHandlingSettings.SectionName, section); ExceptionPolicyData policy1 = new ExceptionPolicyData("policy1"); section.ExceptionPolicies.Add(policy1); ExceptionTypeData exceptionType11 = new ExceptionTypeData("type11", typeof(Exception), PostHandlingAction.None); policy1.ExceptionTypes.Add(exceptionType11); ExceptionTypeData exceptionType12 = new ExceptionTypeData("type12", typeof(Exception), PostHandlingAction.None); policy1.ExceptionTypes.Add(exceptionType12); ExceptionPolicyData policy2 = new ExceptionPolicyData("policy2"); section.ExceptionPolicies.Add(policy2); ExceptionTypeData exceptionType21 = new ExceptionTypeData("type21", typeof(Exception), PostHandlingAction.None); policy2.ExceptionTypes.Add(exceptionType21); Dictionary <Type, ConfigurationElementManageabilityProvider> subProviders = new Dictionary <Type, ConfigurationElementManageabilityProvider>(); provider = new ExceptionHandlingSettingsManageabilityProvider(subProviders); MockAdmContentBuilder contentBuilder = new MockAdmContentBuilder(); provider.AddAdministrativeTemplateDirectives(contentBuilder, section, configurationSource, "TestApp"); 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()); Assert.AreEqual(policy1.Name, subCategoriesEnumerator.Current.Name); IEnumerator <AdmPolicy> policyPoliciesEnumerator = subCategoriesEnumerator.Current.Policies.GetEnumerator(); Assert.IsTrue(policyPoliciesEnumerator.MoveNext()); IEnumerator <AdmPart> partsEnumerator = policyPoliciesEnumerator.Current.Parts.GetEnumerator(); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmDropDownListPart), partsEnumerator.Current.GetType()); Assert.IsNull(partsEnumerator.Current.KeyName); Assert.AreEqual(ExceptionHandlingSettingsManageabilityProvider.PolicyTypePostHandlingActionPropertyName, partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmTextPart), partsEnumerator.Current.GetType()); Assert.IsFalse(partsEnumerator.MoveNext()); Assert.IsTrue(policyPoliciesEnumerator.MoveNext()); Assert.IsFalse(policyPoliciesEnumerator.MoveNext()); Assert.IsTrue(subCategoriesEnumerator.MoveNext()); Assert.AreEqual(policy2.Name, subCategoriesEnumerator.Current.Name); policyPoliciesEnumerator = subCategoriesEnumerator.Current.Policies.GetEnumerator(); Assert.IsTrue(policyPoliciesEnumerator.MoveNext()); Assert.IsFalse(policyPoliciesEnumerator.MoveNext()); Assert.IsFalse(subCategoriesEnumerator.MoveNext()); IEnumerator <AdmPolicy> sectionPoliciesEnumerator = categoriesEnumerator.Current.Policies.GetEnumerator(); Assert.IsTrue(sectionPoliciesEnumerator.MoveNext()); partsEnumerator = sectionPoliciesEnumerator.Current.Parts.GetEnumerator(); Assert.IsFalse(partsEnumerator.MoveNext()); Assert.IsFalse(sectionPoliciesEnumerator.MoveNext()); Assert.IsFalse(categoriesEnumerator.MoveNext()); }
public void ManageabilityProviderGeneratesProperAdmContent() { // need to set these because their default values are null. configurationObject.Formatter = "formatter"; configurationObject.QueuePath = "path"; DictionaryConfigurationSource configurationSource = new DictionaryConfigurationSource(); LoggingSettings section = new LoggingSettings(); configurationSource.Add(LoggingSettings.SectionName, section); MockAdmContentBuilder contentBuilder = new MockAdmContentBuilder(); contentBuilder.StartCategory("category"); provider.InvokeAddAdministrativeTemplateDirectives(contentBuilder, configurationObject, configurationSource, "TestApp"); contentBuilder.EndCategory(); MockAdmContent content = contentBuilder.GetMockContent(); IEnumerator <AdmCategory> categoriesEnumerator = content.Categories.GetEnumerator(); categoriesEnumerator.MoveNext(); IEnumerator <AdmPolicy> policiesEnumerator = categoriesEnumerator.Current.Policies.GetEnumerator(); Assert.IsTrue(policiesEnumerator.MoveNext()); Assert.AreEqual(String.Format(Resources.TraceListenerPolicyNameTemplate, configurationObject.Name), policiesEnumerator.Current.Name); IEnumerator <AdmPart> partsEnumerator = policiesEnumerator.Current.Parts.GetEnumerator(); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmEditTextPart), partsEnumerator.Current.GetType()); Assert.IsNull(partsEnumerator.Current.KeyName); Assert.AreEqual(MsmqTraceListenerDataManageabilityProvider.QueuePathPropertyName, partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmDropDownListPart), partsEnumerator.Current.GetType()); Assert.IsNull(partsEnumerator.Current.KeyName); Assert.AreEqual(MsmqTraceListenerDataManageabilityProvider.MessagePriorityPropertyName, partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmEditTextPart), partsEnumerator.Current.GetType()); Assert.IsNull(partsEnumerator.Current.KeyName); Assert.AreEqual(MsmqTraceListenerDataManageabilityProvider.TimeToBeReceivedPropertyName, partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmEditTextPart), partsEnumerator.Current.GetType()); Assert.IsNull(partsEnumerator.Current.KeyName); Assert.AreEqual(MsmqTraceListenerDataManageabilityProvider.TimeToReachQueuePropertyName, partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmCheckboxPart), partsEnumerator.Current.GetType()); Assert.IsNull(partsEnumerator.Current.KeyName); Assert.AreEqual(MsmqTraceListenerDataManageabilityProvider.RecoverablePropertyName, partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmDropDownListPart), partsEnumerator.Current.GetType()); Assert.IsNull(partsEnumerator.Current.KeyName); Assert.AreEqual(MsmqTraceListenerDataManageabilityProvider.TransactionTypePropertyName, partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmCheckboxPart), partsEnumerator.Current.GetType()); Assert.IsNull(partsEnumerator.Current.KeyName); Assert.AreEqual(MsmqTraceListenerDataManageabilityProvider.UseAuthenticationPropertyName, partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmCheckboxPart), partsEnumerator.Current.GetType()); Assert.IsNull(partsEnumerator.Current.KeyName); Assert.AreEqual(MsmqTraceListenerDataManageabilityProvider.UseDeadLetterQueuePropertyName, partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmCheckboxPart), partsEnumerator.Current.GetType()); Assert.IsNull(partsEnumerator.Current.KeyName); Assert.AreEqual(MsmqTraceListenerDataManageabilityProvider.UseEncryptionPropertyName, partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmDropDownListPart), partsEnumerator.Current.GetType()); Assert.IsNull(partsEnumerator.Current.KeyName); Assert.AreEqual(MsmqTraceListenerDataManageabilityProvider.TraceOutputOptionsPropertyName, partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmDropDownListPart), partsEnumerator.Current.GetType()); Assert.IsNull(partsEnumerator.Current.KeyName); Assert.AreEqual(MsmqTraceListenerDataManageabilityProvider.FormatterPropertyName, partsEnumerator.Current.ValueName); Assert.IsFalse(partsEnumerator.MoveNext()); Assert.IsFalse(policiesEnumerator.MoveNext()); }
public void ManageabilityProviderGeneratesProperAdmContent() { DictionaryConfigurationSource configurationSource = new DictionaryConfigurationSource(); LoggingSettings loggingSection = new LoggingSettings(); configurationSource.Add(LoggingSettings.SectionName, loggingSection); loggingSection.TraceSources.Add(new TraceSourceData("trace source", SourceLevels.All)); configurationObject.FormatterType = typeof(object); MockAdmContentBuilder contentBuilder = new MockAdmContentBuilder(); contentBuilder.StartCategory("category"); contentBuilder.StartPolicy("policy", "policy key"); provider.AddAdministrativeTemplateDirectives(contentBuilder, configurationObject, configurationSource, "TestApp"); contentBuilder.EndPolicy(); contentBuilder.EndCategory(); MockAdmContent content = contentBuilder.GetMockContent(); IEnumerator <AdmCategory> categoriesEnumerator = content.Categories.GetEnumerator(); categoriesEnumerator.MoveNext(); IEnumerator <AdmPolicy> policiesEnumerator = categoriesEnumerator.Current.Policies.GetEnumerator(); policiesEnumerator.MoveNext(); IEnumerator <AdmPart> partsEnumerator = policiesEnumerator.Current.Parts.GetEnumerator(); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmTextPart), partsEnumerator.Current.GetType()); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmEditTextPart), partsEnumerator.Current.GetType()); Assert.IsNotNull(partsEnumerator.Current.KeyName); Assert.AreEqual(LoggingExceptionHandlerDataManageabilityProvider.TitlePropertyName, partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmNumericPart), partsEnumerator.Current.GetType()); Assert.IsNotNull(partsEnumerator.Current.KeyName); Assert.AreEqual(LoggingExceptionHandlerDataManageabilityProvider.EventIdPropertyName, partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmDropDownListPart), partsEnumerator.Current.GetType()); Assert.IsNotNull(partsEnumerator.Current.KeyName); Assert.AreEqual(LoggingExceptionHandlerDataManageabilityProvider.SeverityPropertyName, partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmNumericPart), partsEnumerator.Current.GetType()); Assert.IsNotNull(partsEnumerator.Current.KeyName); Assert.AreEqual(LoggingExceptionHandlerDataManageabilityProvider.PriorityPropertyName, partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmDropDownListPart), partsEnumerator.Current.GetType()); Assert.IsNotNull(partsEnumerator.Current.KeyName); Assert.AreEqual(LoggingExceptionHandlerDataManageabilityProvider.LogCategoryPropertyName, partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmComboBoxPart), partsEnumerator.Current.GetType()); Assert.IsNotNull(partsEnumerator.Current.KeyName); Assert.AreEqual(LoggingExceptionHandlerDataManageabilityProvider.FormatterTypePropertyName, partsEnumerator.Current.ValueName); Assert.IsFalse(partsEnumerator.MoveNext()); }
public void ManageabilityProviderGeneratesProperAdmContent() { DictionaryConfigurationSource configurationSource = new DictionaryConfigurationSource(); LoggingSettings section = new LoggingSettings(); configurationSource.Add(LoggingSettings.SectionName, section); configurationObject.Type = typeof(object); configurationObject.Attributes.Add("name1", "valu;e1"); configurationObject.Attributes.Add("name2", "value2"); MockAdmContentBuilder contentBuilder = new MockAdmContentBuilder(); contentBuilder.StartCategory("category"); provider.AddAdministrativeTemplateDirectives(contentBuilder, configurationObject, configurationSource, "TestApp"); contentBuilder.EndCategory(); MockAdmContent content = contentBuilder.GetMockContent(); IEnumerator <AdmCategory> categoriesEnumerator = content.Categories.GetEnumerator(); categoriesEnumerator.MoveNext(); IEnumerator <AdmPolicy> policiesEnumerator = categoriesEnumerator.Current.Policies.GetEnumerator(); Assert.IsTrue(policiesEnumerator.MoveNext()); IEnumerator <AdmPart> partsEnumerator = policiesEnumerator.Current.Parts.GetEnumerator(); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmEditTextPart), partsEnumerator.Current.GetType()); Assert.AreEqual(CustomTraceListenerDataManageabilityProvider.ProviderTypePropertyName, partsEnumerator.Current.ValueName); Assert.IsNull(partsEnumerator.Current.KeyName); Assert.AreEqual(typeof(object).AssemblyQualifiedName, ((AdmEditTextPart)partsEnumerator.Current).DefaultValue); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmEditTextPart), partsEnumerator.Current.GetType()); Assert.AreEqual(CustomTraceListenerDataManageabilityProvider.AttributesPropertyName, partsEnumerator.Current.ValueName); Assert.IsNull(partsEnumerator.Current.KeyName); IDictionary <String, String> attributes = new Dictionary <String, String>(); KeyValuePairParser.ExtractKeyValueEntries(((AdmEditTextPart)partsEnumerator.Current).DefaultValue, attributes); Assert.AreEqual(2, attributes.Count); Assert.AreEqual("valu;e1", attributes["name1"]); Assert.AreEqual("value2", attributes["name2"]); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmEditTextPart), partsEnumerator.Current.GetType()); Assert.IsNull(partsEnumerator.Current.KeyName); Assert.AreEqual(CustomTraceListenerDataManageabilityProvider.InitDataPropertyName, partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmTextPart), partsEnumerator.Current.GetType()); Assert.IsNull(partsEnumerator.Current.KeyName); Assert.IsNull(partsEnumerator.Current.ValueName); // trace output options checkboxes Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmCheckboxPart), partsEnumerator.Current.GetType()); Assert.IsNotNull(partsEnumerator.Current.KeyName); Assert.AreEqual("LogicalOperationStack", partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmCheckboxPart), partsEnumerator.Current.GetType()); Assert.IsNotNull(partsEnumerator.Current.KeyName); Assert.AreEqual("DateTime", partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmCheckboxPart), partsEnumerator.Current.GetType()); Assert.IsNotNull(partsEnumerator.Current.KeyName); Assert.AreEqual("Timestamp", partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmCheckboxPart), partsEnumerator.Current.GetType()); Assert.IsNotNull(partsEnumerator.Current.KeyName); Assert.AreEqual("ProcessId", partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmCheckboxPart), partsEnumerator.Current.GetType()); Assert.IsNotNull(partsEnumerator.Current.KeyName); Assert.AreEqual("ThreadId", partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmCheckboxPart), partsEnumerator.Current.GetType()); Assert.IsNotNull(partsEnumerator.Current.KeyName); Assert.AreEqual("Callstack", partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmDropDownListPart), partsEnumerator.Current.GetType()); Assert.IsNull(partsEnumerator.Current.KeyName); Assert.AreEqual(CustomTraceListenerDataManageabilityProvider.FilterPropertyName, partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmDropDownListPart), partsEnumerator.Current.GetType()); Assert.IsNull(partsEnumerator.Current.KeyName); Assert.AreEqual(CustomTraceListenerDataManageabilityProvider.FormatterPropertyName, partsEnumerator.Current.ValueName); Assert.IsFalse(partsEnumerator.MoveNext()); Assert.IsFalse(policiesEnumerator.MoveNext()); }
public void ManageabilityProviderGeneratesProperAdmContent() { HashProviderData hash = new HashProviderData("hash", typeof(object)); section.HashProviders.Add(hash); SymmetricProviderData symmetric = new SymmetricProviderData("symmetric", typeof(object)); section.SymmetricCryptoProviders.Add(symmetric); MockConfigurationElementManageabilityProvider subProvider = new MockConfigurationElementManageabilityProvider(true, false); Dictionary <Type, ConfigurationElementManageabilityProvider> subProviders = new Dictionary <Type, ConfigurationElementManageabilityProvider>(); subProviders.Add(typeof(HashProviderData), subProvider); subProviders.Add(typeof(SymmetricProviderData), subProvider); provider = new ConfigurationSectionManageabilityProviderWrapper(new CryptographySettingsManageabilityProvider(subProviders)); MockAdmContentBuilder contentBuilder = new MockAdmContentBuilder(); provider.InvokeAddAdministrativeTemplateDirectives(contentBuilder, section, configurationSource, "TestApp"); Assert.AreEqual(2, subProvider.configurationObjects.Count); Assert.AreSame(hash, subProvider.configurationObjects[0]); Assert.AreSame(symmetric, subProvider.configurationObjects[1]); MockAdmContent content = contentBuilder.GetMockContent(); IEnumerator <AdmCategory> categoriesEnumerator = content.Categories.GetEnumerator(); Assert.IsTrue(categoriesEnumerator.MoveNext()); Assert.AreEqual(Resources.CryptographySectionCategoryName, categoriesEnumerator.Current.Name); IEnumerator <AdmCategory> subCategoriesEnumerator = categoriesEnumerator.Current.Categories.GetEnumerator(); Assert.IsTrue(subCategoriesEnumerator.MoveNext()); Assert.AreEqual(Resources.HashProvidersCategoryName, subCategoriesEnumerator.Current.Name); IEnumerator <AdmPolicy> policiesEnumerator = subCategoriesEnumerator.Current.Policies.GetEnumerator(); Assert.IsTrue(policiesEnumerator.MoveNext()); Assert.AreEqual(MockConfigurationElementManageabilityProvider.Policy, policiesEnumerator.Current.Name); Assert.IsFalse(policiesEnumerator.MoveNext()); Assert.IsTrue(subCategoriesEnumerator.MoveNext()); Assert.AreEqual(Resources.SymmetricCryptoProvidersCategoryName, subCategoriesEnumerator.Current.Name); policiesEnumerator = subCategoriesEnumerator.Current.Policies.GetEnumerator(); Assert.IsTrue(policiesEnumerator.MoveNext()); Assert.AreEqual(MockConfigurationElementManageabilityProvider.Policy, policiesEnumerator.Current.Name); Assert.IsFalse(policiesEnumerator.MoveNext()); Assert.IsFalse(subCategoriesEnumerator.MoveNext()); IEnumerator <AdmPolicy> sectionPoliciesEnumerator = categoriesEnumerator.Current.Policies.GetEnumerator(); Assert.IsTrue(sectionPoliciesEnumerator.MoveNext()); Assert.AreEqual(Resources.CryptographySettingsPolicyName, sectionPoliciesEnumerator.Current.Name); IEnumerator <AdmPart> sectionPartsEnumerator = sectionPoliciesEnumerator.Current.Parts.GetEnumerator(); Assert.IsTrue(sectionPartsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmDropDownListPart), sectionPartsEnumerator.Current.GetType()); Assert.AreEqual(CryptographySettingsManageabilityProvider.DefaultHashProviderPropertyName, sectionPartsEnumerator.Current.ValueName); Assert.AreEqual(Resources.CryptographySettingsDefaultHashProviderPartName, sectionPartsEnumerator.Current.PartName); Assert.IsTrue(sectionPartsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmDropDownListPart), sectionPartsEnumerator.Current.GetType()); Assert.AreEqual(CryptographySettingsManageabilityProvider.DefaultSymmetricCryptoProviderPropertyName, sectionPartsEnumerator.Current.ValueName); Assert.AreEqual(Resources.CryptographySettingsDefaultSymmetricCryptoProviderPartName, sectionPartsEnumerator.Current.PartName); Assert.IsFalse(sectionPartsEnumerator.MoveNext()); Assert.IsFalse(sectionPoliciesEnumerator.MoveNext()); Assert.IsFalse(categoriesEnumerator.MoveNext()); }
public void ManageabilityProviderGeneratesProperAdmContent() { DictionaryConfigurationSource configurationSource = new DictionaryConfigurationSource(); LoggingSettings section = new LoggingSettings(); configurationSource.Add(LoggingSettings.SectionName, section); MockAdmContentBuilder contentBuilder = new MockAdmContentBuilder(); contentBuilder.StartCategory("category"); provider.AddAdministrativeTemplateDirectives(contentBuilder, configurationObject, configurationSource, "TestApp"); contentBuilder.EndCategory(); MockAdmContent content = contentBuilder.GetMockContent(); IEnumerator <AdmCategory> categoriesEnumerator = content.Categories.GetEnumerator(); categoriesEnumerator.MoveNext(); IEnumerator <AdmPolicy> policiesEnumerator = categoriesEnumerator.Current.Policies.GetEnumerator(); Assert.IsTrue(policiesEnumerator.MoveNext()); IEnumerator <AdmPart> partsEnumerator = policiesEnumerator.Current.Parts.GetEnumerator(); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmEditTextPart), partsEnumerator.Current.GetType()); Assert.IsNull(partsEnumerator.Current.KeyName); Assert.AreEqual(RollingFlatFileTraceListenerDataManageabilityProvider.FileNamePropertyName, partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmEditTextPart), partsEnumerator.Current.GetType()); Assert.IsNull(partsEnumerator.Current.KeyName); Assert.AreEqual(RollingFlatFileTraceListenerDataManageabilityProvider.HeaderPropertyName, partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmEditTextPart), partsEnumerator.Current.GetType()); Assert.IsNull(partsEnumerator.Current.KeyName); Assert.AreEqual(RollingFlatFileTraceListenerDataManageabilityProvider.FooterPropertyName, partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmDropDownListPart), partsEnumerator.Current.GetType()); Assert.IsNull(partsEnumerator.Current.KeyName); Assert.AreEqual(RollingFlatFileTraceListenerDataManageabilityProvider.RollFileExistsBehaviorPropertyName, partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmDropDownListPart), partsEnumerator.Current.GetType()); Assert.IsNull(partsEnumerator.Current.KeyName); Assert.AreEqual(RollingFlatFileTraceListenerDataManageabilityProvider.RollIntervalPropertyName, partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmNumericPart), partsEnumerator.Current.GetType()); Assert.IsNull(partsEnumerator.Current.KeyName); Assert.AreEqual(RollingFlatFileTraceListenerDataManageabilityProvider.RollSizeKBPropertyName, partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmEditTextPart), partsEnumerator.Current.GetType()); Assert.IsNull(partsEnumerator.Current.KeyName); Assert.AreEqual(RollingFlatFileTraceListenerDataManageabilityProvider.TimeStampPatternPropertyName, partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmDropDownListPart), partsEnumerator.Current.GetType()); Assert.IsNull(partsEnumerator.Current.KeyName); Assert.AreEqual(RollingFlatFileTraceListenerDataManageabilityProvider.TraceOutputOptionsPropertyName, partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmDropDownListPart), partsEnumerator.Current.GetType()); Assert.IsNull(partsEnumerator.Current.KeyName); Assert.AreEqual(RollingFlatFileTraceListenerDataManageabilityProvider.FilterPropertyName, partsEnumerator.Current.ValueName); Assert.IsTrue(partsEnumerator.MoveNext()); Assert.AreSame(typeof(AdmDropDownListPart), partsEnumerator.Current.GetType()); Assert.IsNull(partsEnumerator.Current.KeyName); Assert.AreEqual(RollingFlatFileTraceListenerDataManageabilityProvider.FormatterPropertyName, partsEnumerator.Current.ValueName); Assert.IsFalse(partsEnumerator.MoveNext()); Assert.IsFalse(policiesEnumerator.MoveNext()); }