Skip to content

Commit b233f12

Browse files
authored
bump: Chapter 1 to .NET 10 (#228)
* Update Chapter 1 to .NET 10: target framework and core packages
1 parent 41bef73 commit b233f12

File tree

17 files changed

+81
-126
lines changed

17 files changed

+81
-126
lines changed

.github/workflows/chapter-1-workflow.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ jobs:
2525
- name: Setup .NET
2626
uses: actions/setup-dotnet@v3
2727
with:
28-
dotnet-version: 9.0.x
28+
dotnet-version: 10.0.x
2929
- name: Restore dependencies
3030
run: dotnet restore
3131
- name: Build
@@ -43,7 +43,7 @@ jobs:
4343
- name: Setup .NET
4444
uses: actions/setup-dotnet@v3
4545
with:
46-
dotnet-version: 9.0.x
46+
dotnet-version: 10.0.x
4747
- name: Restore dependencies
4848
run: dotnet restore
4949
- name: Test
Lines changed: 25 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,29 @@
11
<Project>
22

3-
<PropertyGroup>
4-
<AssemblyName>EvolutionaryArchitecture.$(MSBuildProjectName)</AssemblyName>
5-
<RootNamespace>$(AssemblyName)</RootNamespace>
6-
<TargetFramework>net9.0</TargetFramework>
7-
<AnalysisLevel>latest</AnalysisLevel>
8-
<CodeAnalysisTreatWarningsAsErrors>true</CodeAnalysisTreatWarningsAsErrors>
9-
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
10-
<ImplicitUsings>enable</ImplicitUsings>
11-
<Nullable>enable</Nullable>
12-
<EnforceCodeStyleInBuild>true</EnforceCodeStyleInBuild>
13-
<GenerateDocumentationFile>true</GenerateDocumentationFile>
14-
</PropertyGroup>
15-
16-
<ItemGroup>
17-
<InternalsVisibleTo Include="DynamicProxyGenAssembly2"/>
18-
</ItemGroup>
19-
20-
<ItemGroup>
21-
<PackageReference
22-
Include="SonarAnalyzer.CSharp"
23-
Version="9.7.0.75501"
24-
PrivateAssets="all"
25-
Condition="$(MSBuildProjectExtension) == '.csproj'"
26-
/>
27-
</ItemGroup>
3+
<PropertyGroup>
4+
<AssemblyName>EvolutionaryArchitecture.$(MSBuildProjectName)</AssemblyName>
5+
<RootNamespace>$(AssemblyName)</RootNamespace>
6+
<TargetFramework>net10.0</TargetFramework>
7+
<AnalysisLevel>latest</AnalysisLevel>
8+
<CodeAnalysisTreatWarningsAsErrors>true</CodeAnalysisTreatWarningsAsErrors>
9+
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
10+
<ImplicitUsings>enable</ImplicitUsings>
11+
<Nullable>enable</Nullable>
12+
<EnforceCodeStyleInBuild>true</EnforceCodeStyleInBuild>
13+
<GenerateDocumentationFile>true</GenerateDocumentationFile>
14+
</PropertyGroup>
15+
16+
<ItemGroup>
17+
<InternalsVisibleTo Include="DynamicProxyGenAssembly2" />
18+
</ItemGroup>
2819

20+
<ItemGroup>
21+
<PackageReference
22+
Include="SonarAnalyzer.CSharp"
23+
Version="9.7.0.75501"
24+
PrivateAssets="all"
25+
Condition="$(MSBuildProjectExtension) == '.csproj'"
26+
/>
27+
</ItemGroup>
28+
2929
</Project>

Chapter-1-initial-architecture/Src/Fitnet.AppHost/Fitnet.AppHost.csproj

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<Project Sdk="Microsoft.NET.Sdk">
2-
<Sdk Name="Aspire.AppHost.Sdk" Version="9.0.0"/>
2+
<Sdk Name="Aspire.AppHost.Sdk" Version="13.0.2"/>
33

44
<PropertyGroup>
55
<OutputType>Exe</OutputType>
@@ -10,8 +10,8 @@
1010
</PropertyGroup>
1111

1212
<ItemGroup>
13-
<PackageReference Include="Aspire.Hosting.AppHost" Version="9.0.0"/>
14-
<PackageReference Include="Aspire.Hosting.PostgreSQL" Version="9.0.0"/>
13+
<PackageReference Include="Aspire.Hosting.AppHost" Version="13.0.2"/>
14+
<PackageReference Include="Aspire.Hosting.PostgreSQL" Version="13.0.2"/>
1515
<PackageReference Update="SonarAnalyzer.CSharp" Version="10.15.0.120848" />
1616
</ItemGroup>
1717

Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/Fitnet.IntegrationTests.csproj

Lines changed: 6 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -2,33 +2,26 @@
22

33
<PropertyGroup>
44
<IsPackable>false</IsPackable>
5-
<NoWarn>$(NoWarn);S3604;xUnit1050</NoWarn>
5+
<NoWarn>$(NoWarn);S3604;xUnit1045;</NoWarn>
66
</PropertyGroup>
77

88
<ItemGroup>
99
<PackageReference Include="Bogus" Version="35.6.1" />
10-
<PackageReference Include="Microsoft.Extensions.TimeProvider.Testing" Version="9.0.0" />
10+
<PackageReference Include="Microsoft.Extensions.TimeProvider.Testing" Version="10.0.0" />
1111
<PackageReference Include="NSubstitute" Version="5.3.0" />
1212
<PackageReference Include="Shouldly" Version="4.3.0" />
13-
<PackageReference Include="Verify.XunitV3" Version="31.7.3" />
14-
<PackageReference Include="xunit.runner.visualstudio" Version="3.1.5">
15-
<PrivateAssets>all</PrivateAssets>
16-
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
17-
</PackageReference>
1813
<PackageReference Include="Testcontainers" Version="4.0.0" />
1914
<PackageReference Include="Testcontainers.PostgreSql" Version="4.0.0" />
20-
<PackageReference Include="xunit.v3" Version="3.2.0" />
21-
<PackageReference Include="xunit.analyzers" Version="1.26.0">
22-
<PrivateAssets>all</PrivateAssets>
23-
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
24-
</PackageReference>
25-
<PackageReference Include="Microsoft.AspNetCore.Mvc.Testing" Version="9.0.0" />
15+
<PackageReference Include="Microsoft.AspNetCore.Mvc.Testing" Version="10.0.1" />
2616
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.11.1" />
2717
<PackageReference Include="coverlet.collector" Version="6.0.2">
2818
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
2919
<PrivateAssets>all</PrivateAssets>
3020
</PackageReference>
3121
<PackageReference Update="SonarAnalyzer.CSharp" Version="10.15.0.120848" />
22+
<PackageReference Include="Verify.XunitV3" Version="31.7.0" />
23+
<PackageReference Include="xunit.v3" Version="3.2.0" />
24+
<PackageReference Include="xunit.v3.extensibility.core" Version="3.2.0" />
3225
</ItemGroup>
3326

3427
<ItemGroup>

Chapter-1-initial-architecture/Src/Fitnet.IntegrationTests/GlobalUsings.cs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
11
// Global using directives
22

3-
global using System.Collections;
43
global using System.Net;
5-
global using Xunit;
64
global using Microsoft.AspNetCore.Mvc.Testing;
75
global using Bogus;
86
global using JetBrains.Annotations;
Lines changed: 17 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,23 @@
11
namespace EvolutionaryArchitecture.Fitnet.IntegrationTests.Reports.GenerateNewPassesPerMonthReport.TestData;
22

3-
internal sealed class ReportTestCases : IEnumerable<object[]>
3+
internal sealed class ReportTestCases : TheoryData<List<PassRegistrationDateRange>>
44
{
55
internal static DateTimeOffset FakeNowDate = new(2021, 1, 1, 0, 0, 0, TimeSpan.Zero);
66

7-
public IEnumerator<object[]> GetEnumerator()
8-
{
9-
yield return
10-
[
11-
new List<PassRegistrationDateRange>
12-
{
13-
new(new DateTimeOffset(FakeNowDate.Year, 1, 3, 1, 1,1, TimeSpan.Zero), new DateTimeOffset(FakeNowDate.Year, 1, 10 ,1, 1, 1,1, TimeSpan.Zero)),
14-
new(new DateTimeOffset(FakeNowDate.Year, 1, 5, 1, 1,1, TimeSpan.Zero), new DateTimeOffset(FakeNowDate.Year, 1, 20 ,1, 1, 1,1, TimeSpan.Zero)),
15-
new(new DateTimeOffset(FakeNowDate.Year, 2, 1, 1, 1,1, TimeSpan.Zero), new DateTimeOffset(FakeNowDate.Year, 2, 28 ,1, 1, 1,1, TimeSpan.Zero)),
16-
new(new DateTimeOffset(FakeNowDate.Year, 3, 1, 1, 1,1, TimeSpan.Zero), new DateTimeOffset(FakeNowDate.Year, 3, 31 ,1, 1, 1,1, TimeSpan.Zero)),
17-
new(new DateTimeOffset(FakeNowDate.Year, 4, 1, 1, 1,1, TimeSpan.Zero), new DateTimeOffset(FakeNowDate.Year, 4, 30 ,1, 1, 1,1, TimeSpan.Zero)),
18-
new(new DateTimeOffset(FakeNowDate.Year, 5, 1, 1, 1,1, TimeSpan.Zero), new DateTimeOffset(FakeNowDate.Year, 5, 31 ,1, 1, 1,1, TimeSpan.Zero)),
19-
new(new DateTimeOffset(FakeNowDate.Year, 6, 1, 1, 1,1, TimeSpan.Zero), new DateTimeOffset(FakeNowDate.Year, 6, 30 ,1, 1, 1,1, TimeSpan.Zero)),
20-
new(new DateTimeOffset(FakeNowDate.Year, 7, 1, 1, 1,1, TimeSpan.Zero), new DateTimeOffset(FakeNowDate.Year, 7, 31 ,1, 1, 1,1, TimeSpan.Zero)),
21-
new(new DateTimeOffset(FakeNowDate.Year, 8, 1, 1, 1,1, TimeSpan.Zero), new DateTimeOffset(FakeNowDate.Year, 8, 31 ,1, 1, 1,1, TimeSpan.Zero)),
22-
new(new DateTimeOffset(FakeNowDate.Year, 9, 1, 1, 1,1, TimeSpan.Zero), new DateTimeOffset(FakeNowDate.Year, 9, 30 ,1, 1, 1,1, TimeSpan.Zero)),
23-
new(new DateTimeOffset(FakeNowDate.Year, 10, 1, 1, 1,1, TimeSpan.Zero), new DateTimeOffset(FakeNowDate.Year, 10, 31 ,1, 1, 1,1, TimeSpan.Zero)),
24-
new(new DateTimeOffset(FakeNowDate.Year, 11, 1, 1, 1,1, TimeSpan.Zero), new DateTimeOffset(FakeNowDate.Year, 11, 30 ,1, 1, 1,1, TimeSpan.Zero)),
25-
new(new DateTimeOffset(FakeNowDate.Year, 12, 1, 1, 1,1, TimeSpan.Zero), new DateTimeOffset(FakeNowDate.Year, 12, 31 ,1, 1, 1,1, TimeSpan.Zero))
26-
}
27-
];
28-
}
29-
30-
IEnumerator IEnumerable.GetEnumerator() => GetEnumerator();
7+
public ReportTestCases() => Add(new List<PassRegistrationDateRange>
8+
{
9+
new(new DateTimeOffset(FakeNowDate.Year, 1, 3, 1, 1,1, TimeSpan.Zero), new DateTimeOffset(FakeNowDate.Year, 1, 10 ,1, 1, 1,1, TimeSpan.Zero)),
10+
new(new DateTimeOffset(FakeNowDate.Year, 1, 5, 1, 1,1, TimeSpan.Zero), new DateTimeOffset(FakeNowDate.Year, 1, 20 ,1, 1, 1,1, TimeSpan.Zero)),
11+
new(new DateTimeOffset(FakeNowDate.Year, 2, 1, 1, 1,1, TimeSpan.Zero), new DateTimeOffset(FakeNowDate.Year, 2, 28 ,1, 1, 1,1, TimeSpan.Zero)),
12+
new(new DateTimeOffset(FakeNowDate.Year, 3, 1, 1, 1,1, TimeSpan.Zero), new DateTimeOffset(FakeNowDate.Year, 3, 31 ,1, 1, 1,1, TimeSpan.Zero)),
13+
new(new DateTimeOffset(FakeNowDate.Year, 4, 1, 1, 1,1, TimeSpan.Zero), new DateTimeOffset(FakeNowDate.Year, 4, 30 ,1, 1, 1,1, TimeSpan.Zero)),
14+
new(new DateTimeOffset(FakeNowDate.Year, 5, 1, 1, 1,1, TimeSpan.Zero), new DateTimeOffset(FakeNowDate.Year, 5, 31 ,1, 1, 1,1, TimeSpan.Zero)),
15+
new(new DateTimeOffset(FakeNowDate.Year, 6, 1, 1, 1,1, TimeSpan.Zero), new DateTimeOffset(FakeNowDate.Year, 6, 30 ,1, 1, 1,1, TimeSpan.Zero)),
16+
new(new DateTimeOffset(FakeNowDate.Year, 7, 1, 1, 1,1, TimeSpan.Zero), new DateTimeOffset(FakeNowDate.Year, 7, 31 ,1, 1, 1,1, TimeSpan.Zero)),
17+
new(new DateTimeOffset(FakeNowDate.Year, 8, 1, 1, 1,1, TimeSpan.Zero), new DateTimeOffset(FakeNowDate.Year, 8, 31 ,1, 1, 1,1, TimeSpan.Zero)),
18+
new(new DateTimeOffset(FakeNowDate.Year, 9, 1, 1, 1,1, TimeSpan.Zero), new DateTimeOffset(FakeNowDate.Year, 9, 30 ,1, 1, 1,1, TimeSpan.Zero)),
19+
new(new DateTimeOffset(FakeNowDate.Year, 10, 1, 1, 1,1, TimeSpan.Zero), new DateTimeOffset(FakeNowDate.Year, 10, 31 ,1, 1, 1,1, TimeSpan.Zero)),
20+
new(new DateTimeOffset(FakeNowDate.Year, 11, 1, 1, 1,1, TimeSpan.Zero), new DateTimeOffset(FakeNowDate.Year, 11, 30 ,1, 1, 1,1, TimeSpan.Zero)),
21+
new(new DateTimeOffset(FakeNowDate.Year, 12, 1, 1, 1,1, TimeSpan.Zero), new DateTimeOffset(FakeNowDate.Year, 12, 31 ,1, 1, 1,1, TimeSpan.Zero))
22+
});
3123
}

Chapter-1-initial-architecture/Src/Fitnet.UnitTests/BusinessRulesEngine/FakeBusinessRule.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
namespace EvolutionaryArchitecture.Fitnet.UnitTests.BusinessRulesEngine;
22

3-
using EvolutionaryArchitecture.Fitnet.Common.BusinessRulesEngine;
3+
using Common.BusinessRulesEngine;
44

55
internal sealed class FakeBusinessRule : IBusinessRule
66
{

Chapter-1-initial-architecture/Src/Fitnet.UnitTests/Contracts/PrepareContract/RequestValidator/InvalidPrepareContractRequestTestCases.cs

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -2,23 +2,21 @@ namespace EvolutionaryArchitecture.Fitnet.UnitTests.Contracts.PrepareContract.Re
22

33
using EvolutionaryArchitecture.Fitnet.Contracts.PrepareContract;
44

5-
internal sealed class InvalidPrepareContractRequestTestCases : IEnumerable<object[]>
5+
internal sealed class InvalidPrepareContractRequestTestCases : TheoryData<PrepareContractRequest, string>
66
{
77
private readonly Faker _faker = new();
88
private readonly DateTimeOffset _fakeNow = new Faker().Date.RecentOffset();
99

10-
public IEnumerator<object[]> GetEnumerator()
10+
public InvalidPrepareContractRequestTestCases()
1111
{
1212
var validContractParameters = PrepareContractParameters.GetValid();
1313

14-
yield return new object[] { new PrepareContractRequest(Guid.Empty, validContractParameters.MinAge, validContractParameters.MaxHeight, _fakeNow), nameof(PrepareContractRequest.CustomerId) };
15-
yield return new object[] { new PrepareContractRequest(Guid.NewGuid(), default, validContractParameters.MaxHeight, _fakeNow), nameof(PrepareContractRequest.CustomerAge) };
16-
yield return new object[] { new PrepareContractRequest(Guid.NewGuid(), _faker.Random.Number(-100, -1), validContractParameters.MaxHeight, _fakeNow), nameof(PrepareContractRequest.CustomerAge) };
17-
yield return new object[] { new PrepareContractRequest(Guid.NewGuid(), validContractParameters.MinAge, default, _fakeNow), nameof(PrepareContractRequest.CustomerHeight) };
18-
yield return new object[] { new PrepareContractRequest(Guid.NewGuid(), validContractParameters.MinAge, _faker.Random.Number(-100, -1), _fakeNow), nameof(PrepareContractRequest.CustomerHeight) };
19-
yield return new object[] { new PrepareContractRequest(Guid.NewGuid(), validContractParameters.MinAge, validContractParameters.MaxHeight, default), nameof(PrepareContractRequest.PreparedAt) };
20-
yield return new object[] { new PrepareContractRequest(Guid.NewGuid(), validContractParameters.MinAge, validContractParameters.MaxHeight, default), nameof(PrepareContractRequest.PreparedAt) };
14+
Add(new PrepareContractRequest(Guid.Empty, validContractParameters.MinAge, validContractParameters.MaxHeight, _fakeNow), nameof(PrepareContractRequest.CustomerId));
15+
Add(new PrepareContractRequest(Guid.NewGuid(), default, validContractParameters.MaxHeight, _fakeNow), nameof(PrepareContractRequest.CustomerAge));
16+
Add(new PrepareContractRequest(Guid.NewGuid(), _faker.Random.Number(-100, -1), validContractParameters.MaxHeight, _fakeNow), nameof(PrepareContractRequest.CustomerAge));
17+
Add(new PrepareContractRequest(Guid.NewGuid(), validContractParameters.MinAge, default, _fakeNow), nameof(PrepareContractRequest.CustomerHeight));
18+
Add(new PrepareContractRequest(Guid.NewGuid(), validContractParameters.MinAge, _faker.Random.Number(-100, -1), _fakeNow), nameof(PrepareContractRequest.CustomerHeight));
19+
Add(new PrepareContractRequest(Guid.NewGuid(), validContractParameters.MinAge, validContractParameters.MaxHeight, default), nameof(PrepareContractRequest.PreparedAt));
20+
Add(new PrepareContractRequest(Guid.NewGuid(), validContractParameters.MinAge, validContractParameters.MaxHeight, default), nameof(PrepareContractRequest.PreparedAt));
2121
}
22-
23-
IEnumerator IEnumerable.GetEnumerator() => GetEnumerator();
2422
}

Chapter-1-initial-architecture/Src/Fitnet.UnitTests/Fitnet.UnitTests.csproj

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,8 @@
22

33
<PropertyGroup>
44
<IsPackable>false</IsPackable>
5-
<NoWarn>$(NoWarn);xUnit1050</NoWarn>
5+
<NoWarn>$(NoWarn);xUnit1050;xUnit1044;</NoWarn>
66
</PropertyGroup>
7-
87
<ItemGroup>
98
<PackageReference Include="Bogus" Version="35.6.1" />
109
<PackageReference Include="NSubstitute" Version="5.3.0" />

Chapter-1-initial-architecture/Src/Fitnet.UnitTests/GlobalUsings.cs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
// Global using directives
22

3-
global using System.Collections;
43
global using Bogus;
54
global using Microsoft.AspNetCore.Http;
65
global using NSubstitute;

0 commit comments

Comments
 (0)