Skip to content

Commit eab7048

Browse files
committed
Improve Unit Tests
1 parent 656a3f9 commit eab7048

31 files changed

+129
-148
lines changed

Source/MQTTnet.TestApp/AsyncLockTest.cs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@
66
using System.Threading;
77
using System.Threading.Tasks;
88
using MQTTnet.Exceptions;
9-
using MQTTnet.Internal;
109

1110
namespace MQTTnet.TestApp;
1211

Source/MQTTnet.Tests/MQTTnet.Tests.csproj

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22

33
<PropertyGroup>
4-
4+
55
<OutputType>Exe</OutputType>
66
<TargetFramework>net8.0</TargetFramework>
77
<IsPackable>false</IsPackable>
@@ -18,9 +18,9 @@
1818

1919
<ItemGroup>
2020
<PackageReference Include="Microsoft.IO.RecyclableMemoryStream" Version="3.0.1" />
21-
<PackageReference Include="MSTest.TestAdapter" Version="3.8.3" />
22-
<PackageReference Include="MSTest.TestFramework" Version="3.8.3" />
23-
21+
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.12.0"/>
22+
<PackageReference Include="MSTest" Version="3.6.4"/>
23+
2424

2525
<FrameworkReference Include="Microsoft.AspNetCore.App" />
2626
</ItemGroup>

Source/MQTTnet/Adapter/ReceivedMqttPacket.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ namespace MQTTnet.Adapter;
88

99
public readonly struct ReceivedMqttPacket
1010
{
11-
public static readonly ReceivedMqttPacket Empty = new();
11+
public static readonly ReceivedMqttPacket Empty;
1212

1313
public ReceivedMqttPacket(byte fixedHeader, ArraySegment<byte> body, int totalLength)
1414
{

Source/MQTTnet/Diagnostics/Logger/IMqttNetLogger.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,5 +10,5 @@ public interface IMqttNetLogger
1010
{
1111
bool IsEnabled { get; }
1212

13-
void Publish(MqttNetLogLevel logLevel, string source, string message, object[] parameters, Exception exception);
13+
void Publish(MqttNetLogLevel level, string source, string message, object[] parameters, Exception exception);
1414
}

Source/MQTTnet/Diagnostics/Logger/MqttNetEventLogger.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,8 @@ public sealed class MqttNetEventLogger(string logId = null) : IMqttNetLogger
1717

1818
public string LogId { get; } = logId;
1919

20+
public IFormatProvider FormatProvider { get; set; }
21+
2022
public void Publish(MqttNetLogLevel level, string source, string message, object[] parameters, Exception exception)
2123
{
2224
var eventHandler = LogMessagePublished;
@@ -32,7 +34,7 @@ public void Publish(MqttNetLogLevel level, string source, string message, object
3234
{
3335
try
3436
{
35-
message = string.Format(message, parameters);
37+
message = string.Format(FormatProvider, message, parameters);
3638
}
3739
catch (FormatException)
3840
{

Source/MQTTnet/Diagnostics/Logger/MqttNetNullLogger.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,9 @@ public sealed class MqttNetNullLogger : IMqttNetLogger
1313
{
1414
public static MqttNetNullLogger Instance { get; } = new();
1515

16-
public bool IsEnabled { get; } = false;
16+
public bool IsEnabled { get; }
1717

18-
public void Publish(MqttNetLogLevel logLevel, string source, string message, object[] parameters, Exception exception)
18+
public void Publish(MqttNetLogLevel level, string source, string message, object[] parameters, Exception exception)
1919
{
2020
}
2121
}

Source/MQTTnet/Disconnecting/MqttClientDisconnectOptionsValidator.cs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
// See the LICENSE file in the project root for more information.
44

55
using System;
6-
using System.Linq;
76
using MQTTnet.Formatter;
87

98
namespace MQTTnet;
@@ -20,7 +19,7 @@ public static void ThrowIfNotSupported(MqttClientDisconnectOptions options, Mqtt
2019
return;
2120
}
2221

23-
if (options.ReasonString?.Any() == true)
22+
if (options.ReasonString?.Length > 0)
2423
{
2524
Throw(nameof(options.ReasonString));
2625
}

Source/MQTTnet/Formatter/IMqttPacketFormatter.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ namespace MQTTnet.Formatter;
99

1010
public interface IMqttPacketFormatter
1111
{
12-
MqttPacket Decode(ReceivedMqttPacket receivedMqttPacket);
12+
MqttPacket Decode(ReceivedMqttPacket receivedPacket);
1313

14-
MqttPacketBuffer Encode(MqttPacket mqttPacket);
14+
MqttPacketBuffer Encode(MqttPacket packet);
1515
}

Source/MQTTnet/Formatter/V3/MqttV3PacketFormatter.cs

Lines changed: 36 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55
using System;
66
using System.Buffers;
77
using System.Collections.Generic;
8-
using System.Linq;
98
using System.Runtime.CompilerServices;
109
using MQTTnet.Adapter;
1110
using MQTTnet.Exceptions;
@@ -30,14 +29,14 @@ public MqttV3PacketFormatter(MqttBufferWriter bufferWriter, MqttProtocolVersion
3029
_mqttProtocolVersion = mqttProtocolVersion;
3130
}
3231

33-
public MqttPacket Decode(ReceivedMqttPacket receivedMqttPacket)
32+
public MqttPacket Decode(ReceivedMqttPacket receivedPacket)
3433
{
35-
if (receivedMqttPacket.TotalLength == 0)
34+
if (receivedPacket.TotalLength == 0)
3635
{
3736
return null;
3837
}
3938

40-
var controlPacketType = receivedMqttPacket.FixedHeader >> 4;
39+
var controlPacketType = receivedPacket.FixedHeader >> 4;
4140
if (controlPacketType is < 1 or > 14)
4241
{
4342
throw new MqttProtocolViolationException($"The packet type is invalid ({controlPacketType}).");
@@ -46,41 +45,41 @@ public MqttPacket Decode(ReceivedMqttPacket receivedMqttPacket)
4645
switch ((MqttControlPacketType)controlPacketType)
4746
{
4847
case MqttControlPacketType.Publish:
49-
return DecodePublishPacket(receivedMqttPacket);
48+
return DecodePublishPacket(receivedPacket);
5049
case MqttControlPacketType.PubAck:
51-
return DecodePubAckPacket(receivedMqttPacket.Body);
50+
return DecodePubAckPacket(receivedPacket.Body);
5251
case MqttControlPacketType.PubRec:
53-
return DecodePubRecPacket(receivedMqttPacket.Body);
52+
return DecodePubRecPacket(receivedPacket.Body);
5453
case MqttControlPacketType.PubRel:
55-
return DecodePubRelPacket(receivedMqttPacket.Body);
54+
return DecodePubRelPacket(receivedPacket.Body);
5655
case MqttControlPacketType.PubComp:
57-
return DecodePubCompPacket(receivedMqttPacket.Body);
56+
return DecodePubCompPacket(receivedPacket.Body);
5857

5958
case MqttControlPacketType.PingReq:
6059
return MqttPingReqPacket.Instance;
6160
case MqttControlPacketType.PingResp:
6261
return MqttPingRespPacket.Instance;
6362

6463
case MqttControlPacketType.Connect:
65-
return DecodeConnectPacket(receivedMqttPacket.Body);
64+
return DecodeConnectPacket(receivedPacket.Body);
6665
case MqttControlPacketType.ConnAck:
6766
if (_mqttProtocolVersion == MqttProtocolVersion.V311)
6867
{
69-
return DecodeConnAckPacketV311(receivedMqttPacket.Body);
68+
return DecodeConnAckPacketV311(receivedPacket.Body);
7069
}
7170

72-
return DecodeConnAckPacket(receivedMqttPacket.Body);
71+
return DecodeConnAckPacket(receivedPacket.Body);
7372
case MqttControlPacketType.Disconnect:
7473
return DisconnectPacket;
7574

7675
case MqttControlPacketType.Subscribe:
77-
return DecodeSubscribePacket(receivedMqttPacket.Body);
76+
return DecodeSubscribePacket(receivedPacket.Body);
7877
case MqttControlPacketType.SubAck:
79-
return DecodeSubAckPacket(receivedMqttPacket.Body);
78+
return DecodeSubAckPacket(receivedPacket.Body);
8079
case MqttControlPacketType.Unsubscribe:
81-
return DecodeUnsubscribePacket(receivedMqttPacket.Body);
80+
return DecodeUnsubscribePacket(receivedPacket.Body);
8281
case MqttControlPacketType.UnsubAck:
83-
return DecodeUnsubAckPacket(receivedMqttPacket.Body);
82+
return DecodeUnsubAckPacket(receivedPacket.Body);
8483

8584
case MqttControlPacketType.Auth:
8685
default:
@@ -123,7 +122,7 @@ public MqttPacketBuffer Encode(MqttPacket packet)
123122
: new MqttPacketBuffer(firstSegment, payload);
124123
}
125124

126-
MqttPacket DecodeConnAckPacket(ArraySegment<byte> body)
125+
MqttConnAckPacket DecodeConnAckPacket(ArraySegment<byte> body)
127126
{
128127
ThrowIfBodyIsEmpty(body);
129128

@@ -137,7 +136,7 @@ MqttPacket DecodeConnAckPacket(ArraySegment<byte> body)
137136
return packet;
138137
}
139138

140-
MqttPacket DecodeConnAckPacketV311(ArraySegment<byte> body)
139+
MqttConnAckPacket DecodeConnAckPacketV311(ArraySegment<byte> body)
141140
{
142141
ThrowIfBodyIsEmpty(body);
143142

@@ -153,7 +152,7 @@ MqttPacket DecodeConnAckPacketV311(ArraySegment<byte> body)
153152
return packet;
154153
}
155154

156-
MqttPacket DecodeConnectPacket(ArraySegment<byte> body)
155+
MqttConnectPacket DecodeConnectPacket(ArraySegment<byte> body)
157156
{
158157
ThrowIfBodyIsEmpty(body);
159158

@@ -221,7 +220,7 @@ MqttPacket DecodeConnectPacket(ArraySegment<byte> body)
221220
return packet;
222221
}
223222

224-
MqttPacket DecodePubAckPacket(ArraySegment<byte> body)
223+
MqttPubAckPacket DecodePubAckPacket(ArraySegment<byte> body)
225224
{
226225
ThrowIfBodyIsEmpty(body);
227226

@@ -233,7 +232,7 @@ MqttPacket DecodePubAckPacket(ArraySegment<byte> body)
233232
};
234233
}
235234

236-
MqttPacket DecodePubCompPacket(ArraySegment<byte> body)
235+
MqttPubCompPacket DecodePubCompPacket(ArraySegment<byte> body)
237236
{
238237
ThrowIfBodyIsEmpty(body);
239238

@@ -245,7 +244,7 @@ MqttPacket DecodePubCompPacket(ArraySegment<byte> body)
245244
};
246245
}
247246

248-
MqttPacket DecodePublishPacket(ReceivedMqttPacket receivedMqttPacket)
247+
MqttPublishPacket DecodePublishPacket(ReceivedMqttPacket receivedMqttPacket)
249248
{
250249
ThrowIfBodyIsEmpty(receivedMqttPacket.Body);
251250

@@ -280,7 +279,7 @@ MqttPacket DecodePublishPacket(ReceivedMqttPacket receivedMqttPacket)
280279
return packet;
281280
}
282281

283-
MqttPacket DecodePubRecPacket(ArraySegment<byte> body)
282+
MqttPubRecPacket DecodePubRecPacket(ArraySegment<byte> body)
284283
{
285284
ThrowIfBodyIsEmpty(body);
286285

@@ -292,7 +291,7 @@ MqttPacket DecodePubRecPacket(ArraySegment<byte> body)
292291
};
293292
}
294293

295-
MqttPacket DecodePubRelPacket(ArraySegment<byte> body)
294+
MqttPubRelPacket DecodePubRelPacket(ArraySegment<byte> body)
296295
{
297296
ThrowIfBodyIsEmpty(body);
298297

@@ -304,7 +303,7 @@ MqttPacket DecodePubRelPacket(ArraySegment<byte> body)
304303
};
305304
}
306305

307-
MqttPacket DecodeSubAckPacket(ArraySegment<byte> body)
306+
MqttSubAckPacket DecodeSubAckPacket(ArraySegment<byte> body)
308307
{
309308
ThrowIfBodyIsEmpty(body);
310309

@@ -324,7 +323,7 @@ MqttPacket DecodeSubAckPacket(ArraySegment<byte> body)
324323
return packet;
325324
}
326325

327-
MqttPacket DecodeSubscribePacket(ArraySegment<byte> body)
326+
MqttSubscribePacket DecodeSubscribePacket(ArraySegment<byte> body)
328327
{
329328
ThrowIfBodyIsEmpty(body);
330329

@@ -349,7 +348,7 @@ MqttPacket DecodeSubscribePacket(ArraySegment<byte> body)
349348
return packet;
350349
}
351350

352-
MqttPacket DecodeUnsubAckPacket(ArraySegment<byte> body)
351+
MqttUnsubAckPacket DecodeUnsubAckPacket(ArraySegment<byte> body)
353352
{
354353
ThrowIfBodyIsEmpty(body);
355354

@@ -361,7 +360,7 @@ MqttPacket DecodeUnsubAckPacket(ArraySegment<byte> body)
361360
};
362361
}
363362

364-
MqttPacket DecodeUnsubscribePacket(ArraySegment<byte> body)
363+
MqttUnsubscribePacket DecodeUnsubscribePacket(ArraySegment<byte> body)
365364
{
366365
ThrowIfBodyIsEmpty(body);
367366

@@ -380,15 +379,15 @@ MqttPacket DecodeUnsubscribePacket(ArraySegment<byte> body)
380379
return packet;
381380
}
382381

383-
byte EncodeConnAckPacket(MqttConnAckPacket packet, MqttBufferWriter bufferWriter)
382+
static byte EncodeConnAckPacket(MqttConnAckPacket packet, MqttBufferWriter bufferWriter)
384383
{
385384
bufferWriter.WriteByte(0); // Reserved.
386385
bufferWriter.WriteByte((byte)packet.ReturnCode);
387386

388387
return MqttBufferWriter.BuildFixedHeader(MqttControlPacketType.ConnAck);
389388
}
390389

391-
byte EncodeConnAckPacketV311(MqttConnAckPacket packet, MqttBufferWriter bufferWriter)
390+
static byte EncodeConnAckPacketV311(MqttConnAckPacket packet, MqttBufferWriter bufferWriter)
392391
{
393392
byte connectAcknowledgeFlags = 0x0;
394393
if (packet.IsSessionPresent)
@@ -402,7 +401,7 @@ byte EncodeConnAckPacketV311(MqttConnAckPacket packet, MqttBufferWriter bufferWr
402401
return MqttBufferWriter.BuildFixedHeader(MqttControlPacketType.ConnAck);
403402
}
404403

405-
byte EncodeConnectPacket(MqttConnectPacket packet, MqttBufferWriter bufferWriter)
404+
static byte EncodeConnectPacket(MqttConnectPacket packet, MqttBufferWriter bufferWriter)
406405
{
407406
ValidateConnectPacket(packet);
408407

@@ -471,7 +470,7 @@ byte EncodeConnectPacket(MqttConnectPacket packet, MqttBufferWriter bufferWriter
471470
return MqttBufferWriter.BuildFixedHeader(MqttControlPacketType.Connect);
472471
}
473472

474-
byte EncodeConnectPacketV311(MqttConnectPacket packet, MqttBufferWriter bufferWriter)
473+
static byte EncodeConnectPacketV311(MqttConnectPacket packet, MqttBufferWriter bufferWriter)
475474
{
476475
ValidateConnectPacket(packet);
477476

@@ -695,7 +694,7 @@ static byte EncodeSubAckPacket(MqttSubAckPacket packet, MqttBufferWriter bufferW
695694

696695
bufferWriter.WriteTwoByteInteger(packet.PacketIdentifier);
697696

698-
if (packet.ReasonCodes.Any())
697+
if (packet.ReasonCodes.Count != 0)
699698
{
700699
foreach (var packetSubscribeReturnCode in packet.ReasonCodes)
701700
{
@@ -723,7 +722,7 @@ static byte EncodeSubAckPacket(MqttSubAckPacket packet, MqttBufferWriter bufferW
723722

724723
static byte EncodeSubscribePacket(MqttSubscribePacket packet, MqttBufferWriter bufferWriter)
725724
{
726-
if (!packet.TopicFilters.Any())
725+
if (packet.TopicFilters.Count == 0)
727726
{
728727
throw new MqttProtocolViolationException("At least one topic filter must be set [MQTT-3.8.3-3].");
729728
}
@@ -760,7 +759,7 @@ static byte EncodeUnsubAckPacket(MqttUnsubAckPacket packet, MqttBufferWriter buf
760759

761760
static byte EncodeUnsubscribePacket(MqttUnsubscribePacket packet, MqttBufferWriter bufferWriter)
762761
{
763-
if (!packet.TopicFilters.Any())
762+
if (packet.TopicFilters.Count == 0)
764763
{
765764
throw new MqttProtocolViolationException("At least one topic filter must be set [MQTT-3.10.3-2].");
766765
}
@@ -772,7 +771,7 @@ static byte EncodeUnsubscribePacket(MqttUnsubscribePacket packet, MqttBufferWrit
772771

773772
bufferWriter.WriteTwoByteInteger(packet.PacketIdentifier);
774773

775-
if (packet.TopicFilters?.Any() == true)
774+
if (packet.TopicFilters?.Count > 0)
776775
{
777776
foreach (var topicFilter in packet.TopicFilters)
778777
{
@@ -792,7 +791,7 @@ static void ThrowIfBodyIsEmpty(ArraySegment<byte> body)
792791
}
793792
}
794793

795-
void ValidateConnectPacket(MqttConnectPacket packet)
794+
static void ValidateConnectPacket(MqttConnectPacket packet)
796795
{
797796
ArgumentNullException.ThrowIfNull(packet);
798797

0 commit comments

Comments
 (0)