Skip to content

Conversation

@jkoritzinsky
Copy link
Member

When this was originally written, we set a Priority property based on the __Priority environment variable for the generator as well as CLRTestPriorityToBuild for the overall build.

At some point, we lost this. As a result, we have been missing test coverage in our outerloops.

This restores the correct outerloop test execution behavior by unifying on CLRTestPriorityToBuild.

When this was originally written, we set a Priority property based on the __Priority environment variable as well as CLRTestPriorityToBuild.

At some point, we lost this. As a result, we have been missing test coverage in our outerloops.

This restores the correct outerloop test execution behavior.
Copilot AI review requested due to automatic review settings January 13, 2026 01:03
@jkoritzinsky
Copy link
Member Author

/azp run runtime-coreclr outerloop

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@jkoritzinsky
Copy link
Member Author

/azp run runtime-coreclr outerloop

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@jkoritzinsky
Copy link
Member Author

Optimistically marking as auto-merge. Since BA tracks the outerloop pipeline, that will get this in faster if we don't have any regressions (which I think is likely).

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR restores correct outerloop test execution by fixing the priority tracking mechanism in the XUnit wrapper generator. The original implementation used a generic Priority property that was lost at some point, causing outerloop tests to not execute properly. This change unifies on the CLRTestPriorityToBuild property, which is the established MSBuild property used throughout the test infrastructure.

Changes:

  • Replaced the Priority compiler-visible property with CLRTestPriorityToBuild to align with the MSBuild property name
  • Updated the helper method from Priority() to CLRTestPriorityToBuild() to match the new property name
  • Fixed outerloop test filtering logic to use the correct property

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated no comments.

File Description
src/tests/Common/XUnitWrapperGenerator/XUnitWrapperGenerator.props Updated compiler-visible property from Priority to CLRTestPriorityToBuild
src/tests/Common/XUnitWrapperGenerator/XUnitWrapperGenerator.cs Updated outerloop attribute filtering to check CLRTestPriorityToBuild() instead of Priority()
src/tests/Common/XUnitWrapperGenerator/OptionsHelper.cs Renamed constant and helper method from Priority to CLRTestPriorityToBuild to match the MSBuild property

@jkoritzinsky
Copy link
Member Author

/azp run runtime-coreclr outerloop

@jkoritzinsky jkoritzinsky enabled auto-merge (squash) January 13, 2026 18:24
@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@jkoritzinsky
Copy link
Member Author

/azp run runtime-coreclr outerloop

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@jkoritzinsky
Copy link
Member Author

/azp run runtime-coreclr outerloop

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@jkoritzinsky
Copy link
Member Author

/azp run runtime-coreclr outerloop

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@jkoritzinsky
Copy link
Member Author

/ba-g failure is #123195

@jkoritzinsky jkoritzinsky merged commit d120108 into dotnet:main Jan 14, 2026
127 of 129 checks passed
@github-project-automation github-project-automation bot moved this to Done in AppModel Jan 14, 2026
@jkoritzinsky jkoritzinsky deleted the restore-outerloop branch January 15, 2026 00:00
MichalStrehovsky added a commit that referenced this pull request Jan 22, 2026
#123112 started running more outerloop tests, including: https://github.com/dotnet/runtime/blob/81e28e28a7dd0c5109f8a3c0e458d3de577e78f8/src/tests/JIT/Methodical/flowgraph/dev10_bug679008/sealedCastVariance.cs#L13-L32

We were incorrectly optimizing the `a.GetType() == typeof(Action<object>)` check to `false` (type of the parameter is `Action<string>` and JIT was asking for exact classes of `Action<string>`; and there are none).
MichalStrehovsky added a commit that referenced this pull request Jan 22, 2026
MichalStrehovsky added a commit that referenced this pull request Jan 22, 2026
Test started running with #123112

This is past our cutoff so the method body gets compiled to `TypeLoadException`. We have generic recursion coverage in native AOT tests.

Cc @dotnet/ilc-contrib
MichalStrehovsky added a commit that referenced this pull request Jan 22, 2026
#123112 started running more
outerloop tests, including:
https://github.com/dotnet/runtime/blob/81e28e28a7dd0c5109f8a3c0e458d3de577e78f8/src/tests/JIT/Methodical/flowgraph/dev10_bug679008/sealedCastVariance.cs#L13-L32

We were incorrectly optimizing the `a.GetType() ==
typeof(Action<object>)` check to `false` (type of the parameter is
`Action<string>` and JIT was asking for exact classes of
`Action<string>`; and there are none).

Cc @dotnet/ilc-contrib @EgorBo
MichalStrehovsky added a commit that referenced this pull request Jan 22, 2026
Test started running with #123112

This is past our cutoff so the method body gets compiled to
`TypeLoadException`. We have generic recursion coverage in native AOT
tests.
MichalStrehovsky added a commit that referenced this pull request Jan 23, 2026
MichalStrehovsky added a commit that referenced this pull request Jan 23, 2026
Copilot AI pushed a commit that referenced this pull request Jan 23, 2026
Test started running with #123112

Cc @dotnet/ilc-contrib
MichalStrehovsky added a commit to MichalStrehovsky/runtime that referenced this pull request Jan 28, 2026
MichalStrehovsky added a commit that referenced this pull request Jan 29, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Status: Done
Status: Done

Development

Successfully merging this pull request may close these issues.

4 participants