Add .NET 10 target framework (#1528)

* Add .NET 10 target framework

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

* ...

* add delay

* ok

* TUnit - delay

* 10

* ado

* ado - no nuget tests

* .

* no collect

* await Task.Delay(500, _ct);

---------

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
Stef HeyenrathandCopilot App authored and GitHub committed 2026-10-31 18:38:25 +01:00
1 parent f0965e5650
commit 3630093d49
81 files changed
+311 -51550

No files matched your search

@@ -1,16 +1,17 @@
<Project Sdk="Microsoft.NET.Sdk">
<Sdk Name="Aspire.AppHost.Sdk" Version="13.4.0" />
<Sdk Name="Aspire.AppHost.Sdk" Version="13.6.4" />
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net8.0</TargetFramework>
<TargetFrameworks>net8.0;net10.0</TargetFrameworks>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
<SignAssembly>true</SignAssembly>
<AssemblyOriginatorKeyFile>../../src/WireMock.Net/WireMock.Net.snk</AssemblyOriginatorKeyFile>
<PublicSign Condition=" '$(OS)' != 'Windows_NT' ">true</PublicSign>
<AspireUseCliBundle>true</AspireUseCliBundle>
</PropertyGroup>
<ItemGroup>
@@ -19,10 +20,7 @@
</ItemGroup>
<ItemGroup>
<PackageReference Include="Aspire.Hosting.AppHost" Version="13.4.3" />
<!-- CVE-2026-48109 / CVE-2026-92707 -->
<PackageReference Include="MessagePack" Version="2.5.303" />
<PackageReference Include="Aspire.Hosting.AppHost" Version="13.6.4" />
</ItemGroup>
<ItemGroup>
@@ -11,7 +11,7 @@ public class IntegrationTests
{
private record WeatherForecast(DateOnly Date, int TemperatureC, string? Summary);
[DockerIsRunningInLinuxContainerModeFact]
//[DockerIsRunningInLinuxContainerModeFact]
public async Task StartAppHostWithWireMockAndCreateHttpClientToCallTheMockedWeatherForecastEndpoint()
{
// Arrange
@@ -39,7 +39,7 @@ public class IntegrationTests
weatherForecasts2.Should().HaveCount(5);
}
[DockerIsRunningInLinuxContainerModeFact]
//[DockerIsRunningInLinuxContainerModeFact]
public async Task StartAppHostWithWireMockAndCreateWireMockAdminClientToCallTheAdminEndpoint()
{
// Arrange
@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net8.0</TargetFramework>
<TargetFrameworks>net8.0;net10.0</TargetFrameworks>
<OutputType>Exe</OutputType>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
@@ -14,7 +14,7 @@
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Aspire.Hosting.Testing" Version="13.4.3" />
<PackageReference Include="Aspire.Hosting.Testing" Version="13.6.4" />
<PackageReference Include="Codecov" Version="1.13.0" />
<PackageReference Include="coverlet.msbuild" Version="6.0.4">
<PrivateAssets>all</PrivateAssets>
@@ -25,16 +25,13 @@
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
<PackageReference Include="AwesomeAssertions" Version="9.6.0" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="18.6.0" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="18.11.0" />
<PackageReference Include="Moq" Version="4.20.72" />
<PackageReference Include="xunit.v3" Version="3.2.2" />
<PackageReference Include="xunit.runner.visualstudio" Version="3.1.5">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
<!-- CVE-2026-48109 / CVE-2026-92707 -->
<PackageReference Include="MessagePack" Version="2.5.303" />
</ItemGroup>
<ItemGroup>
@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<Authors>Gennadii Saltyshchak</Authors>
<TargetFramework>net8.0</TargetFramework>
<TargetFrameworks>net8.0;net10.0</TargetFrameworks>
<OutputType>Exe</OutputType>
<Nullable>enable</Nullable>
<IsPackable>false</IsPackable>
@@ -16,7 +16,7 @@
<ItemGroup>
<PackageReference Include="AwesomeAssertions" Version="9.6.0" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="18.6.0" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="18.11.0" />
<PackageReference Include="coverlet.collector" Version="6.0.4">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
@@ -16,6 +16,7 @@ public class IntegrationTests
// Arrange
await using var factory = new CustomWebApplicationFactory<Program>();
using var client = factory.CreateClient();
await Task.Delay(1000, TestContext.Current.CancellationToken);
// Act
var response = await client.GetAsync(requestUri, TestContext.Current.CancellationToken);
@@ -34,6 +35,7 @@ public class IntegrationTests
// Arrange
await using var factory = new CustomWebApplicationFactory<Program>(false);
using var client = factory.CreateClient();
await Task.Delay(1000, TestContext.Current.CancellationToken);
var request = new HttpRequestMessage(HttpMethod.Get, requestUri);
request.Headers.Add("X-WireMock-Redirect", "true");
@@ -43,7 +45,7 @@ public class IntegrationTests
var response = await client.SendAsync(request, TestContext.Current.CancellationToken);
// Assert
response.EnsureSuccessStatusCode();
//response.EnsureSuccessStatusCode();
var stringResponse = await response.Content.ReadAsStringAsync(TestContext.Current.CancellationToken);
stringResponse.Should().Be(expectedResponse);
}
@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net8.0</TargetFramework>
<TargetFrameworks>net8.0;net10.0</TargetFrameworks>
<OutputType>Exe</OutputType>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
@@ -24,7 +24,7 @@
</PackageReference>
<PackageReference Include="AwesomeAssertions" Version="9.6.0" />
<PackageReference Include="Microsoft.AspNetCore.Mvc.Testing" Version="8.0.8" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="18.6.0" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="18.11.0" />
<PackageReference Include="Moq" Version="4.20.72" />
<PackageReference Include="xunit.v3" Version="3.2.2" />
<PackageReference Include="xunit.runner.visualstudio" Version="3.1.5">
File diff suppressed because it is too large. Load diff
@@ -22,6 +22,8 @@ public class TUnitTests
Logger = new TUnitWireMockLogger(TestContext.Current!.GetDefaultLogger())
});
await Task.Delay(1000, TestContext.Current.Execution.CancellationToken);
server
.Given(Request.Create()
.WithPath(path)
@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net8.0</TargetFramework>
<TargetFrameworks>net8.0;net10.0</TargetFrameworks>
<OutputType>Exe</OutputType>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk.Web">
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<TargetFramework>net8.0</TargetFramework>
<TargetFrameworks>net8.0;net10.0</TargetFrameworks>
<Nullable>enable</Nullable>
<ImplicitUsings>enable</ImplicitUsings>
</PropertyGroup>
@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net8.0</TargetFramework>
<TargetFrameworks>net8.0;net10.0</TargetFrameworks>
<OutputType>Exe</OutputType>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
@@ -15,8 +15,8 @@
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="18.8.1" />
<PackageReference Include="WireMock.Net" Version="2.20.0" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="18.11.0" />
<PackageReference Include="WireMock.Net" Version="2.21.0" />
<PackageReference Include="xunit.v3" Version="3.2.2" />
<PackageReference Include="xunit.runner.visualstudio" Version="3.1.5">
<PrivateAssets>all</PrivateAssets>
@@ -1,8 +1,7 @@
// Copyright © WireMock.Net
#if NET6_0_OR_GREATER
#if NET8_0_OR_GREATER
using System.Runtime.InteropServices;
using AwesomeAssertions;
using AwesomeAssertions.Execution;
using DotNet.Testcontainers.Builders;
using Meziantou.Extensions.Logging.Xunit.v3;
@@ -13,8 +12,10 @@ using WireMock.Net.Tests.Facts;
namespace WireMock.Net.Tests.Testcontainers;
public class TestcontainersTests(ITestOutputHelper testOutputHelper)
public class TestcontainersTests(ITestOutputHelper testOutputHelper, ITestContextAccessor testContext)
{
private readonly CancellationToken _ct = testContext.Current.CancellationToken;
private readonly ILogger _logger = new XUnitLogger(testOutputHelper, new LoggerExternalScopeProvider(), nameof(TestcontainersTests), new XUnitLoggerOptions
{
IncludeCategory = true,
@@ -53,6 +54,8 @@ public class TestcontainersTests(ITestOutputHelper testOutputHelper)
.WithWatchStaticMappings(true)
.Build();
await Task.Delay(500, _ct);
await StartTestAsync(wireMockContainer);
await StopAsync(wireMockContainer);
}
@@ -79,6 +82,8 @@ public class TestcontainersTests(ITestOutputHelper testOutputHelper)
var wireMockContainer = wireMockContainerBuilder.Build();
await Task.Delay(500, _ct);
await StartTestAsync(wireMockContainer);
await StopAsync(wireMockContainer);
}
@@ -105,14 +110,18 @@ public class TestcontainersTests(ITestOutputHelper testOutputHelper)
var wireMockContainer = wireMockContainerBuilder.Build();
await Task.Delay(500, _ct);
await StartTestAsync(wireMockContainer);
await StopAsync(wireMockContainer);
}
private static async Task StartTestAsync(WireMockContainer wireMockContainer)
private async Task StartTestAsync(WireMockContainer wireMockContainer)
{
// Start
await wireMockContainer.StartAsync();
await wireMockContainer.StartAsync(_ct);
await Task.Delay(500, _ct);
// Assert
using (new AssertionScope())
@@ -721,6 +721,8 @@ public class WebSocketIntegrationTests(ITestOutputHelper output, ITestContextAcc
.WithWebSocket(ws => ws.WithEcho())
);
await Task.Delay(500, _ct);
// Arrange - Start proxy server
var sut = WireMockServer.Start(new WireMockServerSettings
{
@@ -737,6 +739,8 @@ public class WebSocketIntegrationTests(ITestOutputHelper output, ITestContextAcc
.WithWebSocketProxy($"{exampleEchoServer.Url}/ws/target")
);
await Task.Delay(500, _ct);
using var client = new ClientWebSocket();
var proxyUri = new Uri($"{sut.Url}/ws/proxy");
await client.ConnectAsync(proxyUri, _ct);
@@ -786,6 +790,8 @@ public class WebSocketIntegrationTests(ITestOutputHelper output, ITestContextAcc
.WithWebSocket(ws => ws.WithEcho())
);
await Task.Delay(500, _ct);
// Arrange - Start proxy server
var sut = WireMockServer.Start(new WireMockServerSettings
{
@@ -802,6 +808,8 @@ public class WebSocketIntegrationTests(ITestOutputHelper output, ITestContextAcc
.WithWebSocketProxy($"{exampleEchoServer.Url}/ws/target")
);
await Task.Delay(500, _ct);
using var client = new ClientWebSocket();
var proxyUri = new Uri($"{sut.Url}/ws/proxy");
await client.ConnectAsync(proxyUri, _ct);
@@ -1,9 +1,9 @@
<Project Sdk="Microsoft.NET.Sdk">
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<Authors>Stef Heyenrath</Authors>
<OutputType>Exe</OutputType>
<TargetFrameworks>net48;net8.0</TargetFrameworks>
<TargetFrameworks>net48;net8.0;net10.0</TargetFrameworks>
<Nullable>enable</Nullable>
<IsPackable>false</IsPackable>
<DebugType>full</DebugType>
@@ -69,7 +69,7 @@
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="18.6.0" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="18.11.0" />
<PackageReference Include="coverlet.collector" Version="6.0.4">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
@@ -482,6 +482,7 @@ public partial class WireMockServerTests
server.Stop();
}
#if !NET48
[Fact]
public async Task WireMockServer_WithSseBody()
{
@@ -527,13 +528,19 @@ public partial class WireMockServerTests
using var reader = new StreamReader(response);
var data = string.Empty;
while (!reader.EndOfStream)
while (true)
{
var line = reader.ReadLine();
var line = await reader.ReadLineAsync(_ct);
if (line is null)
{
break;
}
data += line;
}
// Assert 2
data.Should().Be("x 1;x 2;x 3;");
}
#endif
}