選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。

44 行
1.7 KiB

  1. using System;
  2. using System.Collections.Generic;
  3. using System.Text;
  4. using Xunit;
  5. using JT809.Protocol;
  6. using JT809.Protocol.Extensions;
  7. using JT809.Protocol.MessageBody;
  8. using JT809.Protocol.Exceptions;
  9. using JT809.Protocol.SubMessageBody;
  10. using JT809.Protocol.Enums;
  11. namespace JT809.Protocol.Test.JT809SubMessageBody
  12. {
  13. public class JT809_0x9400_0x9403Test
  14. {
  15. private JT809Serializer JT809Serializer = new JT809Serializer();
  16. [Fact]
  17. public void Test1()
  18. {
  19. JT809_0x9400_0x9403 jT809_0x9400_0x9403 = new JT809_0x9400_0x9403
  20. {
  21. WarnSrc= JT809WarnSrc.车载终端,
  22. WarnType= JT809WarnType.疲劳驾驶报警,
  23. WarnTime=DateTime.Parse("2018-11-11 10:24:00"),
  24. WarnContent= "疲劳驾驶报警",
  25. };
  26. var hex = JT809Serializer.Serialize(jT809_0x9400_0x9403).ToHexString();
  27. Assert.Equal("010002000000005BE792C00000000CC6A3C0CDBCDDCABBB1A8BEAF", hex);
  28. }
  29. [Fact]
  30. public void Test2()
  31. {
  32. var bytes = "010002000000005BE792C00000000CC6A3C0CDBCDDCABBB1A8BEAF".ToHexBytes();
  33. JT809_0x9400_0x9403 jT809_0x9400_0x9403 = JT809Serializer.Deserialize<JT809_0x9400_0x9403>(bytes);
  34. Assert.Equal(JT809WarnSrc.车载终端, jT809_0x9400_0x9403.WarnSrc);
  35. Assert.Equal(JT809WarnType.疲劳驾驶报警, jT809_0x9400_0x9403.WarnType);
  36. Assert.Equal(DateTime.Parse("2018-11-11 10:24:00"), jT809_0x9400_0x9403.WarnTime);
  37. Assert.Equal("疲劳驾驶报警", jT809_0x9400_0x9403.WarnContent);
  38. Assert.Equal((uint)12, jT809_0x9400_0x9403.WarnLength);
  39. }
  40. }
  41. }