diff --git a/.github/workflows/dotnet.yml b/.github/workflows/dotnet.yml index b59793c..f539e3e 100644 --- a/.github/workflows/dotnet.yml +++ b/.github/workflows/dotnet.yml @@ -13,10 +13,14 @@ jobs: steps: - uses: actions/checkout@v2 - - name: Setup .NET + - name: Setup .NET 6 uses: actions/setup-dotnet@v1 with: dotnet-version: 6.0.x + - name: Setup .NET 8 + uses: actions/setup-dotnet@v1 + with: + dotnet-version: 8.0.x - name: Restore dependencies run: dotnet restore - name: Build diff --git a/test/F23.StringSimilarity.Tests/DamerauTest.cs b/test/F23.StringSimilarity.Tests/DamerauTest.cs index 2faced5..bb0084c 100644 --- a/test/F23.StringSimilarity.Tests/DamerauTest.cs +++ b/test/F23.StringSimilarity.Tests/DamerauTest.cs @@ -24,7 +24,6 @@ using System; using System.Diagnostics.CodeAnalysis; -using System.Text; using F23.StringSimilarity.Tests.TestUtil; using Xunit; @@ -48,11 +47,11 @@ public void TestDistance(string s1, string s2, double expected) // test char span version Assert.Equal(expected, actual: instance.Distance(s1.AsSpan(), s2.AsSpan())); - + // test byte span version Assert.Equal(expected, actual: instance.Distance( - Encoding.Latin1.GetBytes(s1).AsSpan(), - Encoding.Latin1.GetBytes(s2).AsSpan())); + EncodingUtil.Latin1.GetBytes(s1).AsSpan(), + EncodingUtil.Latin1.GetBytes(s2).AsSpan())); } [Fact] diff --git a/test/F23.StringSimilarity.Tests/F23.StringSimilarity.Tests.csproj b/test/F23.StringSimilarity.Tests/F23.StringSimilarity.Tests.csproj index f567e6e..7d90b77 100644 --- a/test/F23.StringSimilarity.Tests/F23.StringSimilarity.Tests.csproj +++ b/test/F23.StringSimilarity.Tests/F23.StringSimilarity.Tests.csproj @@ -1,7 +1,10 @@  - net6.0 + net6.0;net8.0 + $(TargetFrameworks);net481 + latest + enable diff --git a/test/F23.StringSimilarity.Tests/JaroWinklerTest.cs b/test/F23.StringSimilarity.Tests/JaroWinklerTest.cs index 9fc5792..3457a3a 100644 --- a/test/F23.StringSimilarity.Tests/JaroWinklerTest.cs +++ b/test/F23.StringSimilarity.Tests/JaroWinklerTest.cs @@ -59,8 +59,8 @@ public void TestSimilarity(string s1, string s2, double expected) Assert.Equal( expected, actual: instance.Similarity( - System.Text.Encoding.Latin1.GetBytes(s1).AsSpan(), - System.Text.Encoding.Latin1.GetBytes(s2).AsSpan()), + EncodingUtil.Latin1.GetBytes(s1).AsSpan(), + EncodingUtil.Latin1.GetBytes(s2).AsSpan()), precision: 6 // 0.000001 ); } diff --git a/test/F23.StringSimilarity.Tests/LevenshteinTest.cs b/test/F23.StringSimilarity.Tests/LevenshteinTest.cs index 304fd7e..a32fd94 100644 --- a/test/F23.StringSimilarity.Tests/LevenshteinTest.cs +++ b/test/F23.StringSimilarity.Tests/LevenshteinTest.cs @@ -50,8 +50,8 @@ public void TestDistance(string s1, string s2, double expected) // test byte span version Assert.Equal(expected, actual: instance.Distance( - System.Text.Encoding.Latin1.GetBytes(s1).AsSpan(), - System.Text.Encoding.Latin1.GetBytes(s2).AsSpan())); + EncodingUtil.Latin1.GetBytes(s1).AsSpan(), + EncodingUtil.Latin1.GetBytes(s2).AsSpan())); } [InlineData("My string", "M string2", 4, 2.0)] @@ -70,8 +70,8 @@ public void TestDistanceWithLimits(string s1, string s2, int limit, double expec // test byte span version Assert.Equal(expected, actual: instance.Distance( - System.Text.Encoding.Latin1.GetBytes(s1).AsSpan(), - System.Text.Encoding.Latin1.GetBytes(s2).AsSpan(), + EncodingUtil.Latin1.GetBytes(s1).AsSpan(), + EncodingUtil.Latin1.GetBytes(s2).AsSpan(), limit)); } diff --git a/test/F23.StringSimilarity.Tests/LongestCommonSubsequenceTest.cs b/test/F23.StringSimilarity.Tests/LongestCommonSubsequenceTest.cs index 55fdcf2..a6c1f01 100644 --- a/test/F23.StringSimilarity.Tests/LongestCommonSubsequenceTest.cs +++ b/test/F23.StringSimilarity.Tests/LongestCommonSubsequenceTest.cs @@ -51,8 +51,8 @@ public void TestDistance(string s1, string s2, double expected) // test byte span version Assert.Equal(expected, actual: instance.Distance( - System.Text.Encoding.Latin1.GetBytes(s1).AsSpan(), - System.Text.Encoding.Latin1.GetBytes(s2).AsSpan())); + EncodingUtil.Latin1.GetBytes(s1).AsSpan(), + EncodingUtil.Latin1.GetBytes(s2).AsSpan())); } [Fact] diff --git a/test/F23.StringSimilarity.Tests/OptimalStringAlignmentTest.cs b/test/F23.StringSimilarity.Tests/OptimalStringAlignmentTest.cs index 91f8704..3287c2e 100644 --- a/test/F23.StringSimilarity.Tests/OptimalStringAlignmentTest.cs +++ b/test/F23.StringSimilarity.Tests/OptimalStringAlignmentTest.cs @@ -69,8 +69,8 @@ public void TestDistance(string s1, string s2, double expected) Assert.Equal( expected: expected, actual: instance.Distance( - System.Text.Encoding.Latin1.GetBytes(s1).AsSpan(), - System.Text.Encoding.Latin1.GetBytes(s2).AsSpan()), + EncodingUtil.Latin1.GetBytes(s1).AsSpan(), + EncodingUtil.Latin1.GetBytes(s2).AsSpan()), precision: 0 // 0.0 ); } diff --git a/test/F23.StringSimilarity.Tests/TestUtil/EncodingUtil.cs b/test/F23.StringSimilarity.Tests/TestUtil/EncodingUtil.cs new file mode 100644 index 0000000..2ef3dcc --- /dev/null +++ b/test/F23.StringSimilarity.Tests/TestUtil/EncodingUtil.cs @@ -0,0 +1,13 @@ +using System.Text; + +namespace F23.StringSimilarity.Tests.TestUtil; + +internal class EncodingUtil +{ + public static Encoding Latin1 => +#if NET5_0_OR_GREATER + Encoding.Latin1; +#else + Encoding.GetEncoding("ISO-8859-1"); +#endif +}