You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

55 lines
3.0 KiB

  1. using JT809.Protocol;
  2. using JT809.Protocol.JT809Extensions;
  3. using JT809.Protocol.JT809MessageBody;
  4. using JT809.Protocol.JT809SubMessageBody;
  5. using JT809.Protocol.JT809Exceptions;
  6. using System;
  7. using System.Collections.Generic;
  8. using System.Text;
  9. using Xunit;
  10. namespace JT809.Protocol.Test.JT809MessageBody
  11. {
  12. public class JT809_0x1200Test
  13. {
  14. [Fact]
  15. public void Test1()
  16. {
  17. JT809_0x1200 jT809_0X1200 = new JT809_0x1200();
  18. jT809_0X1200.VehicleNo= "粤A12345";
  19. jT809_0X1200.VehicleColor = JT809Enums.JT809VehicleColorType.蓝色;
  20. jT809_0X1200.SubBusinessType = JT809Enums.JT809SubBusinessType.UP_EXG_MSG_REGISTER;
  21. jT809_0X1200.DataLength = 61;
  22. JT809_0x1200_0x1201 jT809_0X1200_0X1201 = new JT809_0x1200_0x1201
  23. {
  24. PlateformId = "1111111111",
  25. ProducerId = "1111111111",
  26. TerminalId = "11111AA",
  27. TerminalModelType = "11111111",
  28. TerminalSimCode = "222222222222"
  29. };
  30. jT809_0X1200.JT809SubBodies = jT809_0X1200_0X1201;
  31. var hex = JT809Serializer.Serialize(jT809_0X1200).ToHexString();
  32. //"D4 C1 41 31 32 33 34 35 00 00 00 00 00 00 00 00 00 00 00 00 00 01 12 01 00 00 00 3D 00 00 00 00 00 00 00 42 3A 35 C7 00 00 00 00 00 00 00 42 3A 35 C7 31 31 31 31 31 31 31 31 00 00 00 00 00 00 00 00 00 00 00 00 31 31 31 31 31 41 41 32 32 32 32 32 32 32 32 32 32 32 32"
  33. //"D4 C1 41 31 32 33 34 35 00 00 00 00 00 00 00 00 00 00 00 00 00 01 12 01 00 00 00 3D 00 00 00 00 00 00 00 42 3A 35 C7 00 00 00 00 00 00 00 42 3A 35 C7 31 31 31 31 31 31 31 31 00 00 00 00 00 00 00 00 00 00 00 00 31 31 31 31 31 61 61 32 32 32 32 32 32 32 32 32 32 32 32"
  34. }
  35. [Fact]
  36. public void Test2()
  37. {
  38. var bytes = "D4 C1 41 31 32 33 34 35 00 00 00 00 00 00 00 00 00 00 00 00 00 01 12 01 00 00 00 3D 00 00 00 00 00 00 00 42 3A 35 C7 00 00 00 00 00 00 00 42 3A 35 C7 31 31 31 31 31 31 31 31 00 00 00 00 00 00 00 00 00 00 00 00 31 31 31 31 31 41 41 32 32 32 32 32 32 32 32 32 32 32 32".ToHexBytes();
  39. JT809_0x1200 jT809_0X9001 = JT809Serializer.Deserialize<JT809_0x1200>(bytes);
  40. Assert.Equal("粤A12345", jT809_0X9001.VehicleNo);
  41. Assert.Equal(JT809Enums.JT809VehicleColorType.蓝色, jT809_0X9001.VehicleColor);
  42. Assert.Equal(JT809Enums.JT809SubBusinessType.UP_EXG_MSG_REGISTER, jT809_0X9001.SubBusinessType);
  43. Assert.Equal((ushort)61, jT809_0X9001.DataLength);
  44. JT809_0x1200_0x1201 jT809_0X1200_0X1201 = jT809_0X9001.JT809SubBodies as JT809_0x1200_0x1201;
  45. Assert.Equal("1111111111", jT809_0X1200_0X1201.PlateformId);
  46. Assert.Equal("1111111111", jT809_0X1200_0X1201.ProducerId);
  47. Assert.Equal("11111AA", jT809_0X1200_0X1201.TerminalId);
  48. Assert.Equal("11111111", jT809_0X1200_0X1201.TerminalModelType);
  49. Assert.Equal("222222222222", jT809_0X1200_0X1201.TerminalSimCode);
  50. }
  51. }
  52. }