public void Test2() { var data = "0202010201004100370300EC0064020302004202360508580065".ToHexBytes(); JTNE_0x02_0x02_Device jTNE_0X02_0X02_Device = JTNESerializer_Device.Deserialize <JTNE_0x02_0x02_Device>(data); Assert.Equal(JTNE_0x02_Body_Device.JTNE_0x02_0x02_Device, jTNE_0X02_0X02_Device.TypeCode); Assert.Equal(2, jTNE_0X02_0X02_Device.ElectricalCount); Metadata.Electrical electrical1 = jTNE_0X02_0X02_Device.Electricals[0]; Assert.Equal(0x01, electrical1.ElControlTemp); Assert.Equal(100, electrical1.ElCurrent); Assert.Equal(0x01, electrical1.ElNo); Assert.Equal(65, electrical1.ElSpeed); Assert.Equal(0x02, electrical1.ElStatus); Assert.Equal(0x03, electrical1.ElTemp); Assert.Equal(55, electrical1.ElTorque); Assert.Equal(236, electrical1.ElVoltage); Metadata.Electrical electrical2 = jTNE_0X02_0X02_Device.Electricals[1]; Assert.Equal(0x02, electrical2.ElControlTemp); Assert.Equal(101, electrical2.ElCurrent); Assert.Equal(0x02, electrical2.ElNo); Assert.Equal(66, electrical2.ElSpeed); Assert.Equal(0x03, electrical2.ElStatus); Assert.Equal(0x05, electrical2.ElTemp); Assert.Equal(566, electrical2.ElTorque); Assert.Equal(2136, electrical2.ElVoltage); }
public void Test1() { JTNE_0x02_0x02_Device jTNE_0X02_0X02_Device = new JTNE_0x02_0x02_Device(); jTNE_0X02_0X02_Device.Electricals = new List <Metadata.Electrical>(); Metadata.Electrical electrical1 = new Metadata.Electrical(); electrical1.ElControlTemp = 0x01; electrical1.ElCurrent = 100; electrical1.ElNo = 0x01; electrical1.ElSpeed = 65; electrical1.ElStatus = 0x02; electrical1.ElTemp = 0x03; electrical1.ElTorque = 55; electrical1.ElVoltage = 236; Metadata.Electrical electrical2 = new Metadata.Electrical(); electrical2.ElControlTemp = 0x02; electrical2.ElCurrent = 101; electrical2.ElNo = 0x02; electrical2.ElSpeed = 66; electrical2.ElStatus = 0x03; electrical2.ElTemp = 0x05; electrical2.ElTorque = 566; electrical2.ElVoltage = 2136; jTNE_0X02_0X02_Device.Electricals.Add(electrical1); jTNE_0X02_0X02_Device.Electricals.Add(electrical2); var hex = JTNESerializer_Device.Serialize(jTNE_0X02_0X02_Device).ToHexString(); Assert.Equal("0202010201004100370300EC0064020302004202360508580065", hex); }
public void Test2() { var data = "01040507003A00001A0A00640063030602007B0202010201004100370300EC00640203020042023605085800650308AE006F0C9600030102030D1B221A0A560D086502".ToHexBytes(); JTNE_0x03_Platform jTNE_0X03_Platform = JTNESerializer_Platform.Deserialize <JTNE_0x03_Platform>(data); JTNE_0x02_Platform jTNE_0X02_Platform = jTNE_0X03_Platform.Supplement; JTNE_0x02_0x01_Platform jTNE_0X02_0X01_Platform = jTNE_0X02_Platform.Values[JTNE_0x02_Body_Platform.JTNE_0x02_0x01_Platform] as JTNE_0x02_0x01_Platform; Assert.Equal(JTNE_0x02_Body_Platform.JTNE_0x02_0x01_Platform, jTNE_0X02_0X01_Platform.TypeCode); Assert.Equal(0x04, jTNE_0X02_0X01_Platform.CarStatus); Assert.Equal(0x05, jTNE_0X02_0X01_Platform.ChargeStatus); Assert.Equal(0x06, jTNE_0X02_0X01_Platform.DCStatus); Assert.Equal(0x07, jTNE_0X02_0X01_Platform.OperationMode); Assert.Equal(123, jTNE_0X02_0X01_Platform.Resistance); Assert.Equal(0x03, jTNE_0X02_0X01_Platform.SOC); Assert.Equal(58, jTNE_0X02_0X01_Platform.Speed); Assert.Equal(0x02, jTNE_0X02_0X01_Platform.Stall); Assert.Equal((uint)6666, jTNE_0X02_0X01_Platform.TotalDis); Assert.Equal(99, jTNE_0X02_0X01_Platform.TotalTemp); Assert.Equal(100, jTNE_0X02_0X01_Platform.TotalVoltage); JTNE_0x02_0x02_Platform jTNE_0X02_0X02_Platform = jTNE_0X02_Platform.Values[JTNE_0x02_Body_Platform.JTNE_0x02_0x02_Platform] as JTNE_0x02_0x02_Platform; Assert.Equal(JTNE_0x02_Body_Platform.JTNE_0x02_0x02_Platform, jTNE_0X02_0X02_Platform.TypeCode); Assert.Equal(2, jTNE_0X02_0X02_Platform.ElectricalCount); Metadata.Electrical electrical1 = jTNE_0X02_0X02_Platform.Electricals[0]; Assert.Equal(0x01, electrical1.ElControlTemp); Assert.Equal(100, electrical1.ElCurrent); Assert.Equal(0x01, electrical1.ElNo); Assert.Equal(65, electrical1.ElSpeed); Assert.Equal(0x02, electrical1.ElStatus); Assert.Equal(0x03, electrical1.ElTemp); Assert.Equal(55, electrical1.ElTorque); Assert.Equal(236, electrical1.ElVoltage); Metadata.Electrical electrical2 = jTNE_0X02_0X02_Platform.Electricals[1]; Assert.Equal(0x02, electrical2.ElControlTemp); Assert.Equal(101, electrical2.ElCurrent); Assert.Equal(0x02, electrical2.ElNo); Assert.Equal(66, electrical2.ElSpeed); Assert.Equal(0x03, electrical2.ElStatus); Assert.Equal(0x05, electrical2.ElTemp); Assert.Equal(566, electrical2.ElTorque); Assert.Equal(2136, electrical2.ElVoltage); JTNE_0x02_0x03_Platform jTNE_0X02_0X03_Platform = jTNE_0X02_Platform.Values[JTNE_0x02_Body_Platform.JTNE_0x02_0x03_Platform] as JTNE_0x02_0x03_Platform; Assert.Equal(JTNE_0x02_Body_Platform.JTNE_0x02_0x03_Platform, jTNE_0X02_0X03_Platform.TypeCode); Assert.Equal(0x02, jTNE_0X02_0X03_Platform.DCStatus); Assert.Equal(111, jTNE_0X02_0X03_Platform.FuelBatteryCurrent); Assert.Equal(2222, jTNE_0X02_0X03_Platform.FuelBatteryVoltage); Assert.Equal(3222, jTNE_0X02_0X03_Platform.FuelConsumptionRate); Assert.Equal(6666, jTNE_0X02_0X03_Platform.HydrogenSystemMaxConcentrations); Assert.Equal(0x56, jTNE_0X02_0X03_Platform.HydrogenSystemMaxConcentrationsNo); Assert.Equal(3336, jTNE_0X02_0X03_Platform.HydrogenSystemMaxPressure); Assert.Equal(0x65, jTNE_0X02_0X03_Platform.HydrogenSystemMaxPressureNo); Assert.Equal(3355, jTNE_0X02_0X03_Platform.HydrogenSystemMaxTemp); Assert.Equal(0x22, jTNE_0X02_0X03_Platform.HydrogenSystemMaxTempNo); Assert.Equal(new byte[] { 0x01, 0x02, 0x03 }, jTNE_0X02_0X03_Platform.Temperatures); }
public JTNE_0x02_0x02 Deserialize(ReadOnlySpan <byte> bytes, out int readSize) { int offset = 0; JTNE_0x02_0x02 jTNE_0X02_0X02 = new JTNE_0x02_0x02(); jTNE_0X02_0X02.TypeCode = JTNEBinaryExtensions.ReadByteLittle(bytes, ref offset); jTNE_0X02_0X02.ElectricalCount = JTNEBinaryExtensions.ReadByteLittle(bytes, ref offset); jTNE_0X02_0X02.Electricals = new List <Metadata.Electrical>(); for (var i = 0; i < jTNE_0X02_0X02.ElectricalCount; i++) { Metadata.Electrical electrical = new Metadata.Electrical(); electrical.ElNo = JTNEBinaryExtensions.ReadByteLittle(bytes, ref offset); electrical.ElStatus = JTNEBinaryExtensions.ReadByteLittle(bytes, ref offset); electrical.ElControlTemp = JTNEBinaryExtensions.ReadByteLittle(bytes, ref offset); electrical.ElSpeed = JTNEBinaryExtensions.ReadUInt16Little(bytes, ref offset); electrical.ElTorque = JTNEBinaryExtensions.ReadUInt16Little(bytes, ref offset); electrical.ElTemp = JTNEBinaryExtensions.ReadByteLittle(bytes, ref offset); electrical.ElVoltage = JTNEBinaryExtensions.ReadUInt16Little(bytes, ref offset); electrical.ElCurrent = JTNEBinaryExtensions.ReadUInt16Little(bytes, ref offset); jTNE_0X02_0X02.Electricals.Add(electrical); } readSize = offset; return(jTNE_0X02_0X02); }
public void Test1() { JTNEGlobalConfigs.Instance.Register_JTNE0x02CustomBody_Device(0xA1, typeof(JTNE_0x02_0xA1_Device)); JTNEGlobalConfigs.Instance.Register_JTNE0x02CustomBody_Device(0xA2, typeof(JTNE_0x02_0xA2_Device)); JTNE_0x02_Device jTNE_0X02_Device = new JTNE_0x02_Device(); jTNE_0X02_Device.Values = new Dictionary <byte, JTNE_0x02_Body_Device>(); jTNE_0X02_Device.CusotmSerializeObjectValues = new Dictionary <byte, JTNE_0x02_CustomBody_Device>(); JTNE_0x02_0x01_Device jTNE_0X02_0X01_Device = new JTNE_0x02_0x01_Device(); jTNE_0X02_0X01_Device.Accelerator = 0x02; jTNE_0X02_0X01_Device.Brakes = 0x03; jTNE_0X02_0X01_Device.CarStatus = 0x04; jTNE_0X02_0X01_Device.ChargeStatus = 0x05; jTNE_0X02_0X01_Device.DCStatus = 0x06; jTNE_0X02_0X01_Device.OperationMode = 0x07; jTNE_0X02_0X01_Device.Resistance = 123; jTNE_0X02_0X01_Device.SOC = 0x03; jTNE_0X02_0X01_Device.Speed = 58; jTNE_0X02_0X01_Device.Stall = 0x02; jTNE_0X02_0X01_Device.TotalDis = 6666; jTNE_0X02_0X01_Device.TotalTemp = 99; jTNE_0X02_0X01_Device.TotalVoltage = 100; jTNE_0X02_Device.Values.Add(JTNE_0x02_Body_Device.JTNE_0x02_0x01_Device, jTNE_0X02_0X01_Device); JTNE_0x02_0x02_Device jTNE_0X02_0X02_Device = new JTNE_0x02_0x02_Device(); jTNE_0X02_0X02_Device.Electricals = new List <Metadata.Electrical>(); Metadata.Electrical electrical1 = new Metadata.Electrical(); electrical1.ElControlTemp = 0x01; electrical1.ElCurrent = 100; electrical1.ElNo = 0x01; electrical1.ElSpeed = 65; electrical1.ElStatus = 0x02; electrical1.ElTemp = 0x03; electrical1.ElTorque = 55; electrical1.ElVoltage = 236; Metadata.Electrical electrical2 = new Metadata.Electrical(); electrical2.ElControlTemp = 0x02; electrical2.ElCurrent = 101; electrical2.ElNo = 0x02; electrical2.ElSpeed = 66; electrical2.ElStatus = 0x03; electrical2.ElTemp = 0x05; electrical2.ElTorque = 566; electrical2.ElVoltage = 2136; jTNE_0X02_0X02_Device.Electricals.Add(electrical1); jTNE_0X02_0X02_Device.Electricals.Add(electrical2); jTNE_0X02_Device.Values.Add(JTNE_0x02_Body_Device.JTNE_0x02_0x02_Device, jTNE_0X02_0X02_Device); JTNE_0x02_0x03_Device jTNE_0X02_0X03_Device = new JTNE_0x02_0x03_Device(); jTNE_0X02_0X03_Device.DCStatus = 0x02; jTNE_0X02_0X03_Device.FuelBatteryCurrent = 111; jTNE_0X02_0X03_Device.FuelBatteryVoltage = 2222; jTNE_0X02_0X03_Device.FuelConsumptionRate = 3222; jTNE_0X02_0X03_Device.HydrogenSystemMaxConcentrations = 6666; jTNE_0X02_0X03_Device.HydrogenSystemMaxConcentrationsNo = 0x56; jTNE_0X02_0X03_Device.HydrogenSystemMaxPressure = 3336; jTNE_0X02_0X03_Device.HydrogenSystemMaxPressureNo = 0x65; jTNE_0X02_0X03_Device.HydrogenSystemMaxTemp = 3355; jTNE_0X02_0X03_Device.HydrogenSystemMaxTempNo = 0x22; jTNE_0X02_0X03_Device.Temperatures = new byte[] { 0x01, 0x02, 0x03 }; jTNE_0X02_Device.Values.Add(JTNE_0x02_Body_Device.JTNE_0x02_0x03_Device, jTNE_0X02_0X03_Device); JTNE_0x02_0xA1_Device jTNE_0X02_0XA1_Device = new JTNE_0x02_0xA1_Device(); jTNE_0X02_0XA1_Device.UserName = "******"; jTNE_0X02_0XA1_Device.Age = 18; jTNE_0X02_Device.CusotmSerializeObjectValues.Add(0xA1, jTNE_0X02_0XA1_Device); JTNE_0x02_0xA2_Device jTNE_0X02_0XA2_Device = new JTNE_0x02_0xA2_Device(); jTNE_0X02_0XA2_Device.CompanyName = "小池有限公司"; jTNE_0X02_Device.CusotmSerializeObjectValues.Add(0xA2, jTNE_0X02_0XA2_Device); var hex = JTNESerializer_Device.Serialize(jTNE_0X02_Device).ToHexString(); Assert.Equal("01040507003A00001A0A00640063030602007B02030202010201004100370300EC00640203020042023605085800650308AE006F0C9600030102030D1B221A0A560D086502A1000E536D616C6C436869000000000012A20014E5B08FE6B1A0E69C89E99990E585ACE58FB80000", hex); }
public void Test2() { JTNEGlobalConfigs.Instance.Register_JTNE0x02CustomBody_Device(0xA1, typeof(JTNE_0x02_0xA1_Device)); JTNEGlobalConfigs.Instance.Register_JTNE0x02CustomBody_Device(0xA2, typeof(JTNE_0x02_0xA2_Device)); var data = "01040507003A00001A0A00640063030602007B02030202010201004100370300EC00640203020042023605085800650308AE006F0C9600030102030D1B221A0A560D086502A1000E536D616C6C436869000000000012A20014E5B08FE6B1A0E69C89E99990E585ACE58FB80000".ToHexBytes(); JTNE_0x02_Device jTNE_0X02_Device = JTNESerializer_Device.Deserialize <JTNE_0x02_Device>(data); JTNE_0x02_0x01_Device jTNE_0X02_0X01_Device = jTNE_0X02_Device.Values[JTNE_0x02_Body_Device.JTNE_0x02_0x01_Device] as JTNE_0x02_0x01_Device; Assert.Equal(JTNE_0x02_Body_Device.JTNE_0x02_0x01_Device, jTNE_0X02_0X01_Device.TypeCode); Assert.Equal(0x02, jTNE_0X02_0X01_Device.Accelerator); Assert.Equal(0x03, jTNE_0X02_0X01_Device.Brakes); Assert.Equal(0x04, jTNE_0X02_0X01_Device.CarStatus); Assert.Equal(0x05, jTNE_0X02_0X01_Device.ChargeStatus); Assert.Equal(0x06, jTNE_0X02_0X01_Device.DCStatus); Assert.Equal(0x07, jTNE_0X02_0X01_Device.OperationMode); Assert.Equal(123, jTNE_0X02_0X01_Device.Resistance); Assert.Equal(0x03, jTNE_0X02_0X01_Device.SOC); Assert.Equal(58, jTNE_0X02_0X01_Device.Speed); Assert.Equal(0x02, jTNE_0X02_0X01_Device.Stall); Assert.Equal((uint)6666, jTNE_0X02_0X01_Device.TotalDis); Assert.Equal(99, jTNE_0X02_0X01_Device.TotalTemp); Assert.Equal(100, jTNE_0X02_0X01_Device.TotalVoltage); JTNE_0x02_0x02_Device jTNE_0X02_0X02_Device = jTNE_0X02_Device.Values[JTNE_0x02_Body_Device.JTNE_0x02_0x02_Device] as JTNE_0x02_0x02_Device; Assert.Equal(JTNE_0x02_Body_Device.JTNE_0x02_0x02_Device, jTNE_0X02_0X02_Device.TypeCode); Assert.Equal(2, jTNE_0X02_0X02_Device.ElectricalCount); Metadata.Electrical electrical1 = jTNE_0X02_0X02_Device.Electricals[0]; Assert.Equal(0x01, electrical1.ElControlTemp); Assert.Equal(100, electrical1.ElCurrent); Assert.Equal(0x01, electrical1.ElNo); Assert.Equal(65, electrical1.ElSpeed); Assert.Equal(0x02, electrical1.ElStatus); Assert.Equal(0x03, electrical1.ElTemp); Assert.Equal(55, electrical1.ElTorque); Assert.Equal(236, electrical1.ElVoltage); Metadata.Electrical electrical2 = jTNE_0X02_0X02_Device.Electricals[1]; Assert.Equal(0x02, electrical2.ElControlTemp); Assert.Equal(101, electrical2.ElCurrent); Assert.Equal(0x02, electrical2.ElNo); Assert.Equal(66, electrical2.ElSpeed); Assert.Equal(0x03, electrical2.ElStatus); Assert.Equal(0x05, electrical2.ElTemp); Assert.Equal(566, electrical2.ElTorque); Assert.Equal(2136, electrical2.ElVoltage); JTNE_0x02_0x03_Device jTNE_0X02_0X03_Device = jTNE_0X02_Device.Values[JTNE_0x02_Body_Device.JTNE_0x02_0x03_Device] as JTNE_0x02_0x03_Device; Assert.Equal(JTNE_0x02_Body_Device.JTNE_0x02_0x03_Device, jTNE_0X02_0X03_Device.TypeCode); Assert.Equal(0x02, jTNE_0X02_0X03_Device.DCStatus); Assert.Equal(111, jTNE_0X02_0X03_Device.FuelBatteryCurrent); Assert.Equal(2222, jTNE_0X02_0X03_Device.FuelBatteryVoltage); Assert.Equal(3222, jTNE_0X02_0X03_Device.FuelConsumptionRate); Assert.Equal(6666, jTNE_0X02_0X03_Device.HydrogenSystemMaxConcentrations); Assert.Equal(0x56, jTNE_0X02_0X03_Device.HydrogenSystemMaxConcentrationsNo); Assert.Equal(3336, jTNE_0X02_0X03_Device.HydrogenSystemMaxPressure); Assert.Equal(0x65, jTNE_0X02_0X03_Device.HydrogenSystemMaxPressureNo); Assert.Equal(3355, jTNE_0X02_0X03_Device.HydrogenSystemMaxTemp); Assert.Equal(0x22, jTNE_0X02_0X03_Device.HydrogenSystemMaxTempNo); Assert.Equal(new byte[] { 0x01, 0x02, 0x03 }, jTNE_0X02_0X03_Device.Temperatures); JTNE_0x02_0xA1_Device jTNE_0X02_0XA1_Device = JTNESerializer_Device.Deserialize <JTNE_0x02_0xA1_Device>(jTNE_0X02_Device.CusotmValues[0xA1]); Assert.Equal(0xA1, jTNE_0X02_0XA1_Device.TypeCode); Assert.Equal(14, jTNE_0X02_0XA1_Device.Length); Assert.Equal("SmallChi", jTNE_0X02_0XA1_Device.UserName); Assert.Equal(18, jTNE_0X02_0XA1_Device.Age); JTNE_0x02_0xA2_Device jTNE_0X02_0XA2_Device = JTNESerializer_Device.Deserialize <JTNE_0x02_0xA2_Device>(jTNE_0X02_Device.CusotmValues[0xA2]); Assert.Equal(0xA2, jTNE_0X02_0XA2_Device.TypeCode); Assert.Equal(20, jTNE_0X02_0XA2_Device.Length); Assert.Equal("小池有限公司", jTNE_0X02_0XA2_Device.CompanyName); }
public void Test2() { var data = "23230201313233343536373839000000000000000001009C01040507003A00001A0A00640063030602007B0202010201004100370300EC00640203020042023605085800650308AE006F0C9600030102030D1B221A0A560D086502040100CB006605010031AD030012D1CB061115007B0709000832124211320607110000159D03000003E8000003E9000003EA03000007D0000007D1000007D20300000BB800000BB900000BBA0300000FA000000FA100000FA2BD".ToHexBytes(); JTNEPackage_Platform jTNEPackage_Platform = JTNESerializer_Platform.Deserialize(data); JTNE_0x02_Platform jTNE_0X02_Platform = jTNEPackage_Platform.Bodies as JTNE_0x02_Platform; JTNE_0x02_0x01_Platform jTNE_0X02_0X01_Platform = jTNE_0X02_Platform.Values[JTNE_0x02_Body_Platform.JTNE_0x02_0x01_Platform] as JTNE_0x02_0x01_Platform; Assert.Equal(JTNE_0x02_Body_Platform.JTNE_0x02_0x01_Platform, jTNE_0X02_0X01_Platform.TypeCode); Assert.Equal(0x04, jTNE_0X02_0X01_Platform.CarStatus); Assert.Equal(0x05, jTNE_0X02_0X01_Platform.ChargeStatus); Assert.Equal(0x06, jTNE_0X02_0X01_Platform.DCStatus); Assert.Equal(0x07, jTNE_0X02_0X01_Platform.OperationMode); Assert.Equal(123, jTNE_0X02_0X01_Platform.Resistance); Assert.Equal(0x03, jTNE_0X02_0X01_Platform.SOC); Assert.Equal(58, jTNE_0X02_0X01_Platform.Speed); Assert.Equal(0x02, jTNE_0X02_0X01_Platform.Stall); Assert.Equal((uint)6666, jTNE_0X02_0X01_Platform.TotalDis); Assert.Equal(99, jTNE_0X02_0X01_Platform.TotalTemp); Assert.Equal(100, jTNE_0X02_0X01_Platform.TotalVoltage); JTNE_0x02_0x02_Platform jTNE_0X02_0X02_Platform = jTNE_0X02_Platform.Values[JTNE_0x02_Body_Platform.JTNE_0x02_0x02_Platform] as JTNE_0x02_0x02_Platform; Assert.Equal(JTNE_0x02_Body_Platform.JTNE_0x02_0x02_Platform, jTNE_0X02_0X02_Platform.TypeCode); Assert.Equal(2, jTNE_0X02_0X02_Platform.ElectricalCount); Metadata.Electrical electrical1 = jTNE_0X02_0X02_Platform.Electricals[0]; Assert.Equal(0x01, electrical1.ElControlTemp); Assert.Equal(100, electrical1.ElCurrent); Assert.Equal(0x01, electrical1.ElNo); Assert.Equal(65, electrical1.ElSpeed); Assert.Equal(0x02, electrical1.ElStatus); Assert.Equal(0x03, electrical1.ElTemp); Assert.Equal(55, electrical1.ElTorque); Assert.Equal(236, electrical1.ElVoltage); Metadata.Electrical electrical2 = jTNE_0X02_0X02_Platform.Electricals[1]; Assert.Equal(0x02, electrical2.ElControlTemp); Assert.Equal(101, electrical2.ElCurrent); Assert.Equal(0x02, electrical2.ElNo); Assert.Equal(66, electrical2.ElSpeed); Assert.Equal(0x03, electrical2.ElStatus); Assert.Equal(0x05, electrical2.ElTemp); Assert.Equal(566, electrical2.ElTorque); Assert.Equal(2136, electrical2.ElVoltage); JTNE_0x02_0x03_Platform jTNE_0X02_0X03_Platform = jTNE_0X02_Platform.Values[JTNE_0x02_Body_Platform.JTNE_0x02_0x03_Platform] as JTNE_0x02_0x03_Platform; Assert.Equal(JTNE_0x02_Body_Platform.JTNE_0x02_0x03_Platform, jTNE_0X02_0X03_Platform.TypeCode); Assert.Equal(0x02, jTNE_0X02_0X03_Platform.DCStatus); Assert.Equal(111, jTNE_0X02_0X03_Platform.FuelBatteryCurrent); Assert.Equal(2222, jTNE_0X02_0X03_Platform.FuelBatteryVoltage); Assert.Equal(3222, jTNE_0X02_0X03_Platform.FuelConsumptionRate); Assert.Equal(6666, jTNE_0X02_0X03_Platform.HydrogenSystemMaxConcentrations); Assert.Equal(0x56, jTNE_0X02_0X03_Platform.HydrogenSystemMaxConcentrationsNo); Assert.Equal(3336, jTNE_0X02_0X03_Platform.HydrogenSystemMaxPressure); Assert.Equal(0x65, jTNE_0X02_0X03_Platform.HydrogenSystemMaxPressureNo); Assert.Equal(3355, jTNE_0X02_0X03_Platform.HydrogenSystemMaxTemp); Assert.Equal(0x22, jTNE_0X02_0X03_Platform.HydrogenSystemMaxTempNo); Assert.Equal(new byte[] { 0x01, 0x02, 0x03 }, jTNE_0X02_0X03_Platform.Temperatures); JTNE_0x02_0x04_Platform jTNE_0X02_0X04_Platform = jTNE_0X02_Platform.Values[JTNE_0x02_Body_Platform.JTNE_0x02_0x04_Platform] as JTNE_0x02_0x04_Platform; Assert.Equal(JTNE_0x02_Body_Platform.JTNE_0x02_0x04_Platform, jTNE_0X02_0X04_Platform.TypeCode); Assert.Equal(0x01, jTNE_0X02_0X04_Platform.EngineStatus); Assert.Equal(102, jTNE_0X02_0X04_Platform.FuelRate); Assert.Equal(203, jTNE_0X02_0X04_Platform.Revs); JTNE_0x02_0x05_Platform jTNE_0X02_0X05_Platform = jTNE_0X02_Platform.Values[JTNE_0x02_Body_Platform.JTNE_0x02_0x05_Platform] as JTNE_0x02_0x05_Platform; Assert.Equal(JTNE_0x02_Body_Platform.JTNE_0x02_0x05_Platform, jTNE_0X02_0X05_Platform.TypeCode); Assert.Equal((uint)1233355, jTNE_0X02_0X05_Platform.Lat); Assert.Equal((uint)3255555, jTNE_0X02_0X05_Platform.Lng); Assert.Equal(0x01, jTNE_0X02_0X05_Platform.PositioStatus); JTNE_0x02_0x06_Platform jTNE_0X02_0X06_Platform = jTNE_0X02_Platform.Values[JTNE_0x02_Body_Platform.JTNE_0x02_0x06_Platform] as JTNE_0x02_0x06_Platform; Assert.Equal(0x12, jTNE_0X02_0X06_Platform.MaxTempBatteryAssemblyNo); Assert.Equal(0x32, jTNE_0X02_0X06_Platform.MaxTempProbeBatteryNo); Assert.Equal(0x42, jTNE_0X02_0X06_Platform.MaxTempProbeBatteryValue); Assert.Equal(0x11, jTNE_0X02_0X06_Platform.MaxVoltageBatteryAssemblyNo); Assert.Equal(0x15, jTNE_0X02_0X06_Platform.MaxVoltageSingleBatteryNo); Assert.Equal(123, jTNE_0X02_0X06_Platform.MaxVoltageSingleBatteryValue); Assert.Equal(0x11, jTNE_0X02_0X06_Platform.MinTempProbeBatteryNo); Assert.Equal(0x06, jTNE_0X02_0X06_Platform.MinTempProbeBatteryValue); Assert.Equal(0x07, jTNE_0X02_0X06_Platform.MinVoltageBatteryAssemblyNo); Assert.Equal(0x09, jTNE_0X02_0X06_Platform.MinVoltageSingleBatteryNo); Assert.Equal(0x08, jTNE_0X02_0X06_Platform.MinVoltageSingleBatteryValue); JTNE_0x02_0x07_Platform jTNE_0X02_0X07_Platform = jTNE_0X02_Platform.Values[JTNE_0x02_Body_Platform.JTNE_0x02_0x07_Platform] as JTNE_0x02_0x07_Platform; Assert.Equal(JTNE_0x02_Body_Platform.JTNE_0x02_0x07_Platform, jTNE_0X02_0X07_Platform.TypeCode); Assert.Equal(0x11, jTNE_0X02_0X07_Platform.AlarmLevel); Assert.Equal(3, jTNE_0X02_0X07_Platform.AlarmBatteryOthers.Count); Assert.Equal(new List <uint> { 1000, 1001, 1002 }, jTNE_0X02_0X07_Platform.AlarmBatteryOthers); Assert.Equal(3, jTNE_0X02_0X07_Platform.AlarmEls.Count); Assert.Equal(new List <uint> { 2000, 2001, 2002 }, jTNE_0X02_0X07_Platform.AlarmEls); Assert.Equal(3, jTNE_0X02_0X07_Platform.AlarmEngines.Count); Assert.Equal(new List <uint> { 3000, 3001, 3002 }, jTNE_0X02_0X07_Platform.AlarmEngines); Assert.Equal(3, jTNE_0X02_0X07_Platform.AlarmOthers.Count); Assert.Equal(new List <uint> { 4000, 4001, 4002 }, jTNE_0X02_0X07_Platform.AlarmOthers); }
public void Test1() { JTNEPackage_Platform jTNEPackage_Platform = new JTNEPackage_Platform(); jTNEPackage_Platform.AskId = JTNEAskId.Success.ToByteValue(); jTNEPackage_Platform.MsgId = JTNEMsgId_Platform.uploadim.ToByteValue(); jTNEPackage_Platform.VIN = "123456789"; JTNE_0x02_Platform jTNE_0X02_Platform = new JTNE_0x02_Platform(); jTNE_0X02_Platform.Values = new Dictionary <byte, JTNE_0x02_Body_Platform>(); JTNE_0x02_0x01_Platform jTNE_0X02_0X01_Platform = new JTNE_0x02_0x01_Platform(); jTNE_0X02_0X01_Platform.CarStatus = 0x04; jTNE_0X02_0X01_Platform.ChargeStatus = 0x05; jTNE_0X02_0X01_Platform.DCStatus = 0x06; jTNE_0X02_0X01_Platform.OperationMode = 0x07; jTNE_0X02_0X01_Platform.Resistance = 123; jTNE_0X02_0X01_Platform.SOC = 0x03; jTNE_0X02_0X01_Platform.Speed = 58; jTNE_0X02_0X01_Platform.Stall = 0x02; jTNE_0X02_0X01_Platform.TotalDis = 6666; jTNE_0X02_0X01_Platform.TotalTemp = 99; jTNE_0X02_0X01_Platform.TotalVoltage = 100; jTNE_0X02_Platform.Values.Add(JTNE_0x02_Body_Platform.JTNE_0x02_0x01_Platform, jTNE_0X02_0X01_Platform); JTNE_0x02_0x02_Platform jTNE_0X02_0X02_Platform = new JTNE_0x02_0x02_Platform(); jTNE_0X02_0X02_Platform.Electricals = new List <Metadata.Electrical>(); Metadata.Electrical electrical1 = new Metadata.Electrical(); electrical1.ElControlTemp = 0x01; electrical1.ElCurrent = 100; electrical1.ElNo = 0x01; electrical1.ElSpeed = 65; electrical1.ElStatus = 0x02; electrical1.ElTemp = 0x03; electrical1.ElTorque = 55; electrical1.ElVoltage = 236; Metadata.Electrical electrical2 = new Metadata.Electrical(); electrical2.ElControlTemp = 0x02; electrical2.ElCurrent = 101; electrical2.ElNo = 0x02; electrical2.ElSpeed = 66; electrical2.ElStatus = 0x03; electrical2.ElTemp = 0x05; electrical2.ElTorque = 566; electrical2.ElVoltage = 2136; jTNE_0X02_0X02_Platform.Electricals.Add(electrical1); jTNE_0X02_0X02_Platform.Electricals.Add(electrical2); jTNE_0X02_Platform.Values.Add(JTNE_0x02_Body_Platform.JTNE_0x02_0x02_Platform, jTNE_0X02_0X02_Platform); JTNE_0x02_0x03_Platform jTNE_0X02_0X03_Platform = new JTNE_0x02_0x03_Platform(); jTNE_0X02_0X03_Platform.DCStatus = 0x02; jTNE_0X02_0X03_Platform.FuelBatteryCurrent = 111; jTNE_0X02_0X03_Platform.FuelBatteryVoltage = 2222; jTNE_0X02_0X03_Platform.FuelConsumptionRate = 3222; jTNE_0X02_0X03_Platform.HydrogenSystemMaxConcentrations = 6666; jTNE_0X02_0X03_Platform.HydrogenSystemMaxConcentrationsNo = 0x56; jTNE_0X02_0X03_Platform.HydrogenSystemMaxPressure = 3336; jTNE_0X02_0X03_Platform.HydrogenSystemMaxPressureNo = 0x65; jTNE_0X02_0X03_Platform.HydrogenSystemMaxTemp = 3355; jTNE_0X02_0X03_Platform.HydrogenSystemMaxTempNo = 0x22; jTNE_0X02_0X03_Platform.Temperatures = new byte[] { 0x01, 0x02, 0x03 }; jTNE_0X02_Platform.Values.Add(JTNE_0x02_Body_Platform.JTNE_0x02_0x03_Platform, jTNE_0X02_0X03_Platform); JTNE_0x02_0x04_Platform jTNE_0X02_0X04_Platform = new JTNE_0x02_0x04_Platform(); jTNE_0X02_0X04_Platform.EngineStatus = 0x01; jTNE_0X02_0X04_Platform.FuelRate = 102; jTNE_0X02_0X04_Platform.Revs = 203; jTNE_0X02_Platform.Values.Add(JTNE_0x02_Body_Platform.JTNE_0x02_0x04_Platform, jTNE_0X02_0X04_Platform); JTNE_0x02_0x05_Platform jTNE_0X02_0X05_Platform = new JTNE_0x02_0x05_Platform(); jTNE_0X02_0X05_Platform.Lat = 1233355; jTNE_0X02_0X05_Platform.Lng = 3255555; jTNE_0X02_0X05_Platform.PositioStatus = 0x01; jTNE_0X02_Platform.Values.Add(JTNE_0x02_Body_Platform.JTNE_0x02_0x05_Platform, jTNE_0X02_0X05_Platform); JTNE_0x02_0x06_Platform jTNE_0X02_0X06_Platform = new JTNE_0x02_0x06_Platform(); jTNE_0X02_0X06_Platform.MaxTempBatteryAssemblyNo = 0x12; jTNE_0X02_0X06_Platform.MaxTempProbeBatteryNo = 0x32; jTNE_0X02_0X06_Platform.MaxTempProbeBatteryValue = 0x42; jTNE_0X02_0X06_Platform.MaxVoltageBatteryAssemblyNo = 0x11; jTNE_0X02_0X06_Platform.MaxVoltageSingleBatteryNo = 0x15; jTNE_0X02_0X06_Platform.MaxVoltageSingleBatteryValue = 123; jTNE_0X02_0X06_Platform.MinTempBatteryAssemblyNo = 0x32; jTNE_0X02_0X06_Platform.MinTempProbeBatteryNo = 0x11; jTNE_0X02_0X06_Platform.MinTempProbeBatteryValue = 0x06; jTNE_0X02_0X06_Platform.MinVoltageBatteryAssemblyNo = 0x07; jTNE_0X02_0X06_Platform.MinVoltageSingleBatteryNo = 0x09; jTNE_0X02_0X06_Platform.MinVoltageSingleBatteryValue = 0x08; jTNE_0X02_Platform.Values.Add(JTNE_0x02_Body_Platform.JTNE_0x02_0x06_Platform, jTNE_0X02_0X06_Platform); JTNE_0x02_0x07_Platform jTNE_0X02_0X07_Platform = new JTNE_0x02_0x07_Platform(); jTNE_0X02_0X07_Platform.AlarmBatteryFlag = 5533; jTNE_0X02_0X07_Platform.AlarmLevel = 0x11; jTNE_0X02_0X07_Platform.AlarmBatteryOthers = new List <uint> { 1000, 1001, 1002 }; jTNE_0X02_0X07_Platform.AlarmEls = new List <uint> { 2000, 2001, 2002 }; jTNE_0X02_0X07_Platform.AlarmEngines = new List <uint> { 3000, 3001, 3002 }; jTNE_0X02_0X07_Platform.AlarmOthers = new List <uint> { 4000, 4001, 4002 }; jTNE_0X02_Platform.Values.Add(JTNE_0x02_Body_Platform.JTNE_0x02_0x07_Platform, jTNE_0X02_0X07_Platform); jTNEPackage_Platform.Bodies = jTNE_0X02_Platform; var hex = JTNESerializer_Platform.Serialize(jTNEPackage_Platform).ToHexString(); Assert.Equal("23230201313233343536373839000000000000000001009C01040507003A00001A0A00640063030602007B0202010201004100370300EC00640203020042023605085800650308AE006F0C9600030102030D1B221A0A560D086502040100CB006605010031AD030012D1CB061115007B0709000832124211320607110000159D03000003E8000003E9000003EA03000007D0000007D1000007D20300000BB800000BB900000BBA0300000FA000000FA100000FA2BD", hex); }
public void Test2() { var data = "2323020131323334353637383900000000000000000100D001040507003A00001A0A00640063030602007B02030202010201004100370300EC00640203020042023605085800650308AE006F0C9600030102030D1B221A0A560D086502040100CB006605010031AD030012D1CB061115007B0709000832124211320607110000159D03000003E8000003E9000003EA03000007D0000007D1000007D20300000BB800000BB900000BBA0300000FA000000FA100000FA20802010002007B0037006F03006F00DE014D03000504D2004200DE0301BC022B029A0902010004010203040200040506070867".ToHexBytes(); JTNEPackage jTNEPackage = JTNESerializer.Deserialize(data); JTNE_0x02 jTNE_0X02 = jTNEPackage.Bodies as JTNE_0x02; JTNE_0x02_0x01 jTNE_0X02_0X01 = jTNE_0X02.Values[JTNE_0x02_Body.JTNE_0x02_0x01] as JTNE_0x02_0x01; Assert.Equal(JTNE_0x02_Body.JTNE_0x02_0x01, jTNE_0X02_0X01.TypeCode); Assert.Equal(0x02, jTNE_0X02_0X01.Accelerator); Assert.Equal(0x03, jTNE_0X02_0X01.Brakes); Assert.Equal(0x04, jTNE_0X02_0X01.CarStatus); Assert.Equal(0x05, jTNE_0X02_0X01.ChargeStatus); Assert.Equal(0x06, jTNE_0X02_0X01.DCStatus); Assert.Equal(0x07, jTNE_0X02_0X01.OperationMode); Assert.Equal(123, jTNE_0X02_0X01.Resistance); Assert.Equal(0x03, jTNE_0X02_0X01.SOC); Assert.Equal(58, jTNE_0X02_0X01.Speed); Assert.Equal(0x02, jTNE_0X02_0X01.Stall); Assert.Equal((uint)6666, jTNE_0X02_0X01.TotalDis); Assert.Equal(99, jTNE_0X02_0X01.TotalTemp); Assert.Equal(100, jTNE_0X02_0X01.TotalVoltage); JTNE_0x02_0x02 jTNE_0X02_0X02 = jTNE_0X02.Values[JTNE_0x02_Body.JTNE_0x02_0x02] as JTNE_0x02_0x02; Assert.Equal(JTNE_0x02_Body.JTNE_0x02_0x02, jTNE_0X02_0X02.TypeCode); Assert.Equal(2, jTNE_0X02_0X02.ElectricalCount); Metadata.Electrical electrical1 = jTNE_0X02_0X02.Electricals[0]; Assert.Equal(0x01, electrical1.ElControlTemp); Assert.Equal(100, electrical1.ElCurrent); Assert.Equal(0x01, electrical1.ElNo); Assert.Equal(65, electrical1.ElSpeed); Assert.Equal(0x02, electrical1.ElStatus); Assert.Equal(0x03, electrical1.ElTemp); Assert.Equal(55, electrical1.ElTorque); Assert.Equal(236, electrical1.ElVoltage); Metadata.Electrical electrical2 = jTNE_0X02_0X02.Electricals[1]; Assert.Equal(0x02, electrical2.ElControlTemp); Assert.Equal(101, electrical2.ElCurrent); Assert.Equal(0x02, electrical2.ElNo); Assert.Equal(66, electrical2.ElSpeed); Assert.Equal(0x03, electrical2.ElStatus); Assert.Equal(0x05, electrical2.ElTemp); Assert.Equal(566, electrical2.ElTorque); Assert.Equal(2136, electrical2.ElVoltage); JTNE_0x02_0x03 jTNE_0X02_0X03 = jTNE_0X02.Values[JTNE_0x02_Body.JTNE_0x02_0x03] as JTNE_0x02_0x03; Assert.Equal(JTNE_0x02_Body.JTNE_0x02_0x03, jTNE_0X02_0X03.TypeCode); Assert.Equal(0x02, jTNE_0X02_0X03.DCStatus); Assert.Equal(111, jTNE_0X02_0X03.FuelBatteryCurrent); Assert.Equal(2222, jTNE_0X02_0X03.FuelBatteryVoltage); Assert.Equal(3222, jTNE_0X02_0X03.FuelConsumptionRate); Assert.Equal(6666, jTNE_0X02_0X03.HydrogenSystemMaxConcentrations); Assert.Equal(0x56, jTNE_0X02_0X03.HydrogenSystemMaxConcentrationsNo); Assert.Equal(3336, jTNE_0X02_0X03.HydrogenSystemMaxPressure); Assert.Equal(0x65, jTNE_0X02_0X03.HydrogenSystemMaxPressureNo); Assert.Equal(3355, jTNE_0X02_0X03.HydrogenSystemMaxTemp); Assert.Equal(0x22, jTNE_0X02_0X03.HydrogenSystemMaxTempNo); Assert.Equal(new byte[] { 0x01, 0x02, 0x03 }, jTNE_0X02_0X03.Temperatures); JTNE_0x02_0x04 jTNE_0X02_0X04 = jTNE_0X02.Values[JTNE_0x02_Body.JTNE_0x02_0x04] as JTNE_0x02_0x04; Assert.Equal(JTNE_0x02_Body.JTNE_0x02_0x04, jTNE_0X02_0X04.TypeCode); Assert.Equal(0x01, jTNE_0X02_0X04.EngineStatus); Assert.Equal(102, jTNE_0X02_0X04.FuelRate); Assert.Equal(203, jTNE_0X02_0X04.Revs); JTNE_0x02_0x05 jTNE_0X02_0X05 = jTNE_0X02.Values[JTNE_0x02_Body.JTNE_0x02_0x05] as JTNE_0x02_0x05; Assert.Equal(JTNE_0x02_Body.JTNE_0x02_0x05, jTNE_0X02_0X05.TypeCode); Assert.Equal((uint)1233355, jTNE_0X02_0X05.Lat); Assert.Equal((uint)3255555, jTNE_0X02_0X05.Lng); Assert.Equal(0x01, jTNE_0X02_0X05.PositioStatus); JTNE_0x02_0x06 jTNE_0X02_0X06 = jTNE_0X02.Values[JTNE_0x02_Body.JTNE_0x02_0x06] as JTNE_0x02_0x06; Assert.Equal(0x12, jTNE_0X02_0X06.MaxTempBatteryAssemblyNo); Assert.Equal(0x32, jTNE_0X02_0X06.MaxTempProbeBatteryNo); Assert.Equal(0x42, jTNE_0X02_0X06.MaxTempProbeBatteryValue); Assert.Equal(0x11, jTNE_0X02_0X06.MaxVoltageBatteryAssemblyNo); Assert.Equal(0x15, jTNE_0X02_0X06.MaxVoltageSingleBatteryNo); Assert.Equal(123, jTNE_0X02_0X06.MaxVoltageSingleBatteryValue); Assert.Equal(0x11, jTNE_0X02_0X06.MinTempProbeBatteryNo); Assert.Equal(0x06, jTNE_0X02_0X06.MinTempProbeBatteryValue); Assert.Equal(0x07, jTNE_0X02_0X06.MinVoltageBatteryAssemblyNo); Assert.Equal(0x09, jTNE_0X02_0X06.MinVoltageSingleBatteryNo); Assert.Equal(0x08, jTNE_0X02_0X06.MinVoltageSingleBatteryValue); JTNE_0x02_0x07 jTNE_0X02_0X07 = jTNE_0X02.Values[JTNE_0x02_Body.JTNE_0x02_0x07] as JTNE_0x02_0x07; Assert.Equal(JTNE_0x02_Body.JTNE_0x02_0x07, jTNE_0X02_0X07.TypeCode); Assert.Equal(0x11, jTNE_0X02_0X07.AlarmLevel); Assert.Equal(3, jTNE_0X02_0X07.AlarmBatteryOthers.Count); Assert.Equal(new List <uint> { 1000, 1001, 1002 }, jTNE_0X02_0X07.AlarmBatteryOthers); Assert.Equal(3, jTNE_0X02_0X07.AlarmEls.Count); Assert.Equal(new List <uint> { 2000, 2001, 2002 }, jTNE_0X02_0X07.AlarmEls); Assert.Equal(3, jTNE_0X02_0X07.AlarmEngines.Count); Assert.Equal(new List <uint> { 3000, 3001, 3002 }, jTNE_0X02_0X07.AlarmEngines); Assert.Equal(3, jTNE_0X02_0X07.AlarmOthers.Count); Assert.Equal(new List <uint> { 4000, 4001, 4002 }, jTNE_0X02_0X07.AlarmOthers); JTNE_0x02_0x08 jTNE_0X02_0X08 = jTNE_0X02.Values[JTNE_0x02_Body.JTNE_0x02_0x08] as JTNE_0x02_0x08; Assert.Equal(JTNE_0x02_Body.JTNE_0x02_0x08, jTNE_0X02_0X08.TypeCode); Assert.Equal(2, jTNE_0X02_0X08.BatteryAssemblyCount); Metadata.BatteryAssembly batteryAssembly1 = jTNE_0X02_0X08.BatteryAssemblies[0]; Assert.Equal(123, batteryAssembly1.BatteryAssemblyCurrent); Assert.Equal(0x01, batteryAssembly1.BatteryAssemblyNo); Assert.Equal(0x02, batteryAssembly1.BatteryAssemblyVoltage); Assert.Equal(55, batteryAssembly1.SingleBatteryCount); Assert.Equal(111, batteryAssembly1.ThisSingleBatteryBeginNo); Assert.Equal(3, batteryAssembly1.ThisSingleBatteryBeginCount); Assert.Equal(new List <ushort> { 111, 222, 333 }, batteryAssembly1.SingleBatteryVoltages); Metadata.BatteryAssembly batteryAssembly2 = jTNE_0X02_0X08.BatteryAssemblies[1]; Assert.Equal(1234, batteryAssembly2.BatteryAssemblyCurrent); Assert.Equal(0x03, batteryAssembly2.BatteryAssemblyNo); Assert.Equal(0x05, batteryAssembly2.BatteryAssemblyVoltage); Assert.Equal(66, batteryAssembly2.SingleBatteryCount); Assert.Equal(222, batteryAssembly2.ThisSingleBatteryBeginNo); Assert.Equal(3, batteryAssembly2.ThisSingleBatteryBeginCount); Assert.Equal(new List <ushort> { 444, 555, 666 }, batteryAssembly2.SingleBatteryVoltages); JTNE_0x02_0x09 jTNE_0X02_0X09 = jTNE_0X02.Values[JTNE_0x02_Body.JTNE_0x02_0x09] as JTNE_0x02_0x09; Assert.Equal(JTNE_0x02_Body.JTNE_0x02_0x09, jTNE_0X02_0X09.TypeCode); Assert.Equal(2, jTNE_0X02_0X09.BatteryTemperatureCount); Metadata.BatteryTemperature batteryTemperature1 = jTNE_0X02_0X09.BatteryTemperatures[0]; Assert.Equal(0x01, batteryTemperature1.BatteryAssemblyNo); Assert.Equal(4, batteryTemperature1.TemperatureProbeCount); Assert.Equal(new byte[] { 0x01, 0x02, 0x03, 0x04 }, batteryTemperature1.Temperatures); Metadata.BatteryTemperature batteryTemperature2 = jTNE_0X02_0X09.BatteryTemperatures[1]; Assert.Equal(0x02, batteryTemperature2.BatteryAssemblyNo); Assert.Equal(4, batteryTemperature2.TemperatureProbeCount); Assert.Equal(new byte[] { 0x05, 0x06, 0x07, 0x08 }, batteryTemperature2.Temperatures); }
public void Test1() { JTNEPackage jTNEPackage = new JTNEPackage(); jTNEPackage.AskId = JTNEAskId.Success.ToByteValue(); jTNEPackage.MsgId = JTNEMsgId.uploadim.ToByteValue(); jTNEPackage.VIN = "123456789"; JTNE_0x02 jTNE_0X02 = new JTNE_0x02(); jTNE_0X02.Values = new Dictionary <byte, JTNE_0x02_Body>(); JTNE_0x02_0x01 jTNE_0X02_0X01 = new JTNE_0x02_0x01(); jTNE_0X02_0X01.Accelerator = 0x02; jTNE_0X02_0X01.Brakes = 0x03; jTNE_0X02_0X01.CarStatus = 0x04; jTNE_0X02_0X01.ChargeStatus = 0x05; jTNE_0X02_0X01.DCStatus = 0x06; jTNE_0X02_0X01.OperationMode = 0x07; jTNE_0X02_0X01.Resistance = 123; jTNE_0X02_0X01.SOC = 0x03; jTNE_0X02_0X01.Speed = 58; jTNE_0X02_0X01.Stall = 0x02; jTNE_0X02_0X01.TotalDis = 6666; jTNE_0X02_0X01.TotalTemp = 99; jTNE_0X02_0X01.TotalVoltage = 100; jTNE_0X02.Values.Add(JTNE_0x02_Body.JTNE_0x02_0x01, jTNE_0X02_0X01); JTNE_0x02_0x02 jTNE_0X02_0X02 = new JTNE_0x02_0x02(); jTNE_0X02_0X02.Electricals = new List <Metadata.Electrical>(); Metadata.Electrical electrical1 = new Metadata.Electrical(); electrical1.ElControlTemp = 0x01; electrical1.ElCurrent = 100; electrical1.ElNo = 0x01; electrical1.ElSpeed = 65; electrical1.ElStatus = 0x02; electrical1.ElTemp = 0x03; electrical1.ElTorque = 55; electrical1.ElVoltage = 236; Metadata.Electrical electrical2 = new Metadata.Electrical(); electrical2.ElControlTemp = 0x02; electrical2.ElCurrent = 101; electrical2.ElNo = 0x02; electrical2.ElSpeed = 66; electrical2.ElStatus = 0x03; electrical2.ElTemp = 0x05; electrical2.ElTorque = 566; electrical2.ElVoltage = 2136; jTNE_0X02_0X02.Electricals.Add(electrical1); jTNE_0X02_0X02.Electricals.Add(electrical2); jTNE_0X02.Values.Add(JTNE_0x02_Body.JTNE_0x02_0x02, jTNE_0X02_0X02); JTNE_0x02_0x03 jTNE_0X02_0X03 = new JTNE_0x02_0x03(); jTNE_0X02_0X03.DCStatus = 0x02; jTNE_0X02_0X03.FuelBatteryCurrent = 111; jTNE_0X02_0X03.FuelBatteryVoltage = 2222; jTNE_0X02_0X03.FuelConsumptionRate = 3222; jTNE_0X02_0X03.HydrogenSystemMaxConcentrations = 6666; jTNE_0X02_0X03.HydrogenSystemMaxConcentrationsNo = 0x56; jTNE_0X02_0X03.HydrogenSystemMaxPressure = 3336; jTNE_0X02_0X03.HydrogenSystemMaxPressureNo = 0x65; jTNE_0X02_0X03.HydrogenSystemMaxTemp = 3355; jTNE_0X02_0X03.HydrogenSystemMaxTempNo = 0x22; jTNE_0X02_0X03.Temperatures = new byte[] { 0x01, 0x02, 0x03 }; jTNE_0X02.Values.Add(JTNE_0x02_Body.JTNE_0x02_0x03, jTNE_0X02_0X03); JTNE_0x02_0x04 jTNE_0X02_0X04 = new JTNE_0x02_0x04(); jTNE_0X02_0X04.EngineStatus = 0x01; jTNE_0X02_0X04.FuelRate = 102; jTNE_0X02_0X04.Revs = 203; jTNE_0X02.Values.Add(JTNE_0x02_Body.JTNE_0x02_0x04, jTNE_0X02_0X04); JTNE_0x02_0x05 jTNE_0X02_0X05 = new JTNE_0x02_0x05(); jTNE_0X02_0X05.Lat = 1233355; jTNE_0X02_0X05.Lng = 3255555; jTNE_0X02_0X05.PositioStatus = 0x01; jTNE_0X02.Values.Add(JTNE_0x02_Body.JTNE_0x02_0x05, jTNE_0X02_0X05); JTNE_0x02_0x06 jTNE_0X02_0X06 = new JTNE_0x02_0x06(); jTNE_0X02_0X06.MaxTempBatteryAssemblyNo = 0x12; jTNE_0X02_0X06.MaxTempProbeBatteryNo = 0x32; jTNE_0X02_0X06.MaxTempProbeBatteryValue = 0x42; jTNE_0X02_0X06.MaxVoltageBatteryAssemblyNo = 0x11; jTNE_0X02_0X06.MaxVoltageSingleBatteryNo = 0x15; jTNE_0X02_0X06.MaxVoltageSingleBatteryValue = 123; jTNE_0X02_0X06.MinTempBatteryAssemblyNo = 0x32; jTNE_0X02_0X06.MinTempProbeBatteryNo = 0x11; jTNE_0X02_0X06.MinTempProbeBatteryValue = 0x06; jTNE_0X02_0X06.MinVoltageBatteryAssemblyNo = 0x07; jTNE_0X02_0X06.MinVoltageSingleBatteryNo = 0x09; jTNE_0X02_0X06.MinVoltageSingleBatteryValue = 0x08; jTNE_0X02.Values.Add(JTNE_0x02_Body.JTNE_0x02_0x06, jTNE_0X02_0X06); JTNE_0x02_0x07 jTNE_0X02_0X07 = new JTNE_0x02_0x07(); jTNE_0X02_0X07.AlarmBatteryFlag = 5533; jTNE_0X02_0X07.AlarmLevel = 0x11; jTNE_0X02_0X07.AlarmBatteryOthers = new List <uint> { 1000, 1001, 1002 }; jTNE_0X02_0X07.AlarmEls = new List <uint> { 2000, 2001, 2002 }; jTNE_0X02_0X07.AlarmEngines = new List <uint> { 3000, 3001, 3002 }; jTNE_0X02_0X07.AlarmOthers = new List <uint> { 4000, 4001, 4002 }; jTNE_0X02.Values.Add(JTNE_0x02_Body.JTNE_0x02_0x07, jTNE_0X02_0X07); JTNE_0x02_0x08 jTNE_0X02_0X08 = new JTNE_0x02_0x08(); jTNE_0X02_0X08.BatteryAssemblies = new List <Metadata.BatteryAssembly>(); Metadata.BatteryAssembly batteryAssembly1 = new Metadata.BatteryAssembly(); batteryAssembly1.BatteryAssemblyCurrent = 123; batteryAssembly1.BatteryAssemblyNo = 0x01; batteryAssembly1.BatteryAssemblyVoltage = 0x02; batteryAssembly1.SingleBatteryCount = 55; batteryAssembly1.ThisSingleBatteryBeginCount = 0x02; batteryAssembly1.ThisSingleBatteryBeginNo = 111; batteryAssembly1.SingleBatteryVoltages = new List <ushort> { 111, 222, 333 }; Metadata.BatteryAssembly batteryAssembly2 = new Metadata.BatteryAssembly(); batteryAssembly2.BatteryAssemblyCurrent = 1234; batteryAssembly2.BatteryAssemblyNo = 0x03; batteryAssembly2.BatteryAssemblyVoltage = 0x05; batteryAssembly2.SingleBatteryCount = 66; batteryAssembly2.ThisSingleBatteryBeginCount = 0x02; batteryAssembly2.ThisSingleBatteryBeginNo = 222; batteryAssembly2.SingleBatteryVoltages = new List <ushort> { 444, 555, 666 }; jTNE_0X02_0X08.BatteryAssemblies.Add(batteryAssembly1); jTNE_0X02_0X08.BatteryAssemblies.Add(batteryAssembly2); jTNE_0X02.Values.Add(JTNE_0x02_Body.JTNE_0x02_0x08, jTNE_0X02_0X08); JTNE_0x02_0x09 jTNE_0X02_0X09 = new JTNE_0x02_0x09(); jTNE_0X02_0X09.BatteryTemperatures = new List <Metadata.BatteryTemperature>(); Metadata.BatteryTemperature batteryTemperature1 = new Metadata.BatteryTemperature(); batteryTemperature1.BatteryAssemblyNo = 0x01; batteryTemperature1.Temperatures = new byte[] { 0x01, 0x02, 0x03, 0x04 }; Metadata.BatteryTemperature batteryTemperature2 = new Metadata.BatteryTemperature(); batteryTemperature2.BatteryAssemblyNo = 0x02; batteryTemperature2.Temperatures = new byte[] { 0x05, 0x06, 0x07, 0x08 }; jTNE_0X02_0X09.BatteryTemperatures.Add(batteryTemperature1); jTNE_0X02_0X09.BatteryTemperatures.Add(batteryTemperature2); jTNE_0X02.Values.Add(JTNE_0x02_Body.JTNE_0x02_0x09, jTNE_0X02_0X09); jTNEPackage.Bodies = jTNE_0X02; var hex = JTNESerializer.Serialize(jTNEPackage).ToHexString(); Assert.Equal("2323020131323334353637383900000000000000000100D001040507003A00001A0A00640063030602007B02030202010201004100370300EC00640203020042023605085800650308AE006F0C9600030102030D1B221A0A560D086502040100CB006605010031AD030012D1CB061115007B0709000832124211320607110000159D03000003E8000003E9000003EA03000007D0000007D1000007D20300000BB800000BB900000BBA0300000FA000000FA100000FA20802010002007B0037006F03006F00DE014D03000504D2004200DE0301BC022B029A0902010004010203040200040506070867", hex); }
public void Test1() { JTNE_0x02 jTNE_0X02 = new JTNE_0x02(); jTNE_0X02.Values = new Dictionary <byte, JTNE_0x02_Body>(); JTNE_0x02_0x01 jTNE_0X02_0X01 = new JTNE_0x02_0x01(); jTNE_0X02_0X01.Accelerator = 0x02; jTNE_0X02_0X01.Brakes = 0x03; jTNE_0X02_0X01.CarStatus = 0x04; jTNE_0X02_0X01.ChargeStatus = 0x05; jTNE_0X02_0X01.DCStatus = 0x06; jTNE_0X02_0X01.OperationMode = 0x07; jTNE_0X02_0X01.Resistance = 123; jTNE_0X02_0X01.SOC = 0x03; jTNE_0X02_0X01.Speed = 58; jTNE_0X02_0X01.Stall = 0x02; jTNE_0X02_0X01.TotalDis = 6666; jTNE_0X02_0X01.TotalTemp = 99; jTNE_0X02_0X01.TotalVoltage = 100; jTNE_0X02.Values.Add(JTNE_0x02_Body.JTNE_0x02_0x01, jTNE_0X02_0X01); JTNE_0x02_0x02 jTNE_0X02_0X02 = new JTNE_0x02_0x02(); jTNE_0X02_0X02.Electricals = new List <Metadata.Electrical>(); Metadata.Electrical electrical1 = new Metadata.Electrical(); electrical1.ElControlTemp = 0x01; electrical1.ElCurrent = 100; electrical1.ElNo = 0x01; electrical1.ElSpeed = 65; electrical1.ElStatus = 0x02; electrical1.ElTemp = 0x03; electrical1.ElTorque = 55; electrical1.ElVoltage = 236; Metadata.Electrical electrical2 = new Metadata.Electrical(); electrical2.ElControlTemp = 0x02; electrical2.ElCurrent = 101; electrical2.ElNo = 0x02; electrical2.ElSpeed = 66; electrical2.ElStatus = 0x03; electrical2.ElTemp = 0x05; electrical2.ElTorque = 566; electrical2.ElVoltage = 2136; jTNE_0X02_0X02.Electricals.Add(electrical1); jTNE_0X02_0X02.Electricals.Add(electrical2); jTNE_0X02.Values.Add(JTNE_0x02_Body.JTNE_0x02_0x02, jTNE_0X02_0X02); JTNE_0x02_0x03 jTNE_0X02_0X03 = new JTNE_0x02_0x03(); jTNE_0X02_0X03.DCStatus = 0x02; jTNE_0X02_0X03.FuelBatteryCurrent = 111; jTNE_0X02_0X03.FuelBatteryVoltage = 2222; jTNE_0X02_0X03.FuelConsumptionRate = 3222; jTNE_0X02_0X03.HydrogenSystemMaxConcentrations = 6666; jTNE_0X02_0X03.HydrogenSystemMaxConcentrationsNo = 0x56; jTNE_0X02_0X03.HydrogenSystemMaxPressure = 3336; jTNE_0X02_0X03.HydrogenSystemMaxPressureNo = 0x65; jTNE_0X02_0X03.HydrogenSystemMaxTemp = 3355; jTNE_0X02_0X03.HydrogenSystemMaxTempNo = 0x22; jTNE_0X02_0X03.Temperatures = new byte[] { 0x01, 0x02, 0x03 }; jTNE_0X02.Values.Add(JTNE_0x02_Body.JTNE_0x02_0x03, jTNE_0X02_0X03); var hex = JTNESerializer.Serialize(jTNE_0X02).ToHexString(); //01 04 05 07 00 3A 00 00 1A 0A 00 64 00 63 03 06 02 00 7B 02 03 -21 //02 02 01 02 01 00 41 00 37 03 00 EC 00 64 02 03 02 00 42 02 36 05 08 58 00 65 -26 //03 08 AE 00 6F 0C 96 00 03 01 02 03 0D 1B 22 1A 0A 56 0D 08 65 02 Assert.Equal("01040507003A00001A0A00640063030602007B02030202010201004100370300EC00640203020042023605085800650308AE006F0C9600030102030D1B221A0A560D086502", hex); }