Skip to content

Commit 668a3d3

Browse files
committed
Updates tests to use xunit v3
Migrates the test projects to use xunit v3 to enhance test capabilities and maintain compatibility with the Foundatio.Xunit library. This includes updating the xunit and Foundatio.Xunit NuGet packages. The test classes now also inherit from TestWithLoggingBase which allows for logging within the tests.
1 parent ae53f5c commit 668a3d3

25 files changed

Lines changed: 83 additions & 59 deletions

tests/Foundatio.Mediator.Tests/BasicHandlerGenerationTests.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
1+
using Foundatio.Xunit;
2+
13
namespace Foundatio.Mediator.Tests;
24

3-
public class BasicHandlerGenerationTests : GeneratorTestBase
5+
public class BasicHandlerGenerationTests(ITestOutputHelper output) : GeneratorTestBase(output)
46
{
57
[Fact]
68
public async Task GeneratesWrapperForSimpleHandler()

tests/Foundatio.Mediator.Tests/ConventionalDiscoveryToggleTests.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
1+
using Foundatio.Xunit;
2+
13
namespace Foundatio.Mediator.Tests;
24

3-
public class ConventionalDiscoveryToggleTests : GeneratorTestBase
5+
public class ConventionalDiscoveryToggleTests(ITestOutputHelper output) : GeneratorTestBase(output)
46
{
57
[Fact]
68
public void ConventionalDiscovery_Enabled_DiscoversHandlerByNamingConvention()

tests/Foundatio.Mediator.Tests/CrossAssemblyHandlerTests.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
1+
using Foundatio.Xunit;
12
using Microsoft.CodeAnalysis;
23
using Microsoft.CodeAnalysis.CSharp;
34

45
namespace Foundatio.Mediator.Tests;
56

6-
public class CrossAssemblyHandlerTests : GeneratorTestBase
7+
public class CrossAssemblyHandlerTests(ITestOutputHelper output) : GeneratorTestBase(output)
78
{
89
[Fact]
910
public void DiscoversHandlerFromReferencedAssembly()

tests/Foundatio.Mediator.Tests/CrossAssemblyMiddlewareTests.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
1+
using Foundatio.Xunit;
12
using Microsoft.CodeAnalysis;
23
using Microsoft.CodeAnalysis.CSharp;
34

45
namespace Foundatio.Mediator.Tests;
56

6-
public class CrossAssemblyMiddlewareTests : GeneratorTestBase
7+
public class CrossAssemblyMiddlewareTests(ITestOutputHelper output) : GeneratorTestBase(output)
78
{
89
[Fact]
910
public void DiscoversMiddlewareFromReferencedAssembly()

tests/Foundatio.Mediator.Tests/DIRegistrationTests.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
1+
using Foundatio.Xunit;
2+
13
namespace Foundatio.Mediator.Tests;
24

3-
public class DIRegistrationTests : GeneratorTestBase
5+
public class DIRegistrationTests(ITestOutputHelper output) : GeneratorTestBase(output)
46
{
57
[Fact]
68
public void RegistersMultipleHandlers()

tests/Foundatio.Mediator.Tests/DiagnosticValidationTests.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
1+
using Foundatio.Xunit;
12
using Microsoft.CodeAnalysis;
23
using Microsoft.CodeAnalysis.CSharp;
34

45
namespace Foundatio.Mediator.Tests;
56

6-
public class DiagnosticValidationTests : GeneratorTestBase
7+
public class DiagnosticValidationTests(ITestOutputHelper output) : GeneratorTestBase(output)
78
{
89
private static readonly MediatorGenerator Gen = new();
910

tests/Foundatio.Mediator.Tests/Foundatio.Mediator.Tests.csproj

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -26,17 +26,14 @@
2626

2727
<ItemGroup>
2828
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="18.0.1" />
29-
<PackageReference Include="xunit" Version="2.9.3" />
30-
<PackageReference Include="xunit.runner.visualstudio" Version="3.1.5">
31-
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
32-
<PrivateAssets>all</PrivateAssets>
33-
</PackageReference>
29+
<PackageReference Include="xunit.v3.mtp-off" Version="3.2.1" />
30+
<PackageReference Include="xunit.runner.visualstudio" Version="3.1.5" />
3431
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="10.0.1" />
3532
<PackageReference Include="Microsoft.Extensions.Logging" Version="10.0.1" />
36-
<PackageReference Include="Foundatio.Xunit" Version="12.0.0" />
33+
<PackageReference Include="Foundatio.Xunit.v3" Version="12.0.1-preview.0.39" />
3734
<PackageReference Include="GitHubActionsTestLogger" Version="3.0.1" PrivateAssets="All" />
3835
<!-- Source generator verification & helpers -->
39-
<PackageReference Include="Verify.Xunit" Version="31.9.3" />
36+
<PackageReference Include="Verify.XunitV3" Version="31.9.3" />
4037
<PackageReference Include="Verify.DiffPlex" Version="3.1.2" />
4138
<PackageReference Include="Verify.SourceGenerators" Version="2.5.0" />
4239
<!-- Roslyn packages (use matching overrides to reduce conflicts) -->

tests/Foundatio.Mediator.Tests/GeneratedHandlerExclusionTests.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
1+
using Foundatio.Xunit;
2+
13
namespace Foundatio.Mediator.Tests;
24

3-
public class GeneratedHandlerExclusionTests : GeneratorTestBase
5+
public class GeneratedHandlerExclusionTests(ITestOutputHelper output) : GeneratorTestBase(output)
46
{
57
[Fact]
68
public void DoesNotGenerateHandlerForGeneratedHandlerClasses()

tests/Foundatio.Mediator.Tests/GeneratorTestBase.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,13 @@
11
using System.Collections.Immutable;
22
using System.Text.RegularExpressions;
3+
using Foundatio.Xunit;
34
using Microsoft.CodeAnalysis;
45
using Microsoft.CodeAnalysis.CSharp;
56
using Microsoft.CodeAnalysis.Diagnostics;
67

78
namespace Foundatio.Mediator.Tests;
89

9-
public abstract class GeneratorTestBase
10+
public abstract class GeneratorTestBase(ITestOutputHelper output) : TestWithLoggingBase(output)
1011
{
1112
protected async Task VerifyGenerated(string source, params IIncrementalGenerator[] generators)
1213
{

tests/Foundatio.Mediator.Tests/GenericConstraintGenerationTests.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
1+
using Foundatio.Xunit;
2+
13
namespace Foundatio.Mediator.Tests;
24

3-
public class GenericConstraintGenerationTests : GeneratorTestBase
5+
public class GenericConstraintGenerationTests(ITestOutputHelper output) : GeneratorTestBase(output)
46
{
57
[Fact]
68
public void EmitsConstraintsForMultiParameterOpenGenericHandler()

0 commit comments

Comments
 (0)