/// <summary> /// Add an appender X, Y, remove X and check if Y is the only /// remaining appender. /// </summary> [Test] public void TestAppender2() { CountingAppender a1 = new CountingAppender(); a1.Name = "testAppender2.1"; CountingAppender a2 = new CountingAppender(); a2.Name = "testAppender2.2"; log = LogManager.GetLogger("test").Logger as Logger; log.AddAppender(a1); log.AddAppender(a2); CountingAppender aHat = (CountingAppender)log.GetAppender(a1.Name); Assert.AreEqual(a1, aHat); aHat = (CountingAppender)log.GetAppender(a2.Name); Assert.AreEqual(a2, aHat); log.RemoveAppender("testAppender2.1"); IEnumerator enumAppenders = ((IEnumerable)log.Appenders).GetEnumerator(); Assert.IsTrue( enumAppenders.MoveNext() ); aHat = (CountingAppender) enumAppenders.Current; Assert.AreEqual(a2, aHat); Assert.IsTrue(!enumAppenders.MoveNext()); aHat = (CountingAppender)log.GetAppender(a2.Name); Assert.AreEqual(a2, aHat); }
/// <summary> /// Add an appender and see if it can be retrieved. /// </summary> [Test] public void TestAppender1() { log = LogManager.GetLogger("test").Logger as Logger; CountingAppender a1 = new CountingAppender(); a1.Name = "testAppender1"; log.AddAppender(a1); IEnumerator enumAppenders = ((IEnumerable)log.Appenders).GetEnumerator(); Assert.IsTrue( enumAppenders.MoveNext() ); CountingAppender aHat = (CountingAppender) enumAppenders.Current; Assert.AreEqual(a1, aHat); }
public void AddingMultipleAppenders2() { CountingAppender alpha = new CountingAppender(); CountingAppender beta = new CountingAppender(); BasicConfigurator.Configure(alpha, beta); ILog log = LogManager.GetLogger(GetType()); log.Debug("Hello World"); Assert.AreEqual(1, alpha.Counter); Assert.AreEqual(1, beta.Counter); }
public void AddingMultipleAppenders() { CountingAppender alpha = new CountingAppender(); CountingAppender beta = new CountingAppender(); Repository.Hierarchy.Hierarchy hierarchy = (Repository.Hierarchy.Hierarchy)LogManager.GetRepository(); hierarchy.Root.AddAppender(alpha); hierarchy.Root.AddAppender(beta); hierarchy.Configured = true; ILog log = LogManager.GetLogger(GetType()); log.Debug("Hello World"); Assert.AreEqual(1, alpha.Counter); Assert.AreEqual(1, beta.Counter); }
private void SetupRepository() { m_hierarchy = new Repository.Hierarchy.Hierarchy(); m_countingAppender = new CountingAppender(); m_countingAppender.ActivateOptions(); m_bufferingForwardingAppender = new BufferingForwardingAppender(); m_bufferingForwardingAppender.AddAppender(m_countingAppender); m_bufferingForwardingAppender.BufferSize = 0; m_bufferingForwardingAppender.ClearFilters(); m_bufferingForwardingAppender.Evaluator = null; m_bufferingForwardingAppender.Fix = FixFlags.Partial; m_bufferingForwardingAppender.Lossy = false; m_bufferingForwardingAppender.LossyEvaluator = null; m_bufferingForwardingAppender.Threshold = Level.All; m_bufferingForwardingAppender.ActivateOptions(); log4net.Config.BasicConfigurator.Configure(m_hierarchy, m_bufferingForwardingAppender); }
/// <summary> /// Test the ability to disable a level of message /// </summary> [Test] public void TestDisable1() { CountingAppender caRoot = new CountingAppender(); Logger root = ((log4net.Repository.Hierarchy.Hierarchy)LogManager.GetRepository()).Root; root.AddAppender(caRoot); log4net.Repository.Hierarchy.Hierarchy h = ((log4net.Repository.Hierarchy.Hierarchy)LogManager.GetRepository()); h.Threshold = Level.Info; h.Configured = true; Assert.AreEqual(caRoot.Counter, 0); root.Log(Level.Debug, MSG, null); Assert.AreEqual(caRoot.Counter, 0); root.Log(Level.Info, MSG, null); Assert.AreEqual(caRoot.Counter, 1); root.Log(Level.Warn, MSG, null); Assert.AreEqual(caRoot.Counter, 2); root.Log(Level.Warn, MSG, null); Assert.AreEqual(caRoot.Counter, 3); h.Threshold = Level.Warn; root.Log(Level.Debug, MSG, null); Assert.AreEqual(caRoot.Counter, 3); root.Log(Level.Info, MSG, null); Assert.AreEqual(caRoot.Counter, 3); root.Log(Level.Warn, MSG, null); Assert.AreEqual(caRoot.Counter, 4); root.Log(Level.Error, MSG, null); Assert.AreEqual(caRoot.Counter, 5); root.Log(Level.Error, MSG, null); Assert.AreEqual(caRoot.Counter, 6); h.Threshold = Level.Off; root.Log(Level.Debug, MSG, null); Assert.AreEqual(caRoot.Counter, 6); root.Log(Level.Info, MSG, null); Assert.AreEqual(caRoot.Counter, 6); root.Log(Level.Warn, MSG, null); Assert.AreEqual(caRoot.Counter, 6); root.Log(Level.Error, MSG, null); Assert.AreEqual(caRoot.Counter, 6); root.Log(Level.Fatal, MSG, null); Assert.AreEqual(caRoot.Counter, 6); root.Log(Level.Fatal, MSG, null); Assert.AreEqual(caRoot.Counter, 6); }
/// <summary> /// Test additivity flag. /// </summary> [Test] public void TestAdditivity3() { Logger root = ((log4net.Repository.Hierarchy.Hierarchy)LogManager.GetRepository()).Root; Logger a = LogManager.GetLogger("a").Logger as Logger; Logger ab = LogManager.GetLogger("a.b").Logger as Logger; Logger abc = LogManager.GetLogger("a.b.c").Logger as Logger; CountingAppender caRoot = new CountingAppender(); CountingAppender caA = new CountingAppender(); CountingAppender caABC = new CountingAppender(); root.AddAppender(caRoot); a.AddAppender(caA); abc.AddAppender(caABC); a.Repository.Configured = true; Assert.AreEqual(caRoot.Counter, 0); Assert.AreEqual(caA.Counter, 0); Assert.AreEqual(caABC.Counter, 0); ab.Additivity = false; a.Log(Level.Debug, MSG, null); Assert.AreEqual(caRoot.Counter, 1); Assert.AreEqual(caA.Counter, 1); Assert.AreEqual(caABC.Counter, 0); ab.Log(Level.Debug, MSG, null); Assert.AreEqual(caRoot.Counter, 1); Assert.AreEqual(caA.Counter, 1); Assert.AreEqual(caABC.Counter, 0); abc.Log(Level.Debug, MSG, null); Assert.AreEqual(caRoot.Counter, 1); Assert.AreEqual(caA.Counter, 1); Assert.AreEqual(caABC.Counter, 1); }
/// <summary> /// Test multiple additivity. /// </summary> [Test] public void TestAdditivity2() { Logger a = LogManager.GetLogger("a").Logger as Logger; Logger ab = LogManager.GetLogger("a.b").Logger as Logger; Logger abc = LogManager.GetLogger("a.b.c").Logger as Logger; Logger x = LogManager.GetLogger("x").Logger as Logger; CountingAppender ca1 = new CountingAppender(); CountingAppender ca2 = new CountingAppender(); a.AddAppender(ca1); abc.AddAppender(ca2); a.Repository.Configured = true; Assert.AreEqual(ca1.Counter, 0); Assert.AreEqual(ca2.Counter, 0); ab.Log(Level.Debug, MSG, null); Assert.AreEqual(ca1.Counter, 1); Assert.AreEqual(ca2.Counter, 0); abc.Log(Level.Debug, MSG, null); Assert.AreEqual(ca1.Counter, 2); Assert.AreEqual(ca2.Counter, 1); x.Log(Level.Debug, MSG, null); Assert.AreEqual(ca1.Counter, 2); Assert.AreEqual(ca2.Counter, 1); }
/// <summary> /// Test if logger a.b inherits its appender from a. /// </summary> [Test] public void TestAdditivity1() { Logger a = LogManager.GetLogger("a").Logger as Logger; Logger ab = LogManager.GetLogger("a.b").Logger as Logger; CountingAppender ca = new CountingAppender(); a.AddAppender(ca); a.Repository.Configured = true; Assert.AreEqual(ca.Counter, 0); ab.Log(Level.Debug, MSG, null); Assert.AreEqual(ca.Counter, 1); ab.Log(Level.Info, MSG, null); Assert.AreEqual(ca.Counter, 2); ab.Log(Level.Warn, MSG, null); Assert.AreEqual(ca.Counter, 3); ab.Log(Level.Error, MSG, null); Assert.AreEqual(ca.Counter, 4); }