Skip to content
6 changes: 6 additions & 0 deletions Library.props
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,12 @@

<TrimmerSingleWarn>false</TrimmerSingleWarn>

<!-- Suppress AD0001 analyzer crash in .NET 9 ILLink DynamicallyAccessedMembersAnalyzer.
This is a known .NET 9 SDK analyzer bug, not a code issue.
See: https://github.com/dotnet/runtime/issues/109352
https://github.com/dotnet/runtime/issues/120728 -->
<NoWarn Condition="'$(TargetFramework)' == 'net9.0'">$(NoWarn);AD0001</NoWarn>

<IsAotCompatible
Condition="$([MSBuild]::IsTargetFrameworkCompatible('$(TargetFramework)', 'net8.0'))">true</IsAotCompatible>

Expand Down
114 changes: 36 additions & 78 deletions TUnit.Core.SourceGenerator.Tests/AbstractTests.Concrete2.verified.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// <auto-generated/>
// <auto-generated/>
#pragma warning disable

#nullable enable
Expand All @@ -9,45 +9,24 @@ internal static class TUnit_TestProject_AbstractTests_ConcreteClass2__TestSource
{
public static global::System.Collections.Generic.IReadOnlyList<global::TUnit.Core.TestMetadata> GetTests(string testSessionId)
{
var metadata_SecondTest = new global::TUnit.Core.TestMetadata<global::TUnit.TestProject.AbstractTests.ConcreteClass2>
var __classMetadata = global::TUnit.Core.ClassMetadata.GetOrAdd("TestsBase`1:global::TUnit.TestProject.AbstractTests.ConcreteClass2", new global::TUnit.Core.ClassMetadata
{
TestName = "SecondTest",
TestClassType = typeof(global::TUnit.TestProject.AbstractTests.ConcreteClass2),
TestMethodName = "SecondTest",
Dependencies = global::System.Array.Empty<global::TUnit.Core.TestDependency>(),
AttributeFactory = __CreateAttributes_0,
DataSources = global::System.Array.Empty<global::TUnit.Core.IDataSourceAttribute>(),
ClassDataSources = global::System.Array.Empty<global::TUnit.Core.IDataSourceAttribute>(),
PropertyDataSources = global::System.Array.Empty<global::TUnit.Core.PropertyDataSource>(),
PropertyInjections = global::System.Array.Empty<global::TUnit.Core.PropertyInjectionData>(),
InheritanceDepth = 0,
FilePath = @"",
LineNumber = 11,
MethodMetadata = new global::TUnit.Core.MethodMetadata
{
Type = typeof(global::TUnit.TestProject.AbstractTests.ConcreteClass2),
TypeInfo = new global::TUnit.Core.ConcreteType(typeof(global::TUnit.TestProject.AbstractTests.ConcreteClass2)),
Name = "SecondTest",
GenericTypeCount = 0,
ReturnType = typeof(void),
ReturnTypeInfo = new global::TUnit.Core.ConcreteType(typeof(void)),
Parameters = global::System.Array.Empty<global::TUnit.Core.ParameterMetadata>(),
Class = global::TUnit.Core.ClassMetadata.GetOrAdd("TestsBase`1:global::TUnit.TestProject.AbstractTests.ConcreteClass2", new global::TUnit.Core.ClassMetadata
{
Type = typeof(global::TUnit.TestProject.AbstractTests.ConcreteClass2),
TypeInfo = new global::TUnit.Core.ConcreteType(typeof(global::TUnit.TestProject.AbstractTests.ConcreteClass2)),
Name = "ConcreteClass2",
Namespace = "TUnit.TestProject.AbstractTests",
Assembly = global::TUnit.Core.AssemblyMetadata.GetOrAdd("TestsBase`1", "TestsBase`1"),
Parameters = global::System.Array.Empty<global::TUnit.Core.ParameterMetadata>(),
Properties = global::System.Array.Empty<global::TUnit.Core.PropertyMetadata>(),
Parent = null
})
},
InstanceFactory = CreateInstance,
InvokeTypedTest = __InvokeTest_SecondTest,
};
metadata_SecondTest.UseRuntimeDataGeneration(testSessionId);
Type = typeof(global::TUnit.TestProject.AbstractTests.ConcreteClass2),
TypeInfo = new global::TUnit.Core.ConcreteType(typeof(global::TUnit.TestProject.AbstractTests.ConcreteClass2)),
Name = "ConcreteClass2",
Namespace = "TUnit.TestProject.AbstractTests",
Assembly = global::TUnit.Core.AssemblyMetadata.GetOrAdd("TestsBase`1", "TestsBase`1"),
Parameters = global::System.Array.Empty<global::TUnit.Core.ParameterMetadata>(),
Properties = global::System.Array.Empty<global::TUnit.Core.PropertyMetadata>(),
Parent = null
});
var __classType = typeof(global::TUnit.TestProject.AbstractTests.ConcreteClass2);
var metadata_SecondTest = global::TUnit.Core.TestMetadataFactory.Create<global::TUnit.TestProject.AbstractTests.ConcreteClass2>(
"SecondTest", "SecondTest", 11,
__InvokeTest_SecondTest, __CreateAttributes_0, CreateInstance,
global::TUnit.Core.MethodMetadataFactory.Create("SecondTest", __classType, typeof(void), __classMetadata),
testSessionId: testSessionId
);
return new global::TUnit.Core.TestMetadata[] { metadata_SecondTest };
}
public static global::System.Collections.Generic.IEnumerable<global::TUnit.Core.TestDescriptor> EnumerateTestDescriptors()
Expand Down Expand Up @@ -91,45 +70,24 @@ internal static class TUnit_TestProject_AbstractTests_ConcreteClass2__TestSource
}
private static global::System.Collections.Generic.IReadOnlyList<global::TUnit.Core.TestMetadata> __Materialize_SecondTest(string testSessionId)
{
var metadata = new global::TUnit.Core.TestMetadata<global::TUnit.TestProject.AbstractTests.ConcreteClass2>
{
TestName = "SecondTest",
TestClassType = typeof(global::TUnit.TestProject.AbstractTests.ConcreteClass2),
TestMethodName = "SecondTest",
Dependencies = global::System.Array.Empty<global::TUnit.Core.TestDependency>(),
AttributeFactory = __CreateAttributes_0,
DataSources = global::System.Array.Empty<global::TUnit.Core.IDataSourceAttribute>(),
ClassDataSources = global::System.Array.Empty<global::TUnit.Core.IDataSourceAttribute>(),
PropertyDataSources = global::System.Array.Empty<global::TUnit.Core.PropertyDataSource>(),
PropertyInjections = global::System.Array.Empty<global::TUnit.Core.PropertyInjectionData>(),
InheritanceDepth = 0,
FilePath = @"",
LineNumber = 11,
MethodMetadata = new global::TUnit.Core.MethodMetadata
{
Type = typeof(global::TUnit.TestProject.AbstractTests.ConcreteClass2),
TypeInfo = new global::TUnit.Core.ConcreteType(typeof(global::TUnit.TestProject.AbstractTests.ConcreteClass2)),
Name = "SecondTest",
GenericTypeCount = 0,
ReturnType = typeof(void),
ReturnTypeInfo = new global::TUnit.Core.ConcreteType(typeof(void)),
Parameters = global::System.Array.Empty<global::TUnit.Core.ParameterMetadata>(),
Class = global::TUnit.Core.ClassMetadata.GetOrAdd("TestsBase`1:global::TUnit.TestProject.AbstractTests.ConcreteClass2", new global::TUnit.Core.ClassMetadata
{
Type = typeof(global::TUnit.TestProject.AbstractTests.ConcreteClass2),
TypeInfo = new global::TUnit.Core.ConcreteType(typeof(global::TUnit.TestProject.AbstractTests.ConcreteClass2)),
Name = "ConcreteClass2",
Namespace = "TUnit.TestProject.AbstractTests",
Assembly = global::TUnit.Core.AssemblyMetadata.GetOrAdd("TestsBase`1", "TestsBase`1"),
Parameters = global::System.Array.Empty<global::TUnit.Core.ParameterMetadata>(),
Properties = global::System.Array.Empty<global::TUnit.Core.PropertyMetadata>(),
Parent = null
})
},
InstanceFactory = CreateInstance,
InvokeTypedTest = __InvokeTest_SecondTest,
};
metadata.UseRuntimeDataGeneration(testSessionId);
var __classMetadata = global::TUnit.Core.ClassMetadata.GetOrAdd("TestsBase`1:global::TUnit.TestProject.AbstractTests.ConcreteClass2", new global::TUnit.Core.ClassMetadata
{
Type = typeof(global::TUnit.TestProject.AbstractTests.ConcreteClass2),
TypeInfo = new global::TUnit.Core.ConcreteType(typeof(global::TUnit.TestProject.AbstractTests.ConcreteClass2)),
Name = "ConcreteClass2",
Namespace = "TUnit.TestProject.AbstractTests",
Assembly = global::TUnit.Core.AssemblyMetadata.GetOrAdd("TestsBase`1", "TestsBase`1"),
Parameters = global::System.Array.Empty<global::TUnit.Core.ParameterMetadata>(),
Properties = global::System.Array.Empty<global::TUnit.Core.PropertyMetadata>(),
Parent = null
});
var __classType = typeof(global::TUnit.TestProject.AbstractTests.ConcreteClass2);
var metadata = global::TUnit.Core.TestMetadataFactory.Create<global::TUnit.TestProject.AbstractTests.ConcreteClass2>(
"SecondTest", "SecondTest", 11,
__InvokeTest_SecondTest, __CreateAttributes_0, CreateInstance,
global::TUnit.Core.MethodMetadataFactory.Create("SecondTest", __classType, typeof(void), __classMetadata),
testSessionId: testSessionId
);
return new global::TUnit.Core.TestMetadata[] { metadata };
}
internal static global::TUnit.TestProject.AbstractTests.ConcreteClass2 CreateInstance(global::System.Type[] typeArgs, object?[] args)
Expand Down
Loading
Loading