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",