浏览代码

升级net9

master
SmallChi(Koike) 6 个月前
父节点
当前提交
dbab79a98e
共有 6 个文件被更改,包括 25 次插入22 次删除
  1. +1
    -1
      .github/workflows/dotnetcore.yml
  2. +1
    -1
      README.md
  3. +4
    -4
      src/JTActiveSafety.Protocol.Test/JTActiveSafety.Protocol.Test.csproj
  4. +13
    -5
      src/JTActiveSafety.Protocol.Test/JTActiveSafetySerializerTest.cs
  5. +3
    -10
      src/JTActiveSafety.Protocol/JTActiveSafety.Protocol.csproj
  6. +3
    -1
      src/JTActiveSafety.Protocol/JTActiveSafetySerializer.cs

+ 1
- 1
.github/workflows/dotnetcore.yml 查看文件

@@ -12,7 +12,7 @@ jobs:
- name: Setup .NET Core - name: Setup .NET Core
uses: actions/setup-dotnet@master uses: actions/setup-dotnet@master
with: with:
dotnet-version: 5.0.100
dotnet-version: 9.0.100
- name: dotnet info - name: dotnet info
run: dotnet --info run: dotnet --info
- name: dotnet restore - name: dotnet restore


+ 1
- 1
README.md 查看文件

@@ -11,5 +11,5 @@ JTActiveSafety协议、道路运输车辆主动安全智能防控系统-主动


| Package Name | Version | Downloads| Remark | | Package Name | Version | Downloads| Remark |
| --------------------- | -------------------------------------------------- | --------------------------------------------------- |--------------------------------------------------- | | --------------------- | -------------------------------------------------- | --------------------------------------------------- |--------------------------------------------------- |
| Install-Package JTActiveSafety| ![JTActiveSafety](https://img.shields.io/nuget/v/JTActiveSafety.svg) | ![JT808](https://img.shields.io/nuget/dt/JTActiveSafety.svg) |主动安全的附件协议|
| Install-Package JTActiveSafety| ![JTActiveSafety](https://img.shields.io/nuget/v/JTActiveSafety.svg) | ![JTActiveSafety](https://img.shields.io/nuget/dt/JTActiveSafety.svg) |主动安全的附件协议|



+ 4
- 4
src/JTActiveSafety.Protocol.Test/JTActiveSafety.Protocol.Test.csproj 查看文件

@@ -1,15 +1,15 @@
<Project Sdk="Microsoft.NET.Sdk"> <Project Sdk="Microsoft.NET.Sdk">


<PropertyGroup> <PropertyGroup>
<TargetFramework>net5.0</TargetFramework>
<TargetFramework>net9.0</TargetFramework>


<IsPackable>false</IsPackable> <IsPackable>false</IsPackable>
</PropertyGroup> </PropertyGroup>


<ItemGroup> <ItemGroup>
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.8.3" />
<PackageReference Include="xunit" Version="2.4.1" />
<PackageReference Include="xunit.runner.visualstudio" Version="2.4.3">
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.12.0" />
<PackageReference Include="xunit" Version="2.9.2" />
<PackageReference Include="xunit.runner.visualstudio" Version="2.8.2">
<PrivateAssets>all</PrivateAssets> <PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets> <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference> </PackageReference>


+ 13
- 5
src/JTActiveSafety.Protocol.Test/JTActiveSafetySerializerTest.cs 查看文件

@@ -2,11 +2,19 @@ using System;
using Xunit; using Xunit;
using JTActiveSafety.Protocol; using JTActiveSafety.Protocol;
using JTActiveSafety.Protocol.Extensions; using JTActiveSafety.Protocol.Extensions;
using System.Text.Encodings.Web;
using System.Text.Json;
using System.Text.Unicode;


namespace JTActiveSafety.Protocol.Test namespace JTActiveSafety.Protocol.Test
{ {
public class JTActiveSafetySerializerTest public class JTActiveSafetySerializerTest
{ {
public readonly static JsonWriterOptions Instance = new System.Text.Json.JsonWriterOptions
{
Indented = true,
Encoder = JavaScriptEncoder.Create(UnicodeRanges.All)
};
[Fact] [Fact]
public void SerializeTest1() public void SerializeTest1()
{ {
@@ -15,16 +23,16 @@ namespace JTActiveSafety.Protocol.Test
package.Offset = 1; package.Offset = 1;
package.Bodies = new byte[5] { 1, 2, 3, 4, 5 }; package.Bodies = new byte[5] { 1, 2, 3, 4, 5 };
var hex = JTActiveSafetySerializer.Serialize(package).ToHexString(); var hex = JTActiveSafetySerializer.Serialize(package).ToHexString();
Assert.Equal("30 31 63 64 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 61 6C 61 72 6D 2E 78 6C 73 78 00 00 00 01 00 00 00 05 01 02 03 04 05", hex);
Assert.Equal("30 31 63 64 61 6C 61 72 6D 2E 78 6C 73 78 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 05 01 02 03 04 05", hex);
} }


[Fact] [Fact]
public void DeserializeTest1() public void DeserializeTest1()
{ {
var data = "30 31 63 64 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 61 6C 61 72 6D 2E 78 6C 73 78 00 00 00 01 00 00 00 05 01 02 03 04 05".ToHexBytes();
var data = "30 31 63 64 61 6C 61 72 6D 2E 78 6C 73 78 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 05 01 02 03 04 05".ToHexBytes();
var package = JTActiveSafetySerializer.Deserialize(data); var package = JTActiveSafetySerializer.Deserialize(data);
Assert.Equal(JTActiveSafetyPackage.FH, package.FH_Flag); Assert.Equal(JTActiveSafetyPackage.FH, package.FH_Flag);
Assert.Equal("alarm.xlsx", package.FileName.TrimStart('\0'));
Assert.Equal("alarm.xlsx", package.FileName.TrimEnd('\0'));
Assert.Equal(1u, package.Offset); Assert.Equal(1u, package.Offset);
Assert.Equal(5u, package.Length); Assert.Equal(5u, package.Length);
Assert.Equal(new byte[5] { 1, 2, 3, 4, 5 }, package.Bodies); Assert.Equal(new byte[5] { 1, 2, 3, 4, 5 }, package.Bodies);
@@ -33,8 +41,8 @@ namespace JTActiveSafety.Protocol.Test
[Fact] [Fact]
public void AnalyzeTest1() public void AnalyzeTest1()
{ {
var data = "30 31 63 64 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 61 6C 61 72 6D 2E 78 6C 73 78 00 00 00 01 00 00 00 05 01 02 03 04 05".ToHexBytes();
var json = JTActiveSafetySerializer.Analyze(data);
var data = "30 31 63 64 61 6C 61 72 6D 2E 78 6C 73 78 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 05 01 02 03 04 05".ToHexBytes();
var json = JTActiveSafetySerializer.Analyze(data, Instance);
} }
} }
} }

+ 3
- 10
src/JTActiveSafety.Protocol/JTActiveSafety.Protocol.csproj 查看文件

@@ -1,8 +1,8 @@
<Project Sdk="Microsoft.NET.Sdk"> <Project Sdk="Microsoft.NET.Sdk">


<PropertyGroup> <PropertyGroup>
<TargetFrameworks>netstandard2.0;netstandard2.1;net5.0;</TargetFrameworks>
<LangVersion>9.0</LangVersion>
<TargetFrameworks>net9.0</TargetFrameworks>
<LangVersion>13.0</LangVersion>
<Copyright>Copyright 2019.</Copyright> <Copyright>Copyright 2019.</Copyright>
<Authors>SmallChi(Koike)</Authors> <Authors>SmallChi(Koike)</Authors>
<PackageId>JTActiveSafety</PackageId> <PackageId>JTActiveSafety</PackageId>
@@ -16,16 +16,9 @@
<license>https://github.com/SmallChi/JTActiveSafety/blob/master/LICENSE</license> <license>https://github.com/SmallChi/JTActiveSafety/blob/master/LICENSE</license>
<GeneratePackageOnBuild>false</GeneratePackageOnBuild> <GeneratePackageOnBuild>false</GeneratePackageOnBuild>
<DocumentationFile>JTActiveSafety.Protocol.xml</DocumentationFile> <DocumentationFile>JTActiveSafety.Protocol.xml</DocumentationFile>
<Version>1.0.1</Version>
<Version>1.0.2</Version>
<PackageLicenseFile>LICENSE</PackageLicenseFile> <PackageLicenseFile>LICENSE</PackageLicenseFile>
</PropertyGroup> </PropertyGroup>

<ItemGroup Condition=" '$(TargetFramework)' == 'netstandard2.0' ">
<PackageReference Include="System.Memory" Version="4.5.4" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="System.Text.Json" Version="5.0.1" />
</ItemGroup>
<ItemGroup> <ItemGroup>
<None Include="..\..\LICENSE"> <None Include="..\..\LICENSE">
<Pack>True</Pack> <Pack>True</Pack>


+ 3
- 1
src/JTActiveSafety.Protocol/JTActiveSafetySerializer.cs 查看文件

@@ -6,7 +6,9 @@ using System.Collections.Generic;
using System.IO; using System.IO;
using System.Linq; using System.Linq;
using System.Text; using System.Text;
using System.Text.Encodings.Web;
using System.Text.Json; using System.Text.Json;
using System.Text.Unicode;


namespace JTActiveSafety.Protocol namespace JTActiveSafety.Protocol
{ {
@@ -28,7 +30,7 @@ namespace JTActiveSafety.Protocol
{ {
JTActiveSafetyMessagePackWriter writer = new JTActiveSafetyMessagePackWriter(buffer); JTActiveSafetyMessagePackWriter writer = new JTActiveSafetyMessagePackWriter(buffer);
writer.WriteUInt32(package.FH_Flag); writer.WriteUInt32(package.FH_Flag);
writer.WriteString(package.FileName.PadLeft(50, '\0'));
writer.WriteString(package.FileName.PadRight(50, '\0'));
writer.WriteUInt32(package.Offset); writer.WriteUInt32(package.Offset);
writer.WriteUInt32((uint)package.Bodies.Length); writer.WriteUInt32((uint)package.Bodies.Length);
writer.WriteArray(package.Bodies); writer.WriteArray(package.Bodies);


正在加载...
取消
保存