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.

42 line
1.6 KiB

  1. using JTNE.Protocol.Extensions;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.Text;
  5. using Xunit;
  6. using JTNE.Protocol.Enums;
  7. using JTNE.Protocol.MessageBody;
  8. namespace JTNE.Protocol.Test.Package
  9. {
  10. public class JTNE_0x04_PackageTest
  11. {
  12. [Fact]
  13. public void Test1()
  14. {
  15. JTNEPackage jTNEPackage = new JTNEPackage();
  16. jTNEPackage.AskId = JTNEAskId.CMD.ToByteValue();
  17. jTNEPackage.MsgId = JTNEMsgId.loginout.ToByteValue();
  18. jTNEPackage.VIN = "123456789";
  19. JTNE_0x04 jTNE_0X04 = new JTNE_0x04();
  20. jTNE_0X04.LogoutTime = DateTime.Parse("2019-01-23 23:55:56");
  21. jTNE_0X04.LogoutNum = 1;
  22. jTNEPackage.Bodies = jTNE_0X04;
  23. var hex = JTNESerializer.Serialize(jTNEPackage).ToHexString();
  24. Assert.Equal("232304FE31323334353637383900000000000000000100081301171737380001DE", hex);
  25. }
  26. [Fact]
  27. public void Test2()
  28. {
  29. var data = "232304FE31323334353637383900000000000000000100081301171737380001DE".ToHexBytes();
  30. JTNEPackage jTNEPackage = JTNESerializer.Deserialize(data);
  31. Assert.Equal(JTNEAskId.CMD.ToByteValue(), jTNEPackage.AskId);
  32. Assert.Equal(JTNEMsgId.loginout.ToByteValue(), jTNEPackage.MsgId);
  33. Assert.Equal("123456789", jTNEPackage.VIN);
  34. JTNE_0x04 jTNE_0X04 = jTNEPackage.Bodies as JTNE_0x04;
  35. Assert.Equal(DateTime.Parse("2019-01-23 23:55:56"), jTNE_0X04.LogoutTime);
  36. Assert.Equal(1, jTNE_0X04.LogoutNum);
  37. }
  38. }
  39. }