diff --git a/src/JTTools.Test/JTTools.Test.csproj b/src/JTTools.Test/JTTools.Test.csproj new file mode 100644 index 0000000..9d58cb5 --- /dev/null +++ b/src/JTTools.Test/JTTools.Test.csproj @@ -0,0 +1,23 @@ + + + + netcoreapp2.2 + + false + + + + + + + + all + runtime; build; native; contentfiles; analyzers; buildtransitive + + + + + + + + diff --git a/src/JTTools.Test/JTToolsControllerTest.cs b/src/JTTools.Test/JTToolsControllerTest.cs new file mode 100644 index 0000000..0ea2484 --- /dev/null +++ b/src/JTTools.Test/JTToolsControllerTest.cs @@ -0,0 +1,55 @@ +using JT808.Protocol; +using JT808.Protocol.Extensions.JT1078; +using JT809.Protocol; +using JT809.Protocol.Configs; +using JT809.Protocol.Enums; +using JT809.Protocol.Extensions.JT1078; +using JT809.Protocol.MessageBody; +using JTTools.Controllers; +using JTTools.Dtos; +using Microsoft.Extensions.DependencyInjection; +using System; +using Xunit; + +namespace JTTools.Test +{ + public class JTToolsControllerTest + { + IServiceCollection serviceDescriptors = new ServiceCollection(); + + private readonly JTToolsController jTToolsController; + + public JTToolsControllerTest() + { + serviceDescriptors.AddJT808Configure() + .AddJT1078Configure(); + serviceDescriptors.AddJT809Configure() + .AddJT1078Configure(); + serviceDescriptors.AddSingleton(); + IServiceProvider ServiceProvider = serviceDescriptors.BuildServiceProvider(); + jTToolsController = ServiceProvider.GetRequiredService(); + } + + [Fact] + public void Parse809Test1() + { + var result=jTToolsController.Parse809(new JT809RequestDto() + { + IsEncrypt=true, + EncryptOptions=new JT809EncryptOptions + { + IA1= 96135846, + IC1= 30000000, + M1 = 10000079 + }, + HexData= "5B 00 00 00 73 00 00 17 3B 12 00 02 A2 49 7F 01 02 0F 01 00 00 00 01 AC 84 2A 2C 11 20 47 CA 38 E1 DD 75 BE EE F8 03 D5 7A B8 17 C7 C0 43 3C D0 85 6D 94 EA E0 00 5A 01 23 68 A6 D6 DB A1 0B 49 F6 CB 74 C6 61 F6 D6 6A 80 C4 D2 B1 10 40 AE 48 7E 96 3A 8D 0F ED 7A 1B 2D 82 00 41 B9 BE 0A E7 8C D6 AB 7D B7 79 2E 8A 7F 17 AE B8 0A 9F AE AA A2 75 A4 5D" + }); + JT809Package package = (JT809Package)result.Value.Data; + JT809_0x1200 jT809_0X1200 = (JT809_0x1200)package.Bodies; + Assert.Equal(44190079u, package.Header.MsgGNSSCENTERID); + Assert.Equal(30116, package.CRCCode); + Assert.Equal("ÔÁSEB408²â", jT809_0X1200.VehicleNo); + Assert.Equal(JT809VehicleColorType.»ÆÉ«, jT809_0X1200.VehicleColor); + } + } +} diff --git a/src/JTTools.sln b/src/JTTools.sln index 595b53e..ee75158 100644 --- a/src/JTTools.sln +++ b/src/JTTools.sln @@ -3,7 +3,9 @@ Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio Version 16 VisualStudioVersion = 16.0.29123.88 MinimumVisualStudioVersion = 10.0.40219.1 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "JTTools", "JTTools\JTTools.csproj", "{4F7C65A6-85D2-4F32-AC00-B43D2C296618}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JTTools", "JTTools\JTTools.csproj", "{4F7C65A6-85D2-4F32-AC00-B43D2C296618}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "JTTools.Test", "JTTools.Test\JTTools.Test.csproj", "{4D721C46-A6A2-45F9-8934-CDEED97F3FC5}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -15,6 +17,10 @@ Global {4F7C65A6-85D2-4F32-AC00-B43D2C296618}.Debug|Any CPU.Build.0 = Debug|Any CPU {4F7C65A6-85D2-4F32-AC00-B43D2C296618}.Release|Any CPU.ActiveCfg = Release|Any CPU {4F7C65A6-85D2-4F32-AC00-B43D2C296618}.Release|Any CPU.Build.0 = Release|Any CPU + {4D721C46-A6A2-45F9-8934-CDEED97F3FC5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {4D721C46-A6A2-45F9-8934-CDEED97F3FC5}.Debug|Any CPU.Build.0 = Debug|Any CPU + {4D721C46-A6A2-45F9-8934-CDEED97F3FC5}.Release|Any CPU.ActiveCfg = Release|Any CPU + {4D721C46-A6A2-45F9-8934-CDEED97F3FC5}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/src/ui/jttools/package.json b/src/ui/jttools/package.json index 3eb2145..db63604 100644 --- a/src/ui/jttools/package.json +++ b/src/ui/jttools/package.json @@ -2,7 +2,7 @@ "name": "jttools", "version": "1.0.0", "description": "A Vue.js project", - "author": "SmallChi <564952747@qq.com>", + "author": "SmallChi", "private": true, "scripts": { "dev": "webpack-dev-server --inline --progress --config build/webpack.dev.conf.js",