示例#1
0
        public void Setup()
        {
            mockListener = new MockEventListener();
            mockListener.TraceOutputOptions = TraceOptions.LogicalOperationStack | TraceOptions.DateTime;
            mockListener.IndentSize         = 32;
            mockListener.Filter             = new EventTypeFilter(SourceLevels.Error);
            mockListener.IndentLevel        = 12;

            wrapper
                = new AttributeSettingTraceListenerWrapper(
                      mockListener,
                      new NameValueCollection()
            {
                { "foo", "bar" }
            });
        }
        public void CanCreatePoliciesForSysDiagsTraceListenerWithoutInitData()
        {
            SystemDiagnosticsTraceListenerData listenerData
                = new SystemDiagnosticsTraceListenerData("listener", typeof(MockCustomTraceListener), "", TraceOptions.Callstack);

            listenerData.SetAttributeValue(MockCustomTraceListener.AttributeKey, attributeValue);
            loggingSettings.TraceListeners.Add(listenerData);

            using (var container = CreateContainer())
            {
                AttributeSettingTraceListenerWrapper createdObject =
                    container.Resolve <TraceListener>("listener\u200cimplementation") as AttributeSettingTraceListenerWrapper;

                Assert.IsNotNull(createdObject);
                Assert.AreEqual("listener\u200cimplementation", createdObject.Name);
                Assert.AreEqual(TraceOptions.Callstack, createdObject.TraceOutputOptions);
                Assert.AreEqual(typeof(MockCustomTraceListener), createdObject.InnerTraceListener.GetType());
                Assert.AreEqual(null, ((MockCustomTraceListener)createdObject.InnerTraceListener).initData);    // configured with "", but set to null
                Assert.AreEqual(attributeValue, ((MockCustomTraceListener)createdObject.InnerTraceListener).Attribute);
            }
        }