From 7d54cd8c2cff51dad56e656fa01e89a05aa02f09 Mon Sep 17 00:00:00 2001 From: Andre Rodrigues Date: Mon, 6 Dec 2010 17:07:35 -0800 Subject: [PATCH] Fix UT. --HG-- branch : dev --- src/Orchard.Specs/Bindings/WebAppHosting.cs | 1 - .../Logging/LoggingModuleTests.cs | 39 ++++++++++++------- .../Orchard.Framework.Tests.csproj | 4 ++ 3 files changed, 29 insertions(+), 15 deletions(-) diff --git a/src/Orchard.Specs/Bindings/WebAppHosting.cs b/src/Orchard.Specs/Bindings/WebAppHosting.cs index 93aa54d3c..7d3d839fc 100644 --- a/src/Orchard.Specs/Bindings/WebAppHosting.cs +++ b/src/Orchard.Specs/Bindings/WebAppHosting.cs @@ -105,7 +105,6 @@ namespace Orchard.Specs.Bindings { else logger.Fatal(loggingEvent.RenderedMessage); } - } [Serializable] diff --git a/src/Orchard.Tests/Logging/LoggingModuleTests.cs b/src/Orchard.Tests/Logging/LoggingModuleTests.cs index 810a27cdc..a4da0d9aa 100644 --- a/src/Orchard.Tests/Logging/LoggingModuleTests.cs +++ b/src/Orchard.Tests/Logging/LoggingModuleTests.cs @@ -1,11 +1,15 @@ using System; using System.Collections.Generic; -using System.Diagnostics; using Autofac; +using log4net.Appender; +using log4net.Core; using NUnit.Framework; using Orchard.Environment; using Orchard.Logging; using Orchard.Tests.Environment; +using ILogger = Orchard.Logging.ILogger; +using ILoggerFactory = Orchard.Logging.ILoggerFactory; +using NullLogger = Orchard.Logging.NullLogger; namespace Orchard.Tests.Logging { [TestFixture] @@ -51,18 +55,21 @@ namespace Orchard.Tests.Logging { builder.RegisterType(); builder.RegisterType().As(); var container = builder.Build(); + + log4net.Config.BasicConfigurator.Configure(new MemoryAppender()); + var thing = container.Resolve(); Assert.That(thing.Logger, Is.Not.Null); - InMemoryCapture.Messages.Clear(); + MemoryAppender.Messages.Clear(); thing.Logger.Error("-boom{0}-", 42); - Assert.That(InMemoryCapture.Messages, Has.Some.StringContaining("-boom42-")); + Assert.That(MemoryAppender.Messages, Has.Some.StringContaining("-boom42-")); - InMemoryCapture.Messages.Clear(); + MemoryAppender.Messages.Clear(); thing.Logger.Warning(new ApplicationException("problem"), "crash"); - Assert.That(InMemoryCapture.Messages, Has.Some.StringContaining("problem")); - Assert.That(InMemoryCapture.Messages, Has.Some.StringContaining("crash")); - Assert.That(InMemoryCapture.Messages, Has.Some.StringContaining("ApplicationException")); + Assert.That(MemoryAppender.Messages, Has.Some.StringContaining("problem")); + Assert.That(MemoryAppender.Messages, Has.Some.StringContaining("crash")); + Assert.That(MemoryAppender.Messages, Has.Some.StringContaining("ApplicationException")); } } @@ -70,19 +77,23 @@ namespace Orchard.Tests.Logging { public ILogger Logger { get; set; } } - public class InMemoryCapture : TraceListener { - static InMemoryCapture() { + public class MemoryAppender : IAppender { + static MemoryAppender() { Messages = new List(); } public static List Messages { get; set; } - public override void Write(string message) { - lock (Messages) Messages.Add(message); + public void DoAppend(LoggingEvent loggingEvent) { + if (loggingEvent.ExceptionObject != null) { + lock (Messages) Messages.Add(string.Format("{0} {1} {2}", + loggingEvent.ExceptionObject.GetType().Name, + loggingEvent.ExceptionObject.Message, + loggingEvent.RenderedMessage)); + } else lock (Messages) Messages.Add(loggingEvent.RenderedMessage); } - public override void WriteLine(string message) { - lock (Messages) Messages.Add(message + System.Environment.NewLine); - } + public void Close() { } + public string Name { get; set; } } } diff --git a/src/Orchard.Tests/Orchard.Framework.Tests.csproj b/src/Orchard.Tests/Orchard.Framework.Tests.csproj index 0fcaf7102..164031bce 100644 --- a/src/Orchard.Tests/Orchard.Framework.Tests.csproj +++ b/src/Orchard.Tests/Orchard.Framework.Tests.csproj @@ -90,6 +90,10 @@ ..\..\lib\dlr\IronRuby.Libraries.dll + + False + ..\..\lib\fluentnhibernate\log4net.dll + False