mirror of
https://github.com/OrchardCMS/Orchard.git
synced 2025-10-15 19:54:57 +08:00
Fix UT.
--HG-- branch : dev
This commit is contained in:
@@ -105,7 +105,6 @@ namespace Orchard.Specs.Bindings {
|
|||||||
else
|
else
|
||||||
logger.Fatal(loggingEvent.RenderedMessage);
|
logger.Fatal(loggingEvent.RenderedMessage);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
[Serializable]
|
[Serializable]
|
||||||
|
@@ -1,11 +1,15 @@
|
|||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Diagnostics;
|
|
||||||
using Autofac;
|
using Autofac;
|
||||||
|
using log4net.Appender;
|
||||||
|
using log4net.Core;
|
||||||
using NUnit.Framework;
|
using NUnit.Framework;
|
||||||
using Orchard.Environment;
|
using Orchard.Environment;
|
||||||
using Orchard.Logging;
|
using Orchard.Logging;
|
||||||
using Orchard.Tests.Environment;
|
using Orchard.Tests.Environment;
|
||||||
|
using ILogger = Orchard.Logging.ILogger;
|
||||||
|
using ILoggerFactory = Orchard.Logging.ILoggerFactory;
|
||||||
|
using NullLogger = Orchard.Logging.NullLogger;
|
||||||
|
|
||||||
namespace Orchard.Tests.Logging {
|
namespace Orchard.Tests.Logging {
|
||||||
[TestFixture]
|
[TestFixture]
|
||||||
@@ -51,18 +55,21 @@ namespace Orchard.Tests.Logging {
|
|||||||
builder.RegisterType<Thing>();
|
builder.RegisterType<Thing>();
|
||||||
builder.RegisterType<StubHostEnvironment>().As<IHostEnvironment>();
|
builder.RegisterType<StubHostEnvironment>().As<IHostEnvironment>();
|
||||||
var container = builder.Build();
|
var container = builder.Build();
|
||||||
|
|
||||||
|
log4net.Config.BasicConfigurator.Configure(new MemoryAppender());
|
||||||
|
|
||||||
var thing = container.Resolve<Thing>();
|
var thing = container.Resolve<Thing>();
|
||||||
Assert.That(thing.Logger, Is.Not.Null);
|
Assert.That(thing.Logger, Is.Not.Null);
|
||||||
|
|
||||||
InMemoryCapture.Messages.Clear();
|
MemoryAppender.Messages.Clear();
|
||||||
thing.Logger.Error("-boom{0}-", 42);
|
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");
|
thing.Logger.Warning(new ApplicationException("problem"), "crash");
|
||||||
Assert.That(InMemoryCapture.Messages, Has.Some.StringContaining("problem"));
|
Assert.That(MemoryAppender.Messages, Has.Some.StringContaining("problem"));
|
||||||
Assert.That(InMemoryCapture.Messages, Has.Some.StringContaining("crash"));
|
Assert.That(MemoryAppender.Messages, Has.Some.StringContaining("crash"));
|
||||||
Assert.That(InMemoryCapture.Messages, Has.Some.StringContaining("ApplicationException"));
|
Assert.That(MemoryAppender.Messages, Has.Some.StringContaining("ApplicationException"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -70,19 +77,23 @@ namespace Orchard.Tests.Logging {
|
|||||||
public ILogger Logger { get; set; }
|
public ILogger Logger { get; set; }
|
||||||
}
|
}
|
||||||
|
|
||||||
public class InMemoryCapture : TraceListener {
|
public class MemoryAppender : IAppender {
|
||||||
static InMemoryCapture() {
|
static MemoryAppender() {
|
||||||
Messages = new List<string>();
|
Messages = new List<string>();
|
||||||
}
|
}
|
||||||
|
|
||||||
public static List<string> Messages { get; set; }
|
public static List<string> Messages { get; set; }
|
||||||
|
|
||||||
public override void Write(string message) {
|
public void DoAppend(LoggingEvent loggingEvent) {
|
||||||
lock (Messages) Messages.Add(message);
|
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) {
|
public void Close() { }
|
||||||
lock (Messages) Messages.Add(message + System.Environment.NewLine);
|
public string Name { get; set; }
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -90,6 +90,10 @@
|
|||||||
<Reference Include="IronRuby.Libraries">
|
<Reference Include="IronRuby.Libraries">
|
||||||
<HintPath>..\..\lib\dlr\IronRuby.Libraries.dll</HintPath>
|
<HintPath>..\..\lib\dlr\IronRuby.Libraries.dll</HintPath>
|
||||||
</Reference>
|
</Reference>
|
||||||
|
<Reference Include="log4net, Version=1.2.10.0, Culture=neutral, PublicKeyToken=1b44e1d426115821, processorArchitecture=MSIL">
|
||||||
|
<SpecificVersion>False</SpecificVersion>
|
||||||
|
<HintPath>..\..\lib\fluentnhibernate\log4net.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
<Reference Include="Microsoft.CSharp" />
|
<Reference Include="Microsoft.CSharp" />
|
||||||
<Reference Include="Microsoft.Dynamic, Version=1.1.0.1, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
<Reference Include="Microsoft.Dynamic, Version=1.1.0.1, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||||
<SpecificVersion>False</SpecificVersion>
|
<SpecificVersion>False</SpecificVersion>
|
||||||
|
Reference in New Issue
Block a user