Skip to content

TypeTests.Get, JitInfoTests, and EnumTests Fail with TestReadyToRun #94189

@ivdiazsa

Description

@ivdiazsa

PR #91229 adds a new pipeline to run libraries tests with ReadyToRun, by means of the MSBuild flag -p:TestReadyToRun=true. However, there are a few tests that are currently incompatible with TestReadyToRun. This issue is to track the necessary work to fix them.

To reproduce the issue:

# Get the runtime repo
git clone https://github.com/dotnet/runtime
cd runtime

# Build the clr and libraries
./build.sh --subset clr+libs --configuration Release

# Run the smoke libraries tests with TestReadyToRun enabled
./build.sh --subset libs.tests --configuration Release --test -p:TestReadyToRun=true -p:RunSmokeTestsOnly=true

Here's an extract of the log with the failing tests:

2023-10-30T21:42:44.7980630Z   [FAIL] System.Tests.TypeTests.GetInterface_Invoke_ReturnsExpected(type: typeof(T), name: "Interface1", ignoreCase: False, expected: typeof(Interface1))
2023-10-30T21:42:44.7983860Z   Assert.Equal() Failure: Values differ
2023-10-30T21:42:44.7985140Z   Expected: typeof(Interface1)
2023-10-30T21:42:44.7986610Z   Actual:   null
2023-10-30T21:42:44.7988640Z      at System.Tests.TypeTests.GetInterface_Invoke_ReturnsExpected(Type type, String name, Boolean ignoreCase, Type expected) in /_/src/libraries/System.Runtime/tests/System/Type/TypeTests.Get.cs:line 62
2023-10-30T21:42:44.7991570Z      at InvokeStub_TypeTests.GetInterface_Invoke_ReturnsExpected(Object, Span`1)
2023-10-30T21:42:44.7993840Z      at System.Reflection.MethodBaseInvoker.InvokeWithFewArgs(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
...
2023-10-30T21:42:45.1896200Z   [FAIL] System.Runtime.Tests.JitInfoTests.JitInfoCurrentThreadIsPopulated
2023-10-30T21:42:45.1924040Z   Thread 1 before compilation time not greater than 0! (00:00:00)
2023-10-30T21:42:45.1925840Z      at System.Runtime.Tests.JitInfoTests.JitInfoCurrentThreadIsPopulated() in /_/src/libraries/System.Runtime/tests/System/Runtime/JitInfoTests.cs:line 146
2023-10-30T21:42:45.1927800Z      at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor)
2023-10-30T21:42:45.1929330Z      at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr)
...
2023-10-30T21:42:49.0186060Z   [FAIL] System.Tests.EnumTests.EnumConstraint_ThrowsArgumentException
2023-10-30T21:42:49.0295080Z   Assert.True() Failure
2023-10-30T21:42:49.0298600Z   Expected: True
2023-10-30T21:42:49.0301490Z   Actual:   False
2023-10-30T21:42:49.0305910Z      at System.Tests.EnumTests.EnumConstraint_ThrowsArgumentException() in /_/src/libraries/System.Runtime/tests/System/EnumTests.cs:line 1605
2023-10-30T21:42:49.0310910Z      at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor)
2023-10-30T21:42:49.0315640Z      at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr)

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions