mirror of
https://github.com/dotnet/MQTTnet.git
synced 2026-10-15 00:15:15 +08:00
fixed #743
This commit is contained in:
@@ -17,6 +17,7 @@
|
|||||||
* [Server] Refactoring of server certificate password classes (BREAKING CHANGE!).
|
* [Server] Refactoring of server certificate password classes (BREAKING CHANGE!).
|
||||||
* [Server] Fixed an issue with empty server certificate passwords (thanks to @SeppPenner).
|
* [Server] Fixed an issue with empty server certificate passwords (thanks to @SeppPenner).
|
||||||
* [MQTTnet.Server] Added support for certificate passwords (BREAKING CHANGE IN CONFIG!)
|
* [MQTTnet.Server] Added support for certificate passwords (BREAKING CHANGE IN CONFIG!)
|
||||||
|
* [MQTTnet.AspNetCore] fixed an issue with mqtt V5 package serialization (#743)
|
||||||
</releaseNotes>
|
</releaseNotes>
|
||||||
<copyright>Copyright Christian Kratky 2016-2019</copyright>
|
<copyright>Copyright Christian Kratky 2016-2019</copyright>
|
||||||
<tags>MQTT Message Queue Telemetry Transport MQTTClient MQTTServer Server MQTTBroker Broker NETStandard IoT InternetOfThings Messaging Hardware Arduino Sensor Actuator M2M ESP Smart Home Cities Automation Xamarin</tags>
|
<tags>MQTT Message Queue Telemetry Transport MQTTClient MQTTServer Server MQTTBroker Broker NETStandard IoT InternetOfThings Messaging Hardware Arduino Sensor Actuator M2M ESP Smart Home Cities Automation Xamarin</tags>
|
||||||
|
|||||||
@@ -64,7 +64,6 @@ namespace MQTTnet.AspNetCore
|
|||||||
|
|
||||||
GrowIfNeeded(propertyWriter.Length);
|
GrowIfNeeded(propertyWriter.Length);
|
||||||
Write(propertyWriter.GetBuffer(), 0, propertyWriter.Length);
|
Write(propertyWriter.GetBuffer(), 0, propertyWriter.Length);
|
||||||
Commit(propertyWriter.Length);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void Write(byte[] payload, int start, int length)
|
public void Write(byte[] payload, int start, int length)
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ using Microsoft.VisualStudio.TestTools.UnitTesting;
|
|||||||
using MQTTnet.Adapter;
|
using MQTTnet.Adapter;
|
||||||
using MQTTnet.Formatter;
|
using MQTTnet.Formatter;
|
||||||
using MQTTnet.Formatter.V3;
|
using MQTTnet.Formatter.V3;
|
||||||
|
using MQTTnet.Formatter.V5;
|
||||||
using MQTTnet.Internal;
|
using MQTTnet.Internal;
|
||||||
using MQTTnet.Packets;
|
using MQTTnet.Packets;
|
||||||
using MQTTnet.Protocol;
|
using MQTTnet.Protocol;
|
||||||
@@ -258,6 +259,26 @@ namespace MQTTnet.Tests
|
|||||||
Assert.IsTrue(deserialized.Properties.UserProperties.Any(x => x.Name == "Foo"));
|
Assert.IsTrue(deserialized.Properties.UserProperties.Any(x => x.Name == "Foo"));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
[TestMethod]
|
||||||
|
public void SerializeV500_MqttPublishPacket_CorrelationData()
|
||||||
|
{
|
||||||
|
var data = "123456789";
|
||||||
|
var req = new MqttApplicationMessageBuilder()
|
||||||
|
.WithTopic("Foo")
|
||||||
|
.WithResponseTopic($"_")
|
||||||
|
.WithCorrelationData(Guid.NewGuid().ToByteArray())
|
||||||
|
.WithPayload(data)
|
||||||
|
.WithQualityOfServiceLevel(MqttQualityOfServiceLevel.AtMostOnce)
|
||||||
|
.Build();
|
||||||
|
|
||||||
|
var p = new MqttV500DataConverter().CreatePublishPacket(req);
|
||||||
|
|
||||||
|
var deserialized = Roundtrip(p, MqttProtocolVersion.V500);
|
||||||
|
|
||||||
|
Assert.IsTrue(p.Payload.SequenceEqual(deserialized.Payload));
|
||||||
|
}
|
||||||
|
|
||||||
[TestMethod]
|
[TestMethod]
|
||||||
public void DeserializeV311_MqttPublishPacket()
|
public void DeserializeV311_MqttPublishPacket()
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user