您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

69 行
2.8 KiB

  1. using JTNE.Protocol.MessageBody;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.Text;
  5. using Xunit;
  6. using JTNE.Protocol.Extensions;
  7. namespace JTNE.Protocol.Test.MessageBody
  8. {
  9. public class JTNE_0x02_0x02Test
  10. {
  11. [Fact]
  12. public void Test1()
  13. {
  14. JTNE_0x02_0x02 jTNE_0X02_0X02 = new JTNE_0x02_0x02();
  15. jTNE_0X02_0X02.Electricals = new List<Metadata.Electrical>();
  16. Metadata.Electrical electrical1 = new Metadata.Electrical();
  17. electrical1.ElControlTemp = 0x01;
  18. electrical1.ElCurrent = 100;
  19. electrical1.ElNo = 0x01;
  20. electrical1.ElSpeed = 65;
  21. electrical1.ElStatus = 0x02;
  22. electrical1.ElTemp = 0x03;
  23. electrical1.ElTorque = 55;
  24. electrical1.ElVoltage = 236;
  25. Metadata.Electrical electrical2 = new Metadata.Electrical();
  26. electrical2.ElControlTemp = 0x02;
  27. electrical2.ElCurrent = 101;
  28. electrical2.ElNo = 0x02;
  29. electrical2.ElSpeed = 66;
  30. electrical2.ElStatus = 0x03;
  31. electrical2.ElTemp = 0x05;
  32. electrical2.ElTorque = 566;
  33. electrical2.ElVoltage = 2136;
  34. jTNE_0X02_0X02.Electricals.Add(electrical1);
  35. jTNE_0X02_0X02.Electricals.Add(electrical2);
  36. var hex = JTNESerializer.Serialize(jTNE_0X02_0X02).ToHexString();
  37. Assert.Equal("0202010201004100370300EC0064020302004202360508580065", hex);
  38. }
  39. [Fact]
  40. public void Test2()
  41. {
  42. var data = "0202010201004100370300EC0064020302004202360508580065".ToHexBytes();
  43. JTNE_0x02_0x02 jTNE_0X02_0X02 = JTNESerializer.Deserialize<JTNE_0x02_0x02>(data);
  44. Assert.Equal(JTNE_0x02_Body.JTNE_0x02_0x02, jTNE_0X02_0X02.TypeCode);
  45. Assert.Equal(2, jTNE_0X02_0X02.ElectricalCount);
  46. Metadata.Electrical electrical1 = jTNE_0X02_0X02.Electricals[0];
  47. Assert.Equal(0x01, electrical1.ElControlTemp);
  48. Assert.Equal(100, electrical1.ElCurrent);
  49. Assert.Equal(0x01, electrical1.ElNo);
  50. Assert.Equal(65, electrical1.ElSpeed);
  51. Assert.Equal(0x02, electrical1.ElStatus);
  52. Assert.Equal(0x03, electrical1.ElTemp);
  53. Assert.Equal(55, electrical1.ElTorque);
  54. Assert.Equal(236, electrical1.ElVoltage);
  55. Metadata.Electrical electrical2 = jTNE_0X02_0X02.Electricals[1];
  56. Assert.Equal(0x02, electrical2.ElControlTemp);
  57. Assert.Equal(101, electrical2.ElCurrent);
  58. Assert.Equal(0x02, electrical2.ElNo);
  59. Assert.Equal(66, electrical2.ElSpeed);
  60. Assert.Equal(0x03, electrical2.ElStatus);
  61. Assert.Equal(0x05, electrical2.ElTemp);
  62. Assert.Equal(566, electrical2.ElTorque);
  63. Assert.Equal(2136, electrical2.ElVoltage);
  64. }
  65. }
  66. }