Skip to content

Commit 8fe32f7

Browse files
committed
Update to .NET 10, upgrade dependencies and tests
Bump target frameworks to .NET 10 in all projects and workflows. Update GitHub Actions to latest versions and upgrade test/dependency packages. Refactor unit tests for improved assertion methods and exception handling.
1 parent bfccb0e commit 8fe32f7

File tree

7 files changed

+28
-23
lines changed

7 files changed

+28
-23
lines changed

.github/workflows/create-release.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,11 @@ jobs:
1212
runs-on: windows-latest
1313

1414
steps:
15-
- uses: actions/checkout@v4
15+
- uses: actions/checkout@v6
1616
- name: Setup .NET
17-
uses: actions/setup-dotnet@v4
17+
uses: actions/setup-dotnet@v5
1818
with:
19-
dotnet-version: 9.0.x
19+
dotnet-version: 10.0.x
2020
- name: Install project dependencies
2121
working-directory: ./src
2222
run: dotnet restore

.github/workflows/dotnet.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,11 +17,11 @@ jobs:
1717
runs-on: windows-latest
1818

1919
steps:
20-
- uses: actions/checkout@v4
20+
- uses: actions/checkout@v6
2121
- name: Setup .NET
22-
uses: actions/setup-dotnet@v4
22+
uses: actions/setup-dotnet@v5
2323
with:
24-
dotnet-version: 9.0.x
24+
dotnet-version: 10.0.x
2525
- name: Restore dependencies
2626
working-directory: ./src
2727
run: dotnet restore

src/Nager.Country.Export/Nager.Country.Export.csproj

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
<Project Sdk="Microsoft.NET.Sdk">
1+
<Project Sdk="Microsoft.NET.Sdk">
22

33
<PropertyGroup>
44
<OutputType>Exe</OutputType>
5-
<TargetFramework>net8.0</TargetFramework>
5+
<TargetFramework>net10.0</TargetFramework>
66
</PropertyGroup>
77

88
<ItemGroup>
9-
<PackageReference Include="EnumExtensions.System.Text.Json" Version="1.2.0" />
9+
<PackageReference Include="EnumExtensions.System.Text.Json" Version="1.3.0" />
1010
<PackageReference Include="Mapster" Version="7.4.0" />
1111
</ItemGroup>
1212

src/Nager.Country.Translation/Nager.Country.Translation.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020

2121
<RepositoryUrl>https://github.com/nager/Nager.Country</RepositoryUrl>
2222

23-
<TargetFrameworks>net48;netstandard2.0;netstandard2.1;net8;net9</TargetFrameworks>
23+
<TargetFrameworks>net48;netstandard2.0;netstandard2.1;net9.0;net10.0</TargetFrameworks>
2424

2525
<Version>4.3.3</Version>
2626
</PropertyGroup>

src/Nager.Country.UnitTest/Nager.Country.UnitTest.csproj

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,18 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22

33
<PropertyGroup>
4-
<TargetFramework>net8.0</TargetFramework>
4+
<TargetFramework>net10.0</TargetFramework>
55

66
<Nullable>enable</Nullable>
77

88
<IsPackable>false</IsPackable>
99
</PropertyGroup>
1010

1111
<ItemGroup>
12-
<PackageReference Include="FluentAssertions" Version="6.12.0" />
13-
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.10.0" />
14-
<PackageReference Include="MSTest.TestAdapter" Version="3.5.2" />
15-
<PackageReference Include="MSTest.TestFramework" Version="3.5.2" />
12+
<PackageReference Include="FluentAssertions" Version="8.8.0" />
13+
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="18.0.1" />
14+
<PackageReference Include="MSTest.TestAdapter" Version="4.0.2" />
15+
<PackageReference Include="MSTest.TestFramework" Version="4.0.2" />
1616
</ItemGroup>
1717

1818
<ItemGroup>

src/Nager.Country.UnitTest/TranslationTest.cs

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ public void DuplicateTranslationTest()
3030
public void CheckTranslationsAvailableTest()
3131
{
3232
ITranslationProvider translationProvider = new TranslationProvider();
33-
foreach (var countryCode in (Alpha2Code[])Enum.GetValues(typeof(Alpha2Code)))
33+
foreach (var countryCode in Enum.GetValues<Alpha2Code>())
3434
{
3535
var countryTranslation = translationProvider.GetCountryTranslation(countryCode);
3636
if (countryTranslation is null)
@@ -39,7 +39,7 @@ public void CheckTranslationsAvailableTest()
3939
}
4040

4141
var translationCount = countryTranslation.Translations.Length;
42-
Assert.IsTrue(translationCount > 5, $"Missing translations for countryCode: {countryCode}");
42+
Assert.IsGreaterThan(5, translationCount, $"Missing translations for countryCode: {countryCode}");
4343
}
4444
}
4545

@@ -53,11 +53,14 @@ public void GetCountryTranslatedName_GermanyInEnglish_Successful()
5353
}
5454

5555
[TestMethod]
56-
[ExpectedException(typeof(UnknownCountryException), "Cannot found a country for code XX")]
5756
public void GetCountryTranslatedName_InvalidAlphaCode_ThrowException()
5857
{
5958
ITranslationProvider translationProvider = new TranslationProvider();
60-
translationProvider.GetCountryTranslatedName("XX", LanguageCode.EN);
59+
60+
var exception = Assert.ThrowsExactly<UnknownCountryException>(() =>
61+
translationProvider.GetCountryTranslatedName("XX", LanguageCode.EN));
62+
63+
Assert.AreEqual("Cannot found a country for code XX", exception.Message);
6164
}
6265

6366
[TestMethod]
@@ -66,7 +69,7 @@ public void CheckAllCulture()
6669
ITranslationProvider translationProvider = new TranslationProvider();
6770
CultureInfo[] cultures = CultureInfo.GetCultures(CultureTypes.AllCultures);
6871

69-
foreach (var countryCode in (Alpha2Code[])Enum.GetValues(typeof(Alpha2Code)))
72+
foreach (var countryCode in Enum.GetValues<Alpha2Code>())
7073
{
7174
var countryTranslation = translationProvider.GetCountryTranslation(countryCode);
7275
if (countryTranslation is null)
@@ -100,11 +103,13 @@ public void CheckAllCultureWithDefault(LanguageCode defaultLanguageCode)
100103
ITranslationProvider translationProvider = new TranslationProvider();
101104
CultureInfo[] cultures = CultureInfo.GetCultures(CultureTypes.AllCultures);
102105

103-
foreach (var countryCode in (Alpha2Code[])Enum.GetValues(typeof(Alpha2Code)))
106+
foreach (var countryCode in Enum.GetValues<Alpha2Code>())
104107
{
105108
var countryTranslation = translationProvider.GetCountryTranslation(countryCode);
106109
if (countryTranslation is null)
110+
{
107111
continue;
112+
}
108113

109114
var expectedLanguages = countryTranslation.Translations.Select(x => x.LanguageCode).ToList();
110115
foreach (var culture in cultures)

src/Nager.Country/Nager.Country.csproj

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,9 @@
2121

2222
<RepositoryUrl>https://github.com/nager/Nager.Country</RepositoryUrl>
2323

24-
<TargetFrameworks>net48;netstandard2.0;netstandard2.1;net8;net9</TargetFrameworks>
24+
<TargetFrameworks>net48;netstandard2.0;netstandard2.1;net9.0;net10.0</TargetFrameworks>
2525

26-
<Version>4.3.4</Version>
26+
<Version>4.3.5</Version>
2727
</PropertyGroup>
2828

2929
<ItemGroup>

0 commit comments

Comments
 (0)