mirror of
https://github.com/dotnet/MQTTnet.git
synced 2026-10-16 01:03:01 +08:00
* Make use of language features line AsyncDispose, init etc. * Fix build errors * Improve Unit Tests * Improve Unit Tests * Improve Unit Tests * Update samples * Remove obsolete benchmarks * Code cleanup * Improve unit tests * Improve Unit Tests * Fix Unit Tests * Improve Unit Tests * Improve Unit Tests * Restore unit tests * Exclude load tests from unit tests
66 lines
2.1 KiB
C#
66 lines
2.1 KiB
C#
// Licensed to the .NET Foundation under one or more agreements.
|
|
// The .NET Foundation licenses this file to you under the MIT license.
|
|
// See the LICENSE file in the project root for more information.
|
|
|
|
using System;
|
|
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
|
using MQTTnet.Diagnostics.Logger;
|
|
|
|
namespace MQTTnet.Tests.Diagnostics;
|
|
|
|
// ReSharper disable InconsistentNaming
|
|
[TestClass]
|
|
public sealed class Logger_Tests : BaseTestClass
|
|
{
|
|
[TestMethod]
|
|
public void Log_Without_Source()
|
|
{
|
|
var logger = new MqttNetEventLogger();
|
|
|
|
MqttNetLogMessage logMessage = null;
|
|
logger.LogMessagePublished += (_, e) => { logMessage = e.LogMessage; };
|
|
|
|
logger.Publish(MqttNetLogLevel.Info, "SOURCE", "MESSAGE", ["ABC"], new InvalidOperationException());
|
|
|
|
Assert.AreEqual(MqttNetLogLevel.Info, logMessage.Level);
|
|
Assert.AreEqual("SOURCE", logMessage.Source);
|
|
Assert.AreEqual("MESSAGE", logMessage.Message);
|
|
Assert.AreEqual("InvalidOperationException", logMessage.Exception.GetType().Name);
|
|
}
|
|
|
|
[TestMethod]
|
|
public void Root_Log_Messages()
|
|
{
|
|
var logger = new MqttNetEventLogger();
|
|
var childLogger = logger.WithSource("Source1");
|
|
|
|
var logMessagesCount = 0;
|
|
|
|
logger.LogMessagePublished += (_, _) => { logMessagesCount++; };
|
|
|
|
childLogger.Verbose("Verbose");
|
|
childLogger.Info("Info");
|
|
childLogger.Warning((Exception)null, "Warning");
|
|
childLogger.Error(null, "Error");
|
|
|
|
Assert.AreEqual(4, logMessagesCount);
|
|
}
|
|
|
|
[TestMethod]
|
|
public void Use_Custom_Log_Id()
|
|
{
|
|
var logger = new MqttNetEventLogger("logId");
|
|
var childLogger = logger.WithSource("Source1");
|
|
|
|
logger.LogMessagePublished += (_, e) =>
|
|
{
|
|
Assert.AreEqual("logId", e.LogMessage.LogId);
|
|
Assert.AreEqual("Source1", e.LogMessage.Source);
|
|
};
|
|
|
|
childLogger.Verbose("Verbose");
|
|
childLogger.Info("Info");
|
|
childLogger.Warning((Exception)null, "Warning");
|
|
childLogger.Error(null, "Error");
|
|
}
|
|
} |