From 00bd11d4ff0cc99198459182c12d32c8c9f204b0 Mon Sep 17 00:00:00 2001 From: SmallChi <564952747@qq.com> Date: Wed, 26 Sep 2018 20:16:08 +0800 Subject: [PATCH] =?UTF-8?q?1.=E5=A2=9E=E5=8A=A00x1301|0x1402=E6=B5=8B?= =?UTF-8?q?=E8=AF=95=202.=E4=BF=AE=E5=A4=8D0x120c=E7=89=B9=E6=80=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../JT809_0x1300_0x1301Test.cs | 40 +++++++++++++++++ .../JT809_0x1400_0x1402Test.cs | 43 +++++++++++++++++++ .../JT809_0x1200_0x120C.cs | 5 ++- 3 files changed, 87 insertions(+), 1 deletion(-) create mode 100644 src/JT809.Protocol.Test/JT809SubMessageBody/JT809_0x1300_0x1301Test.cs create mode 100644 src/JT809.Protocol.Test/JT809SubMessageBody/JT809_0x1400_0x1402Test.cs diff --git a/src/JT809.Protocol.Test/JT809SubMessageBody/JT809_0x1300_0x1301Test.cs b/src/JT809.Protocol.Test/JT809SubMessageBody/JT809_0x1300_0x1301Test.cs new file mode 100644 index 0000000..c7f284b --- /dev/null +++ b/src/JT809.Protocol.Test/JT809SubMessageBody/JT809_0x1300_0x1301Test.cs @@ -0,0 +1,40 @@ +using System; +using System.Collections.Generic; +using System.Text; +using Xunit; +using JT809.Protocol; +using JT809.Protocol.JT809Extensions; +using JT809.Protocol.JT809MessageBody; +using JT809.Protocol.JT809Exceptions; +using JT809.Protocol.JT809SubMessageBody; + +namespace JT809.Protocol.Test.JT809SubMessageBody +{ + public class JT809_0x1300_0x1301Test + { + [Fact] + public void Test1() + { + JT809_0x1300_0x1301 jT809_0x1300_0x1301 = new JT809_0x1300_0x1301 + { + ObjectID = "111", + InfoContent = "22ha22", + InfoID = 1234, + ObjectType = JT809Enums.JT809_0x1301_ObjectType.当前连接的下级平台 + }; + var hex = JT809Serializer.Serialize(jT809_0x1300_0x1301).ToHexString(); + //"01 31 31 31 00 00 00 00 00 00 00 00 00 00 00 04 D2 00 00 00 06 32 32 68 61 32 32" + } + + [Fact] + public void Test2() + { + var bytes = "01 31 31 31 00 00 00 00 00 00 00 00 00 00 00 04 D2 00 00 00 06 32 32 68 61 32 32".ToHexBytes(); + JT809_0x1300_0x1301 jT809_0x1300_0x1301 = JT809Serializer.Deserialize(bytes); + Assert.Equal("111", jT809_0x1300_0x1301.ObjectID); + Assert.Equal("22ha22", jT809_0x1300_0x1301.InfoContent); + Assert.Equal((uint)1234, jT809_0x1300_0x1301.InfoID); + Assert.Equal(JT809Enums.JT809_0x1301_ObjectType.当前连接的下级平台, jT809_0x1300_0x1301.ObjectType); + } + } +} diff --git a/src/JT809.Protocol.Test/JT809SubMessageBody/JT809_0x1400_0x1402Test.cs b/src/JT809.Protocol.Test/JT809SubMessageBody/JT809_0x1400_0x1402Test.cs new file mode 100644 index 0000000..2520607 --- /dev/null +++ b/src/JT809.Protocol.Test/JT809SubMessageBody/JT809_0x1400_0x1402Test.cs @@ -0,0 +1,43 @@ +using System; +using System.Collections.Generic; +using System.Text; +using Xunit; +using JT809.Protocol; +using JT809.Protocol.JT809Extensions; +using JT809.Protocol.JT809MessageBody; +using JT809.Protocol.JT809Exceptions; +using JT809.Protocol.JT809SubMessageBody; + +namespace JT809.Protocol.Test.JT809SubMessageBody +{ + public class JT809_0x1400_0x1402Test + { + [Fact] + public void Test1() + { + JT809_0x1400_0x1402 jT809_0x1400_0x1402 = new JT809_0x1400_0x1402 + { + WarnSrc= JT809Enums.JT809WarnSrc.车载终端, + WarnType = 18, + WarnTime=DateTime.Parse("2018-09-26"), + InfoContent = "gfdf454553", + InfoID = 3344, + }; + var hex = JT809Serializer.Serialize(jT809_0x1400_0x1402).ToHexString(); + // "00 00 12 00 00 00 00 5B AA 5B 80 00 00 0D 10 00 00 00 0A 67 66 64 66 34 35 34 35 35 33" + } + + [Fact] + public void Test2() + { + var bytes = "00 00 12 00 00 00 00 5B AA 5B 80 00 00 0D 10 00 00 00 0A 67 66 64 66 34 35 34 35 35 33".ToHexBytes(); + JT809_0x1400_0x1402 jT809_0x1400_0x1402 = JT809Serializer.Deserialize(bytes); + Assert.Equal(JT809Enums.JT809WarnSrc.车载终端, jT809_0x1400_0x1402.WarnSrc); + Assert.Equal("gfdf454553", jT809_0x1400_0x1402.InfoContent); + Assert.Equal((uint)18, jT809_0x1400_0x1402.WarnType); + Assert.Equal((uint)3344, jT809_0x1400_0x1402.InfoID); + Assert.Equal((uint)10, jT809_0x1400_0x1402.InfoLength); + Assert.Equal(DateTime.Parse("2018-09-26"), jT809_0x1400_0x1402.WarnTime); + } + } +} diff --git a/src/JT809.Protocol/JT809SubMessageBody/JT809_0x1200_0x120C.cs b/src/JT809.Protocol/JT809SubMessageBody/JT809_0x1200_0x120C.cs index b727332..f7d4dbd 100644 --- a/src/JT809.Protocol/JT809SubMessageBody/JT809_0x1200_0x120C.cs +++ b/src/JT809.Protocol/JT809SubMessageBody/JT809_0x1200_0x120C.cs @@ -1,4 +1,6 @@ -using System; +using JT809.Protocol.JT809Attributes; +using JT809.Protocol.JT809Formatters.JT809SubMessageBodyFormatters; +using System; using System.Collections.Generic; using System.Text; @@ -8,6 +10,7 @@ namespace JT809.Protocol.JT809SubMessageBody /// 主动上报驾驶员身份信息消息 /// 子业务类型标识:UP_EXG_MSG_REPORT_DRIVER_INFO /// + [JT809Formatter(typeof(JT809_0x1200_0x120CFormatter))] public class JT809_0x1200_0x120C:JT809SubBodies { ///