Files
MQTTnet/Tests/MQTTnet.Core.Tests/Mockups/TestApplicationMessageReceivedHandler.cs
T
Christian c756a4092f Feature/mqttv5 subscriptions server (#1246)
* Add support for RetainHandling.

* Add support for No Local.

* Add support for _SubscriptionIdentifier_.

* Add more Unit Tests.

* Update docs.
2021-09-23 20:30:43 +02:00

43 lines
1.3 KiB
C#

using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using MQTTnet.Client.Receiving;
using MQTTnet.Implementations;
namespace MQTTnet.Tests.Mockups
{
public sealed class TestApplicationMessageReceivedHandler : IMqttApplicationMessageReceivedHandler
{
readonly List<MqttApplicationMessage> _messageReceivedEventArgs = new List<MqttApplicationMessage>();
public Task HandleApplicationMessageReceivedAsync(MqttApplicationMessageReceivedEventArgs eventArgs)
{
lock (_messageReceivedEventArgs)
{
_messageReceivedEventArgs.Add(eventArgs.ApplicationMessage);
}
return PlatformAbstractionLayer.CompletedTask;
}
public List<MqttApplicationMessage> ReceivedApplicationMessages
{
get
{
lock (_messageReceivedEventArgs)
{
return _messageReceivedEventArgs.ToList();
}
}
}
public void AssertReceivedCountEquals(int expectedCount)
{
lock (_messageReceivedEventArgs)
{
Assert.AreEqual(expectedCount, _messageReceivedEventArgs.Count);
}
}
}
}