• Articles
  • Api Documentation
Show / Hide Table of Contents
  • Dapplo.Log
    • AbstractLogger
    • ILogger
    • ILoggerConfiguration
    • LoggerMapper
    • LogInfo
    • LogInfoExtensions
    • LogLevels
    • LogSettings
    • LogSource
    • LogSourceExtensions
    • NullLogger
  • Dapplo.Log.LogFile
    • FileLogger
    • ForwardingLogger
    • IFileLoggerConfiguration
  • Dapplo.Log.Loggers
    • ColorConsoleLogger
    • ConsoleLogger
    • DebugLogger
    • StringWriterLogger
    • TraceLogger
  • Dapplo.Log.XUnit
    • XUnitLogger

Class XUnitLogger

xUnit will have tests run parallel, and due to this it won't capture trace output correctly. This is where their ITestOutputHelper comes around, but Dapplo.Log can only have one logger. This class solves the problem by registering the ITestOutputHelper in the CallContext. Every log statement will retrieve the ITestOutputHelper from the context and use it to log.

Inheritance
System.Object
AbstractLogger
XUnitLogger
Inherited Members
AbstractLogger.Configure(ILoggerConfiguration)
AbstractLogger.Format(LogInfo, String, Object[])
AbstractLogger.UseShortSource
AbstractLogger.DateTimeFormat
AbstractLogger.LogLineFormat
AbstractLogger.ReplacedWith(ILogger)
AbstractLogger.WriteLine(LogInfo, Exception, String, Object[])
System.Object.ToString()
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
Namespace:Dapplo.Log.XUnit
Assembly:Dapplo.Log.XUnit.dll
Syntax
public class XUnitLogger : AbstractLogger, ILogger, ILoggerConfiguration

Constructors

| Improve this Doc View Source

XUnitLogger(ITestOutputHelper)

Prevent the constructor from being use elsewhere, this also makes it impossible to use LogSettings.RegisterDefaultLogger

Declaration
public XUnitLogger(ITestOutputHelper testOutputHelper)
Parameters
Type Name Description
Xunit.Abstractions.ITestOutputHelper testOutputHelper

Properties

| Improve this Doc View Source

LogLevel

LogLevel, this can give a different result pro xUnit test... It will depend on the RegisterLogger value which was used in the current xUnit test

Declaration
public override LogLevels LogLevel { get; set; }
Property Value
Type Description
LogLevels
Overrides
AbstractLogger.LogLevel

Methods

| Improve this Doc View Source

IsLogLevelEnabled(LogLevels, LogSource)

If the level is enabled, this returns true The level depends on what the xUnit test used in the RegisterLogger

Declaration
public override bool IsLogLevelEnabled(LogLevels logLevel, LogSource logSource = null)
Parameters
Type Name Description
LogLevels logLevel

LogLevels enum

LogSource logSource

optional LogSource

Returns
Type Description
System.Boolean

true if the level is enabled

Overrides
AbstractLogger.IsLogLevelEnabled(LogLevels, LogSource)
| Improve this Doc View Source

Write(LogInfo, String, Object[])

There is not Write for the ITestOutputHelper

Declaration
public override void Write(LogInfo logInfo, string messageTemplate, params object[] logParameters)
Parameters
Type Name Description
LogInfo logInfo
System.String messageTemplate
System.Object[] logParameters
Overrides
AbstractLogger.Write(LogInfo, String, Object[])
| Improve this Doc View Source

WriteLine(LogInfo, String, Object[])

Writes the output to the testOutputHelper

Declaration
public override void WriteLine(LogInfo logInfo, string messageTemplate, params object[] logParameters)
Parameters
Type Name Description
LogInfo logInfo

LogInfo

System.String messageTemplate

string

System.Object[] logParameters

params object

Overrides
AbstractLogger.WriteLine(LogInfo, String, Object[])
  • Improve this Doc
  • View Source
Back to top Copyright © 2017 Dapplo