Feature/mqttv5 subscriptions server (#1246)

* Add support for RetainHandling.

* Add support for No Local.

* Add support for _SubscriptionIdentifier_.

* Add more Unit Tests.

* Update docs.
This commit is contained in:
Christian
2021-09-23 20:30:43 +02:00
committed by GitHub
parent feb53e78c6
commit c756a4092f
83 changed files with 2032 additions and 1237 deletions
@@ -0,0 +1,43 @@
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);
}
}
}
}