|
|
@@ -0,0 +1,54 @@ |
|
|
|
using Microsoft.VisualStudio.TestTools.UnitTesting; |
|
|
|
using MQTTnet.Exceptions; |
|
|
|
using MQTTnet.Protocol; |
|
|
|
|
|
|
|
namespace MQTTnet.Tests |
|
|
|
{ |
|
|
|
[TestClass] |
|
|
|
public class MqttTopicValidatorSubscribe_Tests |
|
|
|
{ |
|
|
|
[TestMethod] |
|
|
|
public void Valid_Topic() |
|
|
|
{ |
|
|
|
MqttTopicValidator.ThrowIfInvalidSubscribe("/a/b/c"); |
|
|
|
} |
|
|
|
|
|
|
|
[TestMethod] |
|
|
|
public void Valid_Topic_Plus_In_Between() |
|
|
|
{ |
|
|
|
MqttTopicValidator.ThrowIfInvalidSubscribe("/a/+/c"); |
|
|
|
} |
|
|
|
|
|
|
|
[TestMethod] |
|
|
|
public void Valid_Topic_Plus_Last_Char() |
|
|
|
{ |
|
|
|
MqttTopicValidator.ThrowIfInvalidSubscribe("/a/+"); |
|
|
|
} |
|
|
|
|
|
|
|
[TestMethod] |
|
|
|
public void Valid_Topic_Hash_Last_Char() |
|
|
|
{ |
|
|
|
MqttTopicValidator.ThrowIfInvalidSubscribe("/a/#"); |
|
|
|
} |
|
|
|
|
|
|
|
[TestMethod] |
|
|
|
public void Valid_Topic_Only_Hash() |
|
|
|
{ |
|
|
|
MqttTopicValidator.ThrowIfInvalidSubscribe("#"); |
|
|
|
} |
|
|
|
|
|
|
|
[TestMethod] |
|
|
|
[ExpectedException(typeof(MqttProtocolViolationException))] |
|
|
|
public void Invalid_Topic_Hash_In_Between() |
|
|
|
{ |
|
|
|
MqttTopicValidator.ThrowIfInvalidSubscribe("/a/#/c"); |
|
|
|
} |
|
|
|
|
|
|
|
[TestMethod] |
|
|
|
[ExpectedException(typeof(MqttProtocolViolationException))] |
|
|
|
public void Invalid_Topic_Empty() |
|
|
|
{ |
|
|
|
MqttTopicValidator.ThrowIfInvalidSubscribe(string.Empty); |
|
|
|
} |
|
|
|
} |
|
|
|
} |