Beispiel #1
0
        public void ExecutingAddLoggingSettingsAddsDefaults()
        {
            AddLoggingSettingsNodeCommand addLoggingSettingsCommand = new AddLoggingSettingsNodeCommand(ServiceProvider);

            addLoggingSettingsCommand.Execute(ApplicationNode);
            LoggingSettingsNode loggingSettingsNode = (LoggingSettingsNode)Hierarchy.FindNodeByType(ApplicationNode, typeof(LoggingSettingsNode));
            FormattedEventLogTraceListenerNode defaultEventLogListenerNode      = (FormattedEventLogTraceListenerNode)Hierarchy.FindNodeByType(ApplicationNode, typeof(FormattedEventLogTraceListenerNode));
            TextFormatterNode                 defaultFormatterNode              = (TextFormatterNode)Hierarchy.FindNodeByType(ApplicationNode, typeof(TextFormatterNode));
            ErrorsTraceSourceNode             errorTraceSourceNode              = (ErrorsTraceSourceNode)Hierarchy.FindNodeByType(ApplicationNode, typeof(ErrorsTraceSourceNode));
            CategoryTraceSourceCollectionNode categoryCollectionNode            = (CategoryTraceSourceCollectionNode)Hierarchy.FindNodeByType(ApplicationNode, typeof(CategoryTraceSourceCollectionNode));
            TraceListenerReferenceNode        defaultErrorListenerReferenceNode = (TraceListenerReferenceNode)Hierarchy.FindNodeByType(errorTraceSourceNode, typeof(TraceListenerReferenceNode));

            Assert.AreEqual(1, categoryCollectionNode.Nodes.Count);
            ConfigurationNode          generalCategoryNode = categoryCollectionNode.Nodes[0];
            TraceListenerReferenceNode defaultGeneralCategoryListenerRefenceNode = (TraceListenerReferenceNode)Hierarchy.FindNodeByType(generalCategoryNode, typeof(TraceListenerReferenceNode));

            Assert.AreEqual("General", generalCategoryNode.Name);
            Assert.IsNotNull(defaultErrorListenerReferenceNode);
            Assert.IsNotNull(defaultGeneralCategoryListenerRefenceNode);
            Assert.IsNotNull(defaultFormatterNode);
            Assert.IsNotNull(defaultEventLogListenerNode);
            Assert.AreEqual(defaultFormatterNode, defaultEventLogListenerNode.Formatter);
            Assert.AreEqual(defaultEventLogListenerNode, defaultGeneralCategoryListenerRefenceNode.ReferencedTraceListener);
            Assert.AreEqual(defaultEventLogListenerNode, defaultErrorListenerReferenceNode.ReferencedTraceListener);
            Assert.AreEqual(loggingSettingsNode.DefaultCategory, generalCategoryNode);
        }
Beispiel #2
0
        public void RenamingOneDistributionStrategyLeavesOnlyOneStrategy()
        {
            string name = "Test Custom Strategy 1";

            GeneratedHierarchy.Open();
            LoggingSettingsNode node = new LoggingSettingsNode();

            GeneratedApplicationNode.Nodes.AddWithDefaultChildren(node);
            DistributionStrategyCollectionNode distributionStrategyCollectionNode = GeneratedHierarchy.FindNodeByType(typeof(DistributionStrategyCollectionNode)) as DistributionStrategyCollectionNode;

            Assert.IsNotNull(distributionStrategyCollectionNode);
            distributionStrategyCollectionNode.Nodes.Clear();
            CustomDistributionStrategyNode customNode = new CustomDistributionStrategyNode();

            distributionStrategyCollectionNode.Nodes.AddWithDefaultChildren(customNode);
            customNode.TypeName = typeof(InProcDistributionStrategyData).AssemblyQualifiedName;
            customNode.Name     = name;
            GeneratedHierarchy.Save();

            ApplicationConfigurationNode appNode = new ApplicationConfigurationNode(ApplicationData.FromCurrentAppDomain());
            IUIHierarchy hierarchy = CreateHierarchyAndAddToHierarchyService(appNode, CreateDefaultConfiguration());

            HierarchyService.SelectedHierarchy = hierarchy;
            hierarchy.Open();
            LoggingSettingsNode settingsNode = hierarchy.FindNodeByType(typeof(LoggingSettingsNode)) as LoggingSettingsNode;

            Assert.IsNotNull(settingsNode);
            distributionStrategyCollectionNode = hierarchy.FindNodeByType(appNode, typeof(DistributionStrategyCollectionNode)) as DistributionStrategyCollectionNode;
            Assert.IsNotNull(distributionStrategyCollectionNode);
            ConfigurationNode [] nodes = hierarchy.FindNodesByType(distributionStrategyCollectionNode, typeof(CustomDistributionStrategyNode));
            Assert.AreEqual(1, nodes.Length);
            Assert.AreEqual(name, nodes[0].Name);
        }
        public void LoggingSettingsNodeDefaultDataTest()
        {
            LoggingSettingsNode loggingSettings = new LoggingSettingsNode();
            ApplicationNode.AddNode(loggingSettings);

            Assert.AreEqual(false, loggingSettings.LogWarningWhenNoCategoriesMatch);
            Assert.AreEqual(false, loggingSettings.TracingEnabled);
            Assert.AreEqual("Logging Application Block", loggingSettings.Name);
            Assert.IsNull(loggingSettings.DefaultCategory);
        }
        public void LoggingSettingsNodeDefaultDataTest()
        {
            LoggingSettingsNode loggingSettings = new LoggingSettingsNode();

            ApplicationNode.AddNode(loggingSettings);
            Assert.AreEqual(false, loggingSettings.LogWarningWhenNoCategoriesMatch);
            Assert.AreEqual(false, loggingSettings.TracingEnabled);
            Assert.AreEqual("Logging Application Block", loggingSettings.Name);
            Assert.IsNull(loggingSettings.DefaultCategory);
        }
Beispiel #5
0
        public void RemovingDistributionStrategySavesAndReopensCorrectly()
        {
            GeneratedHierarchy.Open();
            LoggingSettingsNode node = new LoggingSettingsNode();

            GeneratedApplicationNode.Nodes.AddWithDefaultChildren(node);
            ClientSettingsNode clientSettingsNode            = GeneratedHierarchy.FindNodeByType(node, typeof(ClientSettingsNode)) as ClientSettingsNode;
            DistributionStrategyCollectionNode distributions = GeneratedHierarchy.FindNodeByType(clientSettingsNode, typeof(DistributionStrategyCollectionNode)) as DistributionStrategyCollectionNode;

            distributions.Nodes.AddWithDefaultChildren(new MsmqDistributionStrategyNode());
            GeneratedHierarchy.Save();

            ApplicationConfigurationNode appNode = new ApplicationConfigurationNode(ApplicationData.FromCurrentAppDomain());
            IUIHierarchy hierarchy = CreateHierarchyAndAddToHierarchyService(appNode, CreateDefaultConfiguration());

            HierarchyService.SelectedHierarchy = hierarchy;
            hierarchy.Open();
            LoggingSettingsNode settingsNode = hierarchy.FindNodeByType(typeof(LoggingSettingsNode)) as LoggingSettingsNode;

            Assert.IsNotNull(settingsNode);
            distributions = hierarchy.FindNodeByType(appNode, typeof(DistributionStrategyCollectionNode)) as DistributionStrategyCollectionNode;
            Assert.IsNotNull(distributions);
            MsmqDistributionStrategyNode msmqDistributionStrategyNode = hierarchy.FindNodeByType(distributions, typeof(MsmqDistributionStrategyNode)) as MsmqDistributionStrategyNode;

            Assert.IsNotNull(msmqDistributionStrategyNode);
            // expect 3, inproc, MSMQ, and custom
            Assert.AreEqual(3, distributions.Nodes.Count);
            InProcDistributionStrategyNode inProcNode = hierarchy.FindNodeByType(distributions, typeof(InProcDistributionStrategyNode)) as InProcDistributionStrategyNode;

            Assert.IsNotNull(inProcNode);
            inProcNode.Remove();
            hierarchy.Save();


            appNode   = new ApplicationConfigurationNode(ApplicationData.FromCurrentAppDomain());
            hierarchy = CreateHierarchyAndAddToHierarchyService(appNode, CreateDefaultConfiguration());
            HierarchyService.SelectedHierarchy = hierarchy;
            hierarchy.Open();
            settingsNode = hierarchy.FindNodeByType(typeof(LoggingSettingsNode)) as LoggingSettingsNode;
            Assert.IsNotNull(settingsNode);
            distributions = hierarchy.FindNodeByType(appNode, typeof(DistributionStrategyCollectionNode)) as DistributionStrategyCollectionNode;
            Assert.IsNotNull(distributions);
            // expect 2, inproc & custom
            Assert.AreEqual(2, distributions.Nodes.Count);
        }
        public void LoggingSettingsNodeTest()
        {
            LoggingSettingsNode node = new LoggingSettingsNode();

            ApplicationNode.AddNode(node);
            bool logWarningWhenNoCategoriesMatch = true;
            bool tracingEnabled = true;

            node.LogWarningWhenNoCategoriesMatch = logWarningWhenNoCategoriesMatch;
            Assert.AreEqual(logWarningWhenNoCategoriesMatch, node.LogWarningWhenNoCategoriesMatch);
            node.TracingEnabled = tracingEnabled;
            Assert.AreEqual(tracingEnabled, node.TracingEnabled);
            LoggingSettingsBuilder builder = new LoggingSettingsBuilder(ServiceProvider, node);
            LoggingSettings        data    = builder.Build();

            Assert.AreEqual("Logging Application Block", data.Name);
            Assert.AreEqual(logWarningWhenNoCategoriesMatch, data.LogWarningWhenNoCategoriesMatch);
            Assert.AreEqual(tracingEnabled, data.TracingEnabled);
        }
        public void LoggingSettingsNodeTest()
        {
            LoggingSettingsNode node = new LoggingSettingsNode();
            ApplicationNode.AddNode(node);

            bool logWarningWhenNoCategoriesMatch = true;
            bool tracingEnabled = true;

            node.LogWarningWhenNoCategoriesMatch = logWarningWhenNoCategoriesMatch;
            Assert.AreEqual(logWarningWhenNoCategoriesMatch, node.LogWarningWhenNoCategoriesMatch);

            node.TracingEnabled = tracingEnabled;
            Assert.AreEqual(tracingEnabled, node.TracingEnabled);

            LoggingSettingsBuilder builder = new LoggingSettingsBuilder(ServiceProvider, node);
            LoggingSettings data = builder.Build();
            Assert.AreEqual("Logging Application Block", data.Name);
            Assert.AreEqual(logWarningWhenNoCategoriesMatch, data.LogWarningWhenNoCategoriesMatch);
            Assert.AreEqual(tracingEnabled, data.TracingEnabled);
        }
        public void RemovingDistributionStrategySavesAndReopensCorrectly()
        {
            GeneratedHierarchy.Open();
            LoggingSettingsNode node = new LoggingSettingsNode();
            GeneratedApplicationNode.Nodes.AddWithDefaultChildren(node);
            ClientSettingsNode clientSettingsNode = GeneratedHierarchy.FindNodeByType(node, typeof(ClientSettingsNode)) as ClientSettingsNode;
            DistributionStrategyCollectionNode distributions = GeneratedHierarchy.FindNodeByType(clientSettingsNode, typeof(DistributionStrategyCollectionNode)) as DistributionStrategyCollectionNode;
            distributions.Nodes.AddWithDefaultChildren(new MsmqDistributionStrategyNode());
            GeneratedHierarchy.Save();

            ApplicationConfigurationNode appNode = new ApplicationConfigurationNode(ApplicationData.FromCurrentAppDomain());
            IUIHierarchy hierarchy = CreateHierarchyAndAddToHierarchyService(appNode, CreateDefaultConfiguration());
            HierarchyService.SelectedHierarchy = hierarchy;
            hierarchy.Open();
            LoggingSettingsNode settingsNode = hierarchy.FindNodeByType(typeof(LoggingSettingsNode)) as LoggingSettingsNode;
            Assert.IsNotNull(settingsNode);
            distributions = hierarchy.FindNodeByType(appNode, typeof(DistributionStrategyCollectionNode)) as DistributionStrategyCollectionNode;
            Assert.IsNotNull(distributions);
            MsmqDistributionStrategyNode msmqDistributionStrategyNode = hierarchy.FindNodeByType(distributions, typeof(MsmqDistributionStrategyNode)) as MsmqDistributionStrategyNode;
            Assert.IsNotNull(msmqDistributionStrategyNode);
            // expect 3, inproc, MSMQ, and custom
            Assert.AreEqual(3, distributions.Nodes.Count);
            InProcDistributionStrategyNode inProcNode = hierarchy.FindNodeByType(distributions, typeof(InProcDistributionStrategyNode)) as InProcDistributionStrategyNode;
            Assert.IsNotNull(inProcNode);
            inProcNode.Remove();
            hierarchy.Save();

            appNode = new ApplicationConfigurationNode(ApplicationData.FromCurrentAppDomain());
            hierarchy = CreateHierarchyAndAddToHierarchyService(appNode, CreateDefaultConfiguration());
            HierarchyService.SelectedHierarchy = hierarchy;
            hierarchy.Open();
            settingsNode = hierarchy.FindNodeByType(typeof(LoggingSettingsNode)) as LoggingSettingsNode;
            Assert.IsNotNull(settingsNode);
            distributions = hierarchy.FindNodeByType(appNode, typeof(DistributionStrategyCollectionNode)) as DistributionStrategyCollectionNode;
            Assert.IsNotNull(distributions);
            // expect 2, inproc & custom
            Assert.AreEqual(2, distributions.Nodes.Count);
        }
        public void RenamingOneDistributionStrategyLeavesOnlyOneStrategy()
        {
            string name = "Test Custom Strategy 1";
            GeneratedHierarchy.Open();
            LoggingSettingsNode node = new LoggingSettingsNode();
            GeneratedApplicationNode.Nodes.AddWithDefaultChildren(node);
            DistributionStrategyCollectionNode distributionStrategyCollectionNode = GeneratedHierarchy.FindNodeByType(typeof(DistributionStrategyCollectionNode)) as DistributionStrategyCollectionNode;
            Assert.IsNotNull(distributionStrategyCollectionNode);
            distributionStrategyCollectionNode.Nodes.Clear();
            CustomDistributionStrategyNode customNode = new CustomDistributionStrategyNode();
            distributionStrategyCollectionNode.Nodes.AddWithDefaultChildren(customNode);
            customNode.TypeName = typeof(InProcDistributionStrategyData).AssemblyQualifiedName;
            customNode.Name = name;
            GeneratedHierarchy.Save();

            ApplicationConfigurationNode appNode = new ApplicationConfigurationNode(ApplicationData.FromCurrentAppDomain());
            IUIHierarchy hierarchy = CreateHierarchyAndAddToHierarchyService(appNode, CreateDefaultConfiguration());
            HierarchyService.SelectedHierarchy = hierarchy;
            hierarchy.Open();
            LoggingSettingsNode settingsNode = hierarchy.FindNodeByType(typeof(LoggingSettingsNode)) as LoggingSettingsNode;
            Assert.IsNotNull(settingsNode);
            distributionStrategyCollectionNode = hierarchy.FindNodeByType(appNode, typeof(DistributionStrategyCollectionNode)) as DistributionStrategyCollectionNode;
            Assert.IsNotNull(distributionStrategyCollectionNode);
            ConfigurationNode [] nodes = hierarchy.FindNodesByType(distributionStrategyCollectionNode, typeof(CustomDistributionStrategyNode));
            Assert.AreEqual(1, nodes.Length);
            Assert.AreEqual(name, nodes[0].Name);
        }
        private bool LoggingSettingsNodeExists()
        {
            LoggingSettingsNode node = Hierarchy.FindNodeByType(typeof(LoggingSettingsNode)) as LoggingSettingsNode;

            return(node != null);
        }