Skip to content

Commit 1c9ad5b

Browse files
authored
Fix for TUnit v0.10 Signature Changes (#1394)
1 parent 47b9156 commit 1c9ad5b

File tree

4 files changed

+13
-12
lines changed

4 files changed

+13
-12
lines changed

src/Directory.Packages.props

+2-2
Original file line numberDiff line numberDiff line change
@@ -31,8 +31,8 @@
3131
<PackageVersion Include="System.IO.Hashing" Version="9.0.1" />
3232
<PackageVersion Include="System.Memory" Version="4.6.0" />
3333
<PackageVersion Include="TextCopy" Version="6.2.1" />
34-
<PackageVersion Include="TUnit" Version="0.7.9" />
35-
<PackageVersion Include="TUnit.Core" Version="0.7.9" />
34+
<PackageVersion Include="TUnit" Version="0.10.6" />
35+
<PackageVersion Include="TUnit.Core" Version="0.10.6" />
3636
<PackageVersion Include="Xunit" Version="2.9.3" />
3737
<PackageVersion Include="xunit.abstractions" Version="2.0.3" />
3838
<PackageVersion Include="xunit.extensibility.execution" Version="2.9.3" />

src/Verify.TUnit/TUnitExtensions.cs

+7-6
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,10 @@ static class TUnitExtensions
22
{
33
public static IReadOnlyList<string>? GetParameterNames(this TestDetails details)
44
{
5-
var methodParameterNames = details.MethodInfo.ParameterNames();
5+
var methodParameterNames = details.TestMethod.Parameters.Select(x => x.Name).ToList();
66

77
var constructorParameterNames = GetConstructorParameterNames(details);
8-
if (methodParameterNames == null)
8+
if (methodParameterNames.Count is 0)
99
{
1010
if (constructorParameterNames.Count == 0)
1111
{
@@ -26,12 +26,13 @@ static class TUnitExtensions
2626

2727
static List<string> GetConstructorParameterNames(TestDetails details)
2828
{
29-
var constructors = details.ClassType.GetConstructors(BindingFlags.Instance | BindingFlags.Public);
30-
if (constructors.Length <= 1)
29+
var parameters = details.TestClass.Parameters;
30+
if (parameters.Length is 0)
3131
{
32-
return constructors[0].GetParameters().Select(_ => _.Name!).ToList();
32+
return [];
3333
}
3434

35-
throw new("Found multiple constructors. Unable to derive names of parameters. Instead use UseParameters to pass in explicit parameter.");
35+
return parameters.Select(_ => _.Name).ToList();
36+
3637
}
3738
}

src/Verify.TUnit/Verifier.cs

+3-3
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ static InnerVerifier BuildVerifier(string sourceFile, VerifySettings settings, b
3030
}
3131

3232
var details = TestContext.Current!.TestDetails;
33-
var type = details.ClassType;
33+
var type = details.TestClass.Type;
3434
var classArguments = details.TestClassArguments;
3535
var methodArguments = details.TestMethodArguments;
3636
if (!settings.HasParameters &&
@@ -42,8 +42,8 @@ static InnerVerifier BuildVerifier(string sourceFile, VerifySettings settings, b
4242

4343
VerifierSettings.AssignTargetAssembly(type.Assembly);
4444

45-
var method = details.MethodInfo;
46-
var pathInfo = GetPathInfo(sourceFile, type, method);
45+
var method = details.TestMethod;
46+
var pathInfo = GetPathInfo(sourceFile, type, method.ReflectionInformation);
4747
return new(
4848
sourceFile,
4949
settings,

src/Verify.TUnit/VerifyChecks.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ public static class VerifyChecks
66
public static Task Run()
77
{
88
var details = TestContext.Current!.TestDetails;
9-
var type = details.ClassType;
9+
var type = details.TestClass.Type;
1010
VerifierSettings.AssignTargetAssembly(type.Assembly);
1111
return InnerVerifyChecks.Run(type.Assembly);
1212
}

0 commit comments

Comments
 (0)