diff --git a/.docfx/Dockerfile.docfx b/.docfx/Dockerfile.docfx index 5cc1890..14b7583 100644 --- a/.docfx/Dockerfile.docfx +++ b/.docfx/Dockerfile.docfx @@ -1,9 +1,9 @@ -ARG NGINX_VERSION=1.29.1-alpine +ARG NGINX_VERSION=1.29.3-alpine FROM --platform=$BUILDPLATFORM nginx:${NGINX_VERSION} AS base RUN rm -rf /usr/share/nginx/html/* -FROM --platform=$BUILDPLATFORM codebeltnet/docfx:2.78.3 AS build +FROM --platform=$BUILDPLATFORM codebeltnet/docfx:2.78.4 AS build ADD [".", "docfx"] diff --git a/.docfx/docfx.json b/.docfx/docfx.json index 6681193..2e9e6fe 100644 --- a/.docfx/docfx.json +++ b/.docfx/docfx.json @@ -14,7 +14,7 @@ "dest": "api", "filter": "filterConfig.yml", "properties": { - "TargetFramework": "net9.0" + "TargetFramework": "net10.0" } } ], diff --git a/.docfx/includes/availability-default.md b/.docfx/includes/availability-default.md index 89f4c06..fa28d0e 100644 --- a/.docfx/includes/availability-default.md +++ b/.docfx/includes/availability-default.md @@ -1 +1 @@ -Availability: .NET 9, .NET 8 and .NET Standard 2.0 \ No newline at end of file +Availability: .NET 10, .NET 9 and .NET Standard 2.0 \ No newline at end of file diff --git a/.docfx/includes/availability-modern.md b/.docfx/includes/availability-modern.md index abf5369..af5cf4b 100644 --- a/.docfx/includes/availability-modern.md +++ b/.docfx/includes/availability-modern.md @@ -1 +1 @@ -Availability: .NET 9 and .NET 8 \ No newline at end of file +Availability: .NET 10 and .NET 9 \ No newline at end of file diff --git a/.github/workflows/pipelines.yml b/.github/workflows/pipelines.yml index a543e0b..25a2a9d 100644 --- a/.github/workflows/pipelines.yml +++ b/.github/workflows/pipelines.yml @@ -27,7 +27,7 @@ jobs: strategy: matrix: configuration: [Debug, Release] - uses: codebeltnet/jobs-dotnet-build/.github/workflows/default.yml@v2 + uses: codebeltnet/jobs-dotnet-build/.github/workflows/default.yml@v3 with: configuration: ${{ matrix.configuration }} strong-name-key-filename: xunit.snk @@ -41,7 +41,7 @@ jobs: strategy: matrix: configuration: [Debug, Release] - uses: codebeltnet/jobs-dotnet-pack/.github/workflows/default.yml@v2 + uses: codebeltnet/jobs-dotnet-pack/.github/workflows/default.yml@v3 with: configuration: ${{ matrix.configuration }} version: ${{ needs.build.outputs.version }} @@ -54,7 +54,7 @@ jobs: matrix: os: [ubuntu-24.04, windows-2022] configuration: [Debug, Release] - uses: codebeltnet/jobs-dotnet-test/.github/workflows/default.yml@v2 + uses: codebeltnet/jobs-dotnet-test/.github/workflows/default.yml@v3 with: configuration: ${{ matrix.configuration }} runs-on: ${{ matrix.os }} @@ -65,7 +65,7 @@ jobs: sonarcloud: name: call-sonarcloud needs: [build,test] - uses: codebeltnet/jobs-sonarcloud/.github/workflows/default.yml@v2 + uses: codebeltnet/jobs-sonarcloud/.github/workflows/default.yml@v3 with: organization: geekle projectKey: xunit @@ -80,17 +80,17 @@ jobs: repository: codebeltnet/xunit secrets: inherit - codeql: - name: call-codeql - needs: [build,test] - uses: codebeltnet/jobs-codeql/.github/workflows/default.yml@v2 - permissions: - security-events: write + # codeql: + # name: call-codeql + # needs: [build,test] + # uses: codebeltnet/jobs-codeql/.github/workflows/default.yml@v3 + # permissions: + # security-events: write deploy: if: github.event_name != 'pull_request' name: call-nuget - needs: [build, pack, test, sonarcloud, codecov, codeql] + needs: [build, pack, test, sonarcloud, codecov] uses: codebeltnet/jobs-nuget-push/.github/workflows/default.yml@v2 with: version: ${{ needs.build.outputs.version }} diff --git a/.nuget/Codebelt.Extensions.Xunit.App/PackageReleaseNotes.txt b/.nuget/Codebelt.Extensions.Xunit.App/PackageReleaseNotes.txt index 767cddb..17858bf 100644 --- a/.nuget/Codebelt.Extensions.Xunit.App/PackageReleaseNotes.txt +++ b/.nuget/Codebelt.Extensions.Xunit.App/PackageReleaseNotes.txt @@ -1,4 +1,10 @@ -Version 10.0.7 +Version 11.0.0 +Availability: .NET 10 and .NET 9 +  +# ALM +- CHANGED Dependencies have been upgraded to the latest compatible versions for all supported target frameworks (TFMs) +  +Version 10.0.7 Availability: .NET 9 and .NET 8 # ALM @@ -6,19 +12,19 @@ Availability: .NET 9 and .NET 8   Version 10.0.6 Availability: .NET 9 and .NET 8 - +  # ALM - CHANGED Dependencies have been upgraded to the latest compatible versions for all supported target frameworks (TFMs)   Version 10.0.5 Availability: .NET 9 and .NET 8 - +  # ALM - CHANGED Dependencies have been upgraded to the latest compatible versions for all supported target frameworks (TFMs)   Version 10.0.4 Availability: .NET 9 and .NET 8 - +  # ALM - CHANGED Dependencies have been upgraded to the latest compatible versions for all supported target frameworks (TFMs)   diff --git a/.nuget/Codebelt.Extensions.Xunit.App/README.md b/.nuget/Codebelt.Extensions.Xunit.App/README.md index cfe860f..349338c 100644 --- a/.nuget/Codebelt.Extensions.Xunit.App/README.md +++ b/.nuget/Codebelt.Extensions.Xunit.App/README.md @@ -2,6 +2,11 @@ An open-source project (MIT license) that targets and complements the [xUnit.net](https://xunit.net/) test platform. It provides a uniform and convenient way of doing unit test for all project types in .NET. +Your versatile xUnit companion for: +- Modern development with `.NET 9` and `.NET 10`, +- Cross-platform libraries with `.NET Standard 2` (where applicable), +- Legacy applications on `.NET Framework 4.6.2` and newer. + It is, by heart, free, flexible and built to extend and boost your agile codebelt. ## **Codebelt.Extensions.Xunit.App** for .NET diff --git a/.nuget/Codebelt.Extensions.Xunit.Hosting.AspNetCore/PackageReleaseNotes.txt b/.nuget/Codebelt.Extensions.Xunit.Hosting.AspNetCore/PackageReleaseNotes.txt index d278ed4..6fb7ade 100644 --- a/.nuget/Codebelt.Extensions.Xunit.Hosting.AspNetCore/PackageReleaseNotes.txt +++ b/.nuget/Codebelt.Extensions.Xunit.Hosting.AspNetCore/PackageReleaseNotes.txt @@ -1,4 +1,10 @@ -Version 10.0.7 +Version 11.0.0 +Availability: .NET 10 and .NET 9 +  +# ALM +- CHANGED Dependencies have been upgraded to the latest compatible versions for all supported target frameworks (TFMs) +  +Version 10.0.7 Availability: .NET 9 and .NET 8 # ALM @@ -6,19 +12,19 @@ Availability: .NET 9 and .NET 8   Version 10.0.6 Availability: .NET 9 and .NET 8 - +  # ALM - CHANGED Dependencies have been upgraded to the latest compatible versions for all supported target frameworks (TFMs)   Version 10.0.5 Availability: .NET 9 and .NET 8 - +  # ALM - CHANGED Dependencies have been upgraded to the latest compatible versions for all supported target frameworks (TFMs)   Version 10.0.4 Availability: .NET 9 and .NET 8 - +  # ALM - CHANGED Dependencies have been upgraded to the latest compatible versions for all supported target frameworks (TFMs)   diff --git a/.nuget/Codebelt.Extensions.Xunit.Hosting.AspNetCore/README.md b/.nuget/Codebelt.Extensions.Xunit.Hosting.AspNetCore/README.md index 9a5aba9..46ff128 100644 --- a/.nuget/Codebelt.Extensions.Xunit.Hosting.AspNetCore/README.md +++ b/.nuget/Codebelt.Extensions.Xunit.Hosting.AspNetCore/README.md @@ -2,7 +2,10 @@ An open-source project (MIT license) that targets and complements the [xUnit.net](https://xunit.net/) test platform. It provides a uniform and convenient way of doing unit test for all project types in .NET. -Perhaps even more convenient than what [WebApplicationFactory](https://learn.microsoft.com/en-us/dotnet/api/microsoft.aspnetcore.mvc.testing.webapplicationfactory-1) has to offer? +Your versatile xUnit companion for: +- Modern development with `.NET 9` and `.NET 10`, +- Cross-platform libraries with `.NET Standard 2` (where applicable), +- Legacy applications on `.NET Framework 4.6.2` and newer. It is, by heart, free, flexible and built to extend and boost your agile codebelt. @@ -10,6 +13,8 @@ It is, by heart, free, flexible and built to extend and boost your agile codebel The `Codebelt.Extensions.Xunit.Hosting.AspNetCore` namespace contains types that provides a uniform way of doing unit testing that depends on ASP.NET Core and used in conjunction with Microsoft Dependency Injection. The namespace relates to the `Microsoft.AspNetCore.TestHost` namespace. +Perhaps even more convenient than what [WebApplicationFactory](https://learn.microsoft.com/en-us/dotnet/api/microsoft.aspnetcore.mvc.testing.webapplicationfactory-1) has to offer? + More documentation available at our documentation site: - [Codebelt.Extensions.Xunit.Hosting.AspNetCore](https://xunit.codebelt.net/api/Codebelt.Extensions.Xunit.Hosting.AspNetCore.html) 🔗 diff --git a/.nuget/Codebelt.Extensions.Xunit.Hosting/PackageReleaseNotes.txt b/.nuget/Codebelt.Extensions.Xunit.Hosting/PackageReleaseNotes.txt index 47f60ab..1702f12 100644 --- a/.nuget/Codebelt.Extensions.Xunit.Hosting/PackageReleaseNotes.txt +++ b/.nuget/Codebelt.Extensions.Xunit.Hosting/PackageReleaseNotes.txt @@ -1,4 +1,13 @@ -Version 10.0.7 +Version 11.0.0 +Availability: .NET 10, .NET 9 and .NET Standard 2.0 +  +# ALM +- CHANGED Dependencies have been upgraded to the latest compatible versions for all supported target frameworks (TFMs) +  +# Breaking Changes +- CHANGED HostFixture class in the Codebelt.Extensions.Xunit.Hosting namespace to use ValueTask for InitializeAsync instead of Task (xUnit v3 consequence change) +  +Version 10.0.7 Availability: .NET 9, .NET 8 and .NET Standard 2.0 # ALM @@ -6,19 +15,19 @@ Availability: .NET 9, .NET 8 and .NET Standard 2.0   Version 10.0.6 Availability: .NET 9, .NET 8 and .NET Standard 2.0 - +  # ALM - CHANGED Dependencies have been upgraded to the latest compatible versions for all supported target frameworks (TFMs)   Version 10.0.5 Availability: .NET 9, .NET 8 and .NET Standard 2.0 - +  # ALM - CHANGED Dependencies have been upgraded to the latest compatible versions for all supported target frameworks (TFMs)   Version 10.0.4 Availability: .NET 9, .NET 8 and .NET Standard 2.0 - +  # ALM - CHANGED Dependencies have been upgraded to the latest compatible versions for all supported target frameworks (TFMs)   diff --git a/.nuget/Codebelt.Extensions.Xunit.Hosting/README.md b/.nuget/Codebelt.Extensions.Xunit.Hosting/README.md index 4f1d6f8..795d2c0 100644 --- a/.nuget/Codebelt.Extensions.Xunit.Hosting/README.md +++ b/.nuget/Codebelt.Extensions.Xunit.Hosting/README.md @@ -2,6 +2,11 @@ An open-source project (MIT license) that targets and complements the [xUnit.net](https://xunit.net/) test platform. It provides a uniform and convenient way of doing unit test for all project types in .NET. +Your versatile xUnit companion for: +- Modern development with `.NET 9` and `.NET 10`, +- Cross-platform libraries with `.NET Standard 2` (where applicable), +- Legacy applications on `.NET Framework 4.6.2` and newer. + It is, by heart, free, flexible and built to extend and boost your agile codebelt. ## **Codebelt.Extensions.Xunit.Hosting** for .NET diff --git a/.nuget/Codebelt.Extensions.Xunit/PackageReleaseNotes.txt b/.nuget/Codebelt.Extensions.Xunit/PackageReleaseNotes.txt index e750fe3..04540cb 100644 --- a/.nuget/Codebelt.Extensions.Xunit/PackageReleaseNotes.txt +++ b/.nuget/Codebelt.Extensions.Xunit/PackageReleaseNotes.txt @@ -1,4 +1,13 @@ -Version 10.0.7 +Version 11.0.0 +Availability: .NET 10 and .NET 9 +  +# ALM +- CHANGED Dependencies have been upgraded to the latest compatible versions for all supported target frameworks (TFMs) +  +# Breaking Changes +- CHANGED Test class in the Codebelt.Extensions.Xunit namespace to use ValueTask for InitializeAsync instead of Task (xUnit v3 consequence change) +  +Version 10.0.7 Availability: .NET 9 and .NET 8 # ALM @@ -6,19 +15,19 @@ Availability: .NET 9 and .NET 8   Version 10.0.6 Availability: .NET 9 and .NET 8 - +  # ALM - CHANGED Dependencies have been upgraded to the latest compatible versions for all supported target frameworks (TFMs)   Version 10.0.5 Availability: .NET 9 and .NET 8 - +  # ALM - CHANGED Dependencies have been upgraded to the latest compatible versions for all supported target frameworks (TFMs)   Version 10.0.4 Availability: .NET 9 and .NET 8 - +  # ALM - CHANGED Dependencies have been upgraded to the latest compatible versions for all supported target frameworks (TFMs)   diff --git a/.nuget/Codebelt.Extensions.Xunit/README.md b/.nuget/Codebelt.Extensions.Xunit/README.md index 7a06563..9d13aa3 100644 --- a/.nuget/Codebelt.Extensions.Xunit/README.md +++ b/.nuget/Codebelt.Extensions.Xunit/README.md @@ -2,6 +2,11 @@ An open-source project (MIT license) that targets and complements the [xUnit.net](https://xunit.net/) test platform. It provides a uniform and convenient way of doing unit test for all project types in .NET. +Your versatile xUnit companion for: +- Modern development with `.NET 9` and `.NET 10`, +- Cross-platform libraries with `.NET Standard 2` (where applicable), +- Legacy applications on `.NET Framework 4.6.2` and newer. + It is, by heart, free, flexible and built to extend and boost your agile codebelt. ## **Codebelt.Extensions.Xunit** for .NET diff --git a/CHANGELOG.md b/CHANGELOG.md index 1aeb084..69d97a0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,32 @@ For more details, please refer to `PackageReleaseNotes.txt` on a per assembly ba > [!NOTE] > Changelog entries prior to version 8.4.0 was migrated from previous versions of Cuemon.Extensions.Xunit, Cuemon.Extensions.Xunit.Hosting, and Cuemon.Extensions.Xunit.Hosting.AspNetCore. +## [11.0.0] - 2025-11-11 + +This is a major release that focuses on adapting to the latest .NET 10 (LTS) release, while also removing support for .NET 8 (LTS). + +At the same time we also adapted xUnit v3 as this is the one in active development whereas xUnit v2 is in maintenance mode only. + +> [!WARNING] +> Design choices made in xUnit v3 are a bit puzzling to me, especially around something as important as versioning and requirement for executable projects. +> +> All good practices has been put aside, and for the majority of new packages, major version is baked into the package name itself (e.g., `xunit.v3` instead of just `xunit`). +> +> Semantic Versioning is all about conveying meaning and intent through version numbers, and this approach introduces unnecessary redundancy and makes long-term maintenance less smooth. Its a mess that could lead others down a slippery slope of wrongdoings due to the popularity of the framework. +> +> Another unfortunate design choice is the requirement of executable projects (i.e., output type `exe` instead of `library`). This has implications when you have optimized your CI to not waste CPU cycles on restoring/building test projects (build once strategy). +> +> Updating to v11.0.0 of this library should not provide issues for you as a consumer, but you should expect consequence changes related to xUnit v3. Because of this, I do recommend familiarizing yourself with the [Migrating Unit Tests from xUnit v2 to v3](https://xunit.net/docs/getting-started/v3/migration) guide. +> +> It's also worth reading the [What's New in xUnit v3](https://xunit.net/docs/getting-started/v3/whats-new) document to get a better understanding of the changes and improvements introduced. +> +> That written, xUnit will continue to remain my preferred test framework for .NET, I just needed to vent my frustration and warn you about the pitfalls of xUnit v3. + +### Changed + +- Test class in the Codebelt.Extensions.Xunit namespace to use ValueTask for InitializeAsync instead of Task (xUnit v3 consequence change) +- HostFixture class in the Codebelt.Extensions.Xunit.Hosting namespace to use ValueTask for InitializeAsync instead of Task (xUnit v3 consequence change) + ## [10.0.7] - 2025-10-17 This is a service update that focuses on package dependencies. diff --git a/Directory.Build.props b/Directory.Build.props index 5be2bb7..1e74516 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -15,7 +15,7 @@ - net9.0;net8.0;netstandard2.0 + net10.0;net9.0;netstandard2.0 Copyright © Geekle 2024-2025. All rights reserved. gimlichael Geekle @@ -51,11 +51,11 @@ - net9.0;net8.0 + net10.0;net9.0 - net9.0;net8.0;net48 + net10.0;net9.0;net48 @@ -68,12 +68,13 @@ none NU1701,NU1903,NETSDK1206 false + Exe - - + + all runtime; build; native; contentfiles; analyzers; buildtransitive diff --git a/Directory.Packages.props b/Directory.Packages.props index 0bf02e5..e920407 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -4,24 +4,24 @@ true - - - - - + + + + - - + - - - - - + + + + - + + + + @@ -31,12 +31,12 @@ - - - - - - - + + + + + + + \ No newline at end of file diff --git a/README.md b/README.md index 97e9316..e15334a 100644 --- a/README.md +++ b/README.md @@ -6,6 +6,15 @@ An open-source project (MIT license) that targets and complements the [xUnit.net](https://xunit.net/) test platform. It provides a uniform and convenient way of doing unit test for all project types in .NET. +Your versatile xUnit companion for: +- Modern development with `.NET 9` and `.NET 10`, +- Cross-platform libraries with `.NET Standard 2` (where applicable), +- Legacy applications on `.NET Framework 4.6.2` and newer. + +It is, by heart, free, flexible and built to extend and boost your agile codebelt. + +## 📚 Documentation + Full documentation (generated by [DocFx](https://github.com/dotnet/docfx)) located here: https://xunit.codebelt.net/ ### 📦 Standalone Packages diff --git a/src/Codebelt.Extensions.Xunit.App/Codebelt.Extensions.Xunit.App.csproj b/src/Codebelt.Extensions.Xunit.App/Codebelt.Extensions.Xunit.App.csproj index ffdf4ed..0cffd8e 100644 --- a/src/Codebelt.Extensions.Xunit.App/Codebelt.Extensions.Xunit.App.csproj +++ b/src/Codebelt.Extensions.Xunit.App/Codebelt.Extensions.Xunit.App.csproj @@ -1,7 +1,7 @@  - net9.0;net8.0 + net10.0;net9.0 250bdf91-e7c7-4cb4-a39d-e1a5374c5602 diff --git a/src/Codebelt.Extensions.Xunit.Hosting.AspNetCore/Codebelt.Extensions.Xunit.Hosting.AspNetCore.csproj b/src/Codebelt.Extensions.Xunit.Hosting.AspNetCore/Codebelt.Extensions.Xunit.Hosting.AspNetCore.csproj index 4ca2479..3d0dd7c 100644 --- a/src/Codebelt.Extensions.Xunit.Hosting.AspNetCore/Codebelt.Extensions.Xunit.Hosting.AspNetCore.csproj +++ b/src/Codebelt.Extensions.Xunit.Hosting.AspNetCore/Codebelt.Extensions.Xunit.Hosting.AspNetCore.csproj @@ -1,7 +1,7 @@  - net9.0;net8.0 + net10.0;net9.0 200bdf91-e7c7-4cb4-a39d-e1a5374c5602 false diff --git a/src/Codebelt.Extensions.Xunit.Hosting.AspNetCore/MinimalWebHostTest.cs b/src/Codebelt.Extensions.Xunit.Hosting.AspNetCore/MinimalWebHostTest.cs index 7619643..49474c7 100644 --- a/src/Codebelt.Extensions.Xunit.Hosting.AspNetCore/MinimalWebHostTest.cs +++ b/src/Codebelt.Extensions.Xunit.Hosting.AspNetCore/MinimalWebHostTest.cs @@ -2,7 +2,6 @@ using Microsoft.AspNetCore.Builder; using Microsoft.Extensions.Hosting; using Xunit; -using Xunit.Abstractions; namespace Codebelt.Extensions.Xunit.Hosting.AspNetCore { diff --git a/src/Codebelt.Extensions.Xunit.Hosting.AspNetCore/WebHostTest.cs b/src/Codebelt.Extensions.Xunit.Hosting.AspNetCore/WebHostTest.cs index c5e2a1a..b7b6b99 100644 --- a/src/Codebelt.Extensions.Xunit.Hosting.AspNetCore/WebHostTest.cs +++ b/src/Codebelt.Extensions.Xunit.Hosting.AspNetCore/WebHostTest.cs @@ -1,7 +1,7 @@ using System; using Microsoft.AspNetCore.Builder; using Microsoft.Extensions.Hosting; -using Xunit.Abstractions; +using Xunit; namespace Codebelt.Extensions.Xunit.Hosting.AspNetCore { diff --git a/src/Codebelt.Extensions.Xunit.Hosting/HostFixture.cs b/src/Codebelt.Extensions.Xunit.Hosting/HostFixture.cs index 1c3a55d..93b1e19 100644 --- a/src/Codebelt.Extensions.Xunit.Hosting/HostFixture.cs +++ b/src/Codebelt.Extensions.Xunit.Hosting/HostFixture.cs @@ -184,15 +184,10 @@ public async ValueTask DisposeAsync() /// /// Called immediately after the class has been created, before it is used. /// - /// A that represents the asynchronous operation. - public virtual Task InitializeAsync() + /// A that represents the asynchronous operation. + public virtual ValueTask InitializeAsync() { - return Task.CompletedTask; - } - - Task IAsyncLifetime.DisposeAsync() - { - return DisposeAsync().AsTask(); + return default; } } } diff --git a/src/Codebelt.Extensions.Xunit.Hosting/HostTest.cs b/src/Codebelt.Extensions.Xunit.Hosting/HostTest.cs index 2fcb209..3e2cf9f 100644 --- a/src/Codebelt.Extensions.Xunit.Hosting/HostTest.cs +++ b/src/Codebelt.Extensions.Xunit.Hosting/HostTest.cs @@ -3,7 +3,6 @@ using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Hosting; using Xunit; -using Xunit.Abstractions; namespace Codebelt.Extensions.Xunit.Hosting { diff --git a/src/Codebelt.Extensions.Xunit.Hosting/MinimalHostTest.cs b/src/Codebelt.Extensions.Xunit.Hosting/MinimalHostTest.cs index 2eea7f9..bc76807 100644 --- a/src/Codebelt.Extensions.Xunit.Hosting/MinimalHostTest.cs +++ b/src/Codebelt.Extensions.Xunit.Hosting/MinimalHostTest.cs @@ -1,7 +1,6 @@ using System; using Microsoft.Extensions.Hosting; using Xunit; -using Xunit.Abstractions; namespace Codebelt.Extensions.Xunit.Hosting { diff --git a/src/Codebelt.Extensions.Xunit.Hosting/ServiceCollectionExtensions.cs b/src/Codebelt.Extensions.Xunit.Hosting/ServiceCollectionExtensions.cs index ab42927..727897c 100644 --- a/src/Codebelt.Extensions.Xunit.Hosting/ServiceCollectionExtensions.cs +++ b/src/Codebelt.Extensions.Xunit.Hosting/ServiceCollectionExtensions.cs @@ -2,7 +2,7 @@ using System.Linq; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Logging; -using Xunit.Abstractions; +using Xunit; namespace Codebelt.Extensions.Xunit.Hosting { diff --git a/src/Codebelt.Extensions.Xunit.Hosting/XunitTestLogger.cs b/src/Codebelt.Extensions.Xunit.Hosting/XunitTestLogger.cs index efa5aab..5ea6aa2 100644 --- a/src/Codebelt.Extensions.Xunit.Hosting/XunitTestLogger.cs +++ b/src/Codebelt.Extensions.Xunit.Hosting/XunitTestLogger.cs @@ -1,7 +1,7 @@ using System; using System.Text; using Microsoft.Extensions.Logging; -using Xunit.Abstractions; +using Xunit; namespace Codebelt.Extensions.Xunit.Hosting { diff --git a/src/Codebelt.Extensions.Xunit.Hosting/XunitTestLoggerProvider.cs b/src/Codebelt.Extensions.Xunit.Hosting/XunitTestLoggerProvider.cs index 00a52a1..41e7849 100644 --- a/src/Codebelt.Extensions.Xunit.Hosting/XunitTestLoggerProvider.cs +++ b/src/Codebelt.Extensions.Xunit.Hosting/XunitTestLoggerProvider.cs @@ -2,7 +2,7 @@ using System; using System.Collections.Concurrent; using System.Collections.Generic; -using Xunit.Abstractions; +using Xunit; namespace Codebelt.Extensions.Xunit.Hosting { diff --git a/src/Codebelt.Extensions.Xunit/Codebelt.Extensions.Xunit.csproj b/src/Codebelt.Extensions.Xunit/Codebelt.Extensions.Xunit.csproj index 6247b5f..f89e32f 100644 --- a/src/Codebelt.Extensions.Xunit/Codebelt.Extensions.Xunit.csproj +++ b/src/Codebelt.Extensions.Xunit/Codebelt.Extensions.Xunit.csproj @@ -11,9 +11,8 @@ - - - + + diff --git a/src/Codebelt.Extensions.Xunit/ITestOutputHelperAccessor.cs b/src/Codebelt.Extensions.Xunit/ITestOutputHelperAccessor.cs index 0b1f5a8..71aff75 100644 --- a/src/Codebelt.Extensions.Xunit/ITestOutputHelperAccessor.cs +++ b/src/Codebelt.Extensions.Xunit/ITestOutputHelperAccessor.cs @@ -1,4 +1,4 @@ -using Xunit.Abstractions; +using Xunit; namespace Codebelt.Extensions.Xunit { diff --git a/src/Codebelt.Extensions.Xunit/Test.cs b/src/Codebelt.Extensions.Xunit/Test.cs index 7d5139a..2754078 100644 --- a/src/Codebelt.Extensions.Xunit/Test.cs +++ b/src/Codebelt.Extensions.Xunit/Test.cs @@ -3,7 +3,6 @@ using System.Text.RegularExpressions; using System.Threading.Tasks; using Xunit; -using Xunit.Abstractions; namespace Codebelt.Extensions.Xunit { @@ -152,15 +151,10 @@ public async ValueTask DisposeAsync() /// /// Called immediately after the class has been created, before it is used. /// - /// A that represents the asynchronous operation. - public virtual Task InitializeAsync() + /// A that represents the asynchronous operation. + public virtual ValueTask InitializeAsync() { - return Task.CompletedTask; - } - - Task IAsyncLifetime.DisposeAsync() - { - return DisposeAsync().AsTask(); + return default; } } } diff --git a/src/Codebelt.Extensions.Xunit/TestOutputHelperAccessor.cs b/src/Codebelt.Extensions.Xunit/TestOutputHelperAccessor.cs index d3fa04b..6cef970 100644 --- a/src/Codebelt.Extensions.Xunit/TestOutputHelperAccessor.cs +++ b/src/Codebelt.Extensions.Xunit/TestOutputHelperAccessor.cs @@ -1,5 +1,5 @@ using System.Threading; -using Xunit.Abstractions; +using Xunit; namespace Codebelt.Extensions.Xunit { diff --git a/src/Codebelt.Extensions.Xunit/TestOutputHelperExtensions.cs b/src/Codebelt.Extensions.Xunit/TestOutputHelperExtensions.cs index fdb91a2..14db4f7 100644 --- a/src/Codebelt.Extensions.Xunit/TestOutputHelperExtensions.cs +++ b/src/Codebelt.Extensions.Xunit/TestOutputHelperExtensions.cs @@ -1,7 +1,7 @@ using System; using System.Collections.Generic; using System.Linq; -using Xunit.Abstractions; +using Xunit; namespace Codebelt.Extensions.Xunit { diff --git a/test/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests.csproj b/test/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests.csproj index 42fd33c..ff5a065 100644 --- a/test/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests.csproj +++ b/test/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests.csproj @@ -1,7 +1,7 @@  - net9.0;net8.0 + net10.0;net9.0 Codebelt.Extensions.Xunit.Hosting.AspNetCore diff --git a/test/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests/ManagedWebHostFixtureTest.cs b/test/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests/ManagedWebHostFixtureTest.cs index 3cfd8ce..1a097f0 100644 --- a/test/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests/ManagedWebHostFixtureTest.cs +++ b/test/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests/ManagedWebHostFixtureTest.cs @@ -2,7 +2,6 @@ using Codebelt.Extensions.Xunit.Hosting.AspNetCore.Assets; using Microsoft.AspNetCore.Builder; using Xunit; -using Xunit.Abstractions; namespace Codebelt.Extensions.Xunit.Hosting.AspNetCore { diff --git a/test/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests/MinimalMvcWebHostTestTest.cs b/test/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests/MinimalMvcWebHostTestTest.cs index da70668..a74192b 100644 --- a/test/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests/MinimalMvcWebHostTestTest.cs +++ b/test/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests/MinimalMvcWebHostTestTest.cs @@ -7,7 +7,6 @@ using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Hosting; using Xunit; -using Xunit.Abstractions; namespace Codebelt.Extensions.Xunit.Hosting.AspNetCore { diff --git a/test/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests/MinimalWebHostTestFactoryTest.cs b/test/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests/MinimalWebHostTestFactoryTest.cs index 3a0f7fc..44ed8a3 100644 --- a/test/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests/MinimalWebHostTestFactoryTest.cs +++ b/test/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests/MinimalWebHostTestFactoryTest.cs @@ -11,7 +11,6 @@ using Microsoft.AspNetCore.Http; using Microsoft.Extensions.DependencyInjection; using Xunit; -using Xunit.Abstractions; namespace Codebelt.Extensions.Xunit.Hosting.AspNetCore { diff --git a/test/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests/MinimalWebHostTestTest.cs b/test/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests/MinimalWebHostTestTest.cs index bf9159a..cb2b0b9 100644 --- a/test/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests/MinimalWebHostTestTest.cs +++ b/test/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests/MinimalWebHostTestTest.cs @@ -11,7 +11,6 @@ using Microsoft.Extensions.Logging; using Microsoft.Extensions.Options; using Xunit; -using Xunit.Abstractions; namespace Codebelt.Extensions.Xunit.Hosting.AspNetCore { diff --git a/test/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests/MvcWebHostTestTest.cs b/test/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests/MvcWebHostTestTest.cs index 7767bb9..363ccb0 100644 --- a/test/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests/MvcWebHostTestTest.cs +++ b/test/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests/MvcWebHostTestTest.cs @@ -6,7 +6,6 @@ using Microsoft.AspNetCore.TestHost; using Microsoft.Extensions.DependencyInjection; using Xunit; -using Xunit.Abstractions; namespace Codebelt.Extensions.Xunit.Hosting.AspNetCore { diff --git a/test/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests/ServiceCollectionExtensionsTest.cs b/test/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests/ServiceCollectionExtensionsTest.cs index dfb1996..3871c2a 100644 --- a/test/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests/ServiceCollectionExtensionsTest.cs +++ b/test/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests/ServiceCollectionExtensionsTest.cs @@ -3,7 +3,6 @@ using Microsoft.AspNetCore.Http; using Microsoft.Extensions.DependencyInjection; using Xunit; -using Xunit.Abstractions; namespace Codebelt.Extensions.Xunit.Hosting.AspNetCore { diff --git a/test/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests/WebHostTestFactoryTest.cs b/test/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests/WebHostTestFactoryTest.cs index cd22af3..a774341 100644 --- a/test/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests/WebHostTestFactoryTest.cs +++ b/test/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests/WebHostTestFactoryTest.cs @@ -13,7 +13,6 @@ using Microsoft.Extensions.Hosting; using Microsoft.Extensions.Logging; using Xunit; -using Xunit.Abstractions; namespace Codebelt.Extensions.Xunit.Hosting.AspNetCore { diff --git a/test/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests/WebHostTestTest.cs b/test/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests/WebHostTestTest.cs index 864f876..431aacd 100644 --- a/test/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests/WebHostTestTest.cs +++ b/test/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests/WebHostTestTest.cs @@ -10,7 +10,6 @@ using Microsoft.Extensions.Logging; using Microsoft.Extensions.Options; using Xunit; -using Xunit.Abstractions; namespace Codebelt.Extensions.Xunit.Hosting.AspNetCore { diff --git a/test/Codebelt.Extensions.Xunit.Hosting.Tests/Assets/MinimalValidHostTest.cs b/test/Codebelt.Extensions.Xunit.Hosting.Tests/Assets/MinimalValidHostTest.cs index c28f88b..74e693a 100644 --- a/test/Codebelt.Extensions.Xunit.Hosting.Tests/Assets/MinimalValidHostTest.cs +++ b/test/Codebelt.Extensions.Xunit.Hosting.Tests/Assets/MinimalValidHostTest.cs @@ -1,6 +1,5 @@ using System; using Microsoft.Extensions.DependencyInjection; -using Xunit.Abstractions; namespace Codebelt.Extensions.Xunit.Hosting.Assets { diff --git a/test/Codebelt.Extensions.Xunit.Hosting.Tests/Assets/ValidHostTest.cs b/test/Codebelt.Extensions.Xunit.Hosting.Tests/Assets/ValidHostTest.cs index 29d398c..f683f78 100644 --- a/test/Codebelt.Extensions.Xunit.Hosting.Tests/Assets/ValidHostTest.cs +++ b/test/Codebelt.Extensions.Xunit.Hosting.Tests/Assets/ValidHostTest.cs @@ -1,6 +1,5 @@ -using System; -using Microsoft.Extensions.DependencyInjection; -using Xunit.Abstractions; +using Microsoft.Extensions.DependencyInjection; +using System; using static System.Net.Mime.MediaTypeNames; namespace Codebelt.Extensions.Xunit.Hosting.Assets diff --git a/test/Codebelt.Extensions.Xunit.Hosting.Tests/Codebelt.Extensions.Xunit.Hosting.Tests.csproj b/test/Codebelt.Extensions.Xunit.Hosting.Tests/Codebelt.Extensions.Xunit.Hosting.Tests.csproj index 4a6c8f9..b66b6c1 100644 --- a/test/Codebelt.Extensions.Xunit.Hosting.Tests/Codebelt.Extensions.Xunit.Hosting.Tests.csproj +++ b/test/Codebelt.Extensions.Xunit.Hosting.Tests/Codebelt.Extensions.Xunit.Hosting.Tests.csproj @@ -16,7 +16,7 @@ - + diff --git a/test/Codebelt.Extensions.Xunit.Hosting.Tests/HostTestFactoryTest.cs b/test/Codebelt.Extensions.Xunit.Hosting.Tests/HostTestFactoryTest.cs index 37fdb68..1a68f38 100644 --- a/test/Codebelt.Extensions.Xunit.Hosting.Tests/HostTestFactoryTest.cs +++ b/test/Codebelt.Extensions.Xunit.Hosting.Tests/HostTestFactoryTest.cs @@ -1,6 +1,5 @@ using System; using Xunit; -using Xunit.Abstractions; namespace Codebelt.Extensions.Xunit.Hosting { diff --git a/test/Codebelt.Extensions.Xunit.Hosting.Tests/HostTestTest.cs b/test/Codebelt.Extensions.Xunit.Hosting.Tests/HostTestTest.cs index a31fff1..bb41732 100644 --- a/test/Codebelt.Extensions.Xunit.Hosting.Tests/HostTestTest.cs +++ b/test/Codebelt.Extensions.Xunit.Hosting.Tests/HostTestTest.cs @@ -7,12 +7,11 @@ using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Hosting; using Xunit; -using Xunit.Abstractions; -using Xunit.Priority; +using Xunit.v3.Priority; namespace Codebelt.Extensions.Xunit.Hosting { - [TestCaseOrderer(PriorityOrderer.Name, PriorityOrderer.Assembly)] + [TestCaseOrderer(typeof(PriorityOrderer))] public class HostTestTest : HostTest { private bool _isHostRunning = false; diff --git a/test/Codebelt.Extensions.Xunit.Hosting.Tests/ManagedHostFixtureTest.cs b/test/Codebelt.Extensions.Xunit.Hosting.Tests/ManagedHostFixtureTest.cs index fe94927..ce0cb58 100644 --- a/test/Codebelt.Extensions.Xunit.Hosting.Tests/ManagedHostFixtureTest.cs +++ b/test/Codebelt.Extensions.Xunit.Hosting.Tests/ManagedHostFixtureTest.cs @@ -5,7 +5,6 @@ using Microsoft.Extensions.Hosting; using Microsoft.Extensions.Logging; using Xunit; -using Xunit.Abstractions; namespace Codebelt.Extensions.Xunit.Hosting { diff --git a/test/Codebelt.Extensions.Xunit.Hosting.Tests/MinimalHostFixtureTest.cs b/test/Codebelt.Extensions.Xunit.Hosting.Tests/MinimalHostFixtureTest.cs index f9c223c..b9e446b 100644 --- a/test/Codebelt.Extensions.Xunit.Hosting.Tests/MinimalHostFixtureTest.cs +++ b/test/Codebelt.Extensions.Xunit.Hosting.Tests/MinimalHostFixtureTest.cs @@ -2,7 +2,6 @@ using System.Threading.Tasks; using Codebelt.Extensions.Xunit.Hosting.Assets; using Xunit; -using Xunit.Abstractions; namespace Codebelt.Extensions.Xunit.Hosting { diff --git a/test/Codebelt.Extensions.Xunit.Hosting.Tests/MinimalHostTestFactoryTest.cs b/test/Codebelt.Extensions.Xunit.Hosting.Tests/MinimalHostTestFactoryTest.cs index 004aed7..030006b 100644 --- a/test/Codebelt.Extensions.Xunit.Hosting.Tests/MinimalHostTestFactoryTest.cs +++ b/test/Codebelt.Extensions.Xunit.Hosting.Tests/MinimalHostTestFactoryTest.cs @@ -1,6 +1,5 @@ using System; using Xunit; -using Xunit.Abstractions; namespace Codebelt.Extensions.Xunit.Hosting { diff --git a/test/Codebelt.Extensions.Xunit.Hosting.Tests/MinimalHostTestTest.cs b/test/Codebelt.Extensions.Xunit.Hosting.Tests/MinimalHostTestTest.cs index e1df5f3..d3e1acb 100644 --- a/test/Codebelt.Extensions.Xunit.Hosting.Tests/MinimalHostTestTest.cs +++ b/test/Codebelt.Extensions.Xunit.Hosting.Tests/MinimalHostTestTest.cs @@ -7,12 +7,11 @@ using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Hosting; using Xunit; -using Xunit.Abstractions; -using Xunit.Priority; +using Xunit.v3.Priority; namespace Codebelt.Extensions.Xunit.Hosting { - [TestCaseOrderer(PriorityOrderer.Name, PriorityOrderer.Assembly)] + [TestCaseOrderer(typeof(PriorityOrderer))] public class MinimalHostTestTest : MinimalHostTest { private bool _isHostRunning = false; diff --git a/test/Codebelt.Extensions.Xunit.Hosting.Tests/ServiceCollectionExtensions.cs b/test/Codebelt.Extensions.Xunit.Hosting.Tests/ServiceCollectionExtensions.cs index 414a718..c05e6f9 100644 --- a/test/Codebelt.Extensions.Xunit.Hosting.Tests/ServiceCollectionExtensions.cs +++ b/test/Codebelt.Extensions.Xunit.Hosting.Tests/ServiceCollectionExtensions.cs @@ -4,7 +4,6 @@ using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Logging; using Xunit; -using Xunit.Abstractions; namespace Codebelt.Extensions.Xunit.Hosting { diff --git a/test/Codebelt.Extensions.Xunit.Tests/DisposableTest.cs b/test/Codebelt.Extensions.Xunit.Tests/DisposableTest.cs index 0e02c0c..f531e06 100644 --- a/test/Codebelt.Extensions.Xunit.Tests/DisposableTest.cs +++ b/test/Codebelt.Extensions.Xunit.Tests/DisposableTest.cs @@ -2,7 +2,6 @@ using System.Threading.Tasks; using Codebelt.Extensions.Xunit.Assets; using Xunit; -using Xunit.Abstractions; namespace Codebelt.Extensions.Xunit { diff --git a/test/Codebelt.Extensions.Xunit.Tests/StringExtensionsTest.cs b/test/Codebelt.Extensions.Xunit.Tests/StringExtensionsTest.cs index 8a8a73c..89de10f 100644 --- a/test/Codebelt.Extensions.Xunit.Tests/StringExtensionsTest.cs +++ b/test/Codebelt.Extensions.Xunit.Tests/StringExtensionsTest.cs @@ -1,6 +1,5 @@ using System.Runtime.InteropServices; using Xunit; -using Xunit.Abstractions; namespace Codebelt.Extensions.Xunit { diff --git a/test/Codebelt.Extensions.Xunit.Tests/TestTest.cs b/test/Codebelt.Extensions.Xunit.Tests/TestTest.cs index 53edd5c..9b54a78 100644 --- a/test/Codebelt.Extensions.Xunit.Tests/TestTest.cs +++ b/test/Codebelt.Extensions.Xunit.Tests/TestTest.cs @@ -1,8 +1,7 @@ using System; using System.Threading.Tasks; using Xunit; -using Xunit.Abstractions; -using Xunit.Sdk; +using Xunit.v3; namespace Codebelt.Extensions.Xunit { @@ -16,10 +15,10 @@ public TestTest(ITestOutputHelper output) : base(output) { } - public override Task InitializeAsync() + public override ValueTask InitializeAsync() { _initializeAsyncCalled = true; - return Task.CompletedTask; + return default; } protected override ValueTask OnDisposeManagedResourcesAsync() diff --git a/testenvironments.json b/testenvironments.json index 8e4ae2c..2bc34cb 100644 --- a/testenvironments.json +++ b/testenvironments.json @@ -9,7 +9,7 @@ { "name": "Docker-Ubuntu", "type": "docker", - "dockerImage": "gimlichael/ubuntu-testrunner:net8.0.415-9.0.306" + "dockerImage": "gimlichael/ubuntu-testrunner:net8.0.416-9.0.307-10.0.100" } ] }