Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.
 
 
 
 

55 рядки
1.4 KiB

  1. using Microsoft.VisualStudio.TestTools.UnitTesting;
  2. using MQTTnet.Exceptions;
  3. using MQTTnet.Protocol;
  4. namespace MQTTnet.Tests
  5. {
  6. [TestClass]
  7. public class MqttTopicValidatorSubscribe_Tests
  8. {
  9. [TestMethod]
  10. public void Valid_Topic()
  11. {
  12. MqttTopicValidator.ThrowIfInvalidSubscribe("/a/b/c");
  13. }
  14. [TestMethod]
  15. public void Valid_Topic_Plus_In_Between()
  16. {
  17. MqttTopicValidator.ThrowIfInvalidSubscribe("/a/+/c");
  18. }
  19. [TestMethod]
  20. public void Valid_Topic_Plus_Last_Char()
  21. {
  22. MqttTopicValidator.ThrowIfInvalidSubscribe("/a/+");
  23. }
  24. [TestMethod]
  25. public void Valid_Topic_Hash_Last_Char()
  26. {
  27. MqttTopicValidator.ThrowIfInvalidSubscribe("/a/#");
  28. }
  29. [TestMethod]
  30. public void Valid_Topic_Only_Hash()
  31. {
  32. MqttTopicValidator.ThrowIfInvalidSubscribe("#");
  33. }
  34. [TestMethod]
  35. [ExpectedException(typeof(MqttProtocolViolationException))]
  36. public void Invalid_Topic_Hash_In_Between()
  37. {
  38. MqttTopicValidator.ThrowIfInvalidSubscribe("/a/#/c");
  39. }
  40. [TestMethod]
  41. [ExpectedException(typeof(MqttProtocolViolationException))]
  42. public void Invalid_Topic_Empty()
  43. {
  44. MqttTopicValidator.ThrowIfInvalidSubscribe(string.Empty);
  45. }
  46. }
  47. }