using JT809.Protocol; using JT809.Protocol.JT809Extensions; using JT809.Protocol.JT809MessageBody; using JT809.Protocol.JT809SubMessageBody; using JT809.Protocol.JT809Exceptions; using System; using System.Collections.Generic; using System.Text; using Xunit; namespace JT809.Protocol.Test.JT809MessageBody { public class JT809_0x1200Test { [Fact] public void Test1() { JT809_0x1200 jT809_0X1200 = new JT809_0x1200(); jT809_0X1200.VehicleNo= "粤A12345"; jT809_0X1200.VehicleColor = JT809Enums.JT809VehicleColorType.蓝色; jT809_0X1200.SubBusinessType = JT809Enums.JT809SubBusinessType.UP_EXG_MSG_REGISTER; jT809_0X1200.DataLength = 61; JT809_0x1200_0x1201 jT809_0X1200_0X1201 = new JT809_0x1200_0x1201 { PlateformId = "1111111111", ProducerId = "1111111111", TerminalId = "11111AA", TerminalModelType = "11111111", TerminalSimCode = "222222222222" }; jT809_0X1200.JT809SubBodies = jT809_0X1200_0X1201; var hex = JT809Serializer.Serialize(jT809_0X1200).ToHexString(); //"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" //"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" } [Fact] public void Test2() { 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(); JT809_0x1200 jT809_0X9001 = JT809Serializer.Deserialize(bytes); Assert.Equal("粤A12345", jT809_0X9001.VehicleNo); Assert.Equal(JT809Enums.JT809VehicleColorType.蓝色, jT809_0X9001.VehicleColor); Assert.Equal(JT809Enums.JT809SubBusinessType.UP_EXG_MSG_REGISTER, jT809_0X9001.SubBusinessType); Assert.Equal((ushort)61, jT809_0X9001.DataLength); JT809_0x1200_0x1201 jT809_0X1200_0X1201 = jT809_0X9001.JT809SubBodies as JT809_0x1200_0x1201; Assert.Equal("1111111111", jT809_0X1200_0X1201.PlateformId); Assert.Equal("1111111111", jT809_0X1200_0X1201.ProducerId); Assert.Equal("11111AA", jT809_0X1200_0X1201.TerminalId); Assert.Equal("11111111", jT809_0X1200_0X1201.TerminalModelType); Assert.Equal("222222222222", jT809_0X1200_0X1201.TerminalSimCode); } } }