diff --git a/src/Seq.Extensions.Logging/Serilog/Core/Logger.cs b/src/Seq.Extensions.Logging/Serilog/Core/Logger.cs
index 27470c9..cd42280 100644
--- a/src/Seq.Extensions.Logging/Serilog/Core/Logger.cs
+++ b/src/Seq.Extensions.Logging/Serilog/Core/Logger.cs
@@ -144,9 +144,7 @@ public Logger ForContext(Type source)
/// True if the level is enabled; otherwise, false.
public bool IsEnabled(LogLevel level)
{
-
- return _levelSwitch == null ||
- (int)level >= (int)_levelSwitch.MinimumLevel;
+ return level != LogLevel.None && (_levelSwitch == null || level >= _levelSwitch.MinimumLevel);
}
///
diff --git a/test/Seq.Extensions.Logging.Tests/Serilog/Extensions/Logging/SerilogLoggerTests.cs b/test/Seq.Extensions.Logging.Tests/Serilog/Extensions/Logging/SerilogLoggerTests.cs
index d54c0d6..f7614ac 100644
--- a/test/Seq.Extensions.Logging.Tests/Serilog/Extensions/Logging/SerilogLoggerTests.cs
+++ b/test/Seq.Extensions.Logging.Tests/Serilog/Extensions/Logging/SerilogLoggerTests.cs
@@ -111,6 +111,19 @@ public void LogsCorrectLevel()
[InlineData(LogLevel.Critical, LogLevel.Warning, 0)]
[InlineData(LogLevel.Critical, LogLevel.Error, 0)]
[InlineData(LogLevel.Critical, LogLevel.Critical, 1)]
+ [InlineData(LogLevel.None, LogLevel.Trace, 0)]
+ [InlineData(LogLevel.None, LogLevel.Debug, 0)]
+ [InlineData(LogLevel.None, LogLevel.Information, 0)]
+ [InlineData(LogLevel.None, LogLevel.Warning, 0)]
+ [InlineData(LogLevel.None, LogLevel.Error, 0)]
+ [InlineData(LogLevel.None, LogLevel.Critical, 0)]
+ [InlineData(LogLevel.None, LogLevel.None, 0)]
+ [InlineData(LogLevel.Critical, LogLevel.None, 0)]
+ [InlineData(LogLevel.Error, LogLevel.None, 0)]
+ [InlineData(LogLevel.Warning, LogLevel.None, 0)]
+ [InlineData(LogLevel.Information, LogLevel.None, 0)]
+ [InlineData(LogLevel.Debug, LogLevel.None, 0)]
+ [InlineData(LogLevel.Trace, LogLevel.None, 0)]
public void LogsWhenEnabled(LogLevel minLevel, LogLevel logLevel, int expected)
{
var (logger, sink) = SetUp(minLevel);