Repository navigation
Group JitBlue regression tests by runner - #133591
tannergooding merged 7 commits into
Conversation
|
Azure Pipelines: Successfully started running 4 pipeline(s). 12 pipeline(s) were filtered out due to trigger conditions. There may be pipelines that require an authorized user to comment /azp run to run. |
|
Tagging subscribers to this area: @JulieLeeMSFT, @jakobbotsch |
Co-authored-by: Copilot App <[email protected]>
Co-authored-by: Copilot App <[email protected]>
894d737 to
42c785e
Compare
There was a problem hiding this comment.
Copilot review overview
🔵 Needs a closer look
The change moves/re-globs a very large test surface area, so a human should validate runner membership and discovery end-to-end (beyond the specific issues flagged in review comments).
Review tier: Lite
Findings: None
What changed in this PR
Refactors CoreCLR JIT regression test organization under src/tests/JIT/Regression by switching from explicit, conflict-prone source lists to directory/glob-based inclusion that groups tests beneath runner-specific directories (and updates the relevant merged-runner wrapper projects accordingly).
Changes:
- Replace several explicit
<Compile Include="...">entries with a runner-folder glob (*\$(MSBuildProjectName)\**\*.cs) for merged PdbOnly runners. - Update merged wrapper project globs so
Regression_2/Regression_3only pick up projects fromJitBlue/Regression_2andJitBlue/Regression_3. - Relocate/add regression test sources and project-backed tests under the new runner-grouped layout; update documentation example path accordingly.
| File | Description |
|---|---|
| src/tests/JIT/Regression/Regression_PdbOnly_ro.csproj | Switches JitBlue PdbOnly-ro compilation from explicit includes to a runner-directory glob. |
| src/tests/JIT/Regression/Regression_PdbOnly_r_3.csproj | Switches JitBlue PdbOnly-r3 compilation from explicit includes to a runner-directory glob. |
| src/tests/JIT/Regression/Regression_2.csproj | Narrows merged wrapper project discovery to JitBlue/Regression_2/**/*.??proj. |
| src/tests/JIT/Regression/Regression_3.csproj | Narrows merged wrapper project discovery to JitBlue/Regression_3/**/*.??proj. |
| src/tests/JIT/Regression/JitBlue/Regression_o_3/Runtime_67723.cs | Relocated regression test source under runner grouping. |
| src/tests/JIT/Regression/JitBlue/Regression_o_2/Runtime_106143.cs | Relocated regression test source under runner grouping. |
| src/tests/JIT/Regression/JitBlue/Regression_ro_2/Runtime_61359.cs | Relocated regression test source under runner grouping. |
| docs/workflow/testing/coreclr/disasm-checks.md | Updates example test path to match the new directory layout. |
There was a problem hiding this comment.
Copilot review overview
🔵 Needs a closer look
The change is dominated by large-scale test source/project relocation and build-discovery behavior changes that are difficult to fully validate here (especially cross-platform) from the provided diffs alone.
Review tier: Lite
Findings: None
If we are moving things around, can we omit some parts of the path? Would |
We can, I had just tried to keep this mostly minimal to start, essentially just taking files/projects "as is" and then moving them under a folder for what globs them. The general goal here is really just to stop the constant merge conflicts we otherwise are getting from adding new regression tests into the merged runner projects. |
Co-authored-by: Copilot App <[email protected]>
Move all 1,198 files without content changes. Update build wiring in the following commit. Co-authored-by: Copilot App <[email protected]>
Preserve project settings through the existing regression props and exclude relocated projects from the outer JIT runners. Update source globs, shared-source references, and test-authoring guidance. Co-authored-by: Copilot App <[email protected]>
Resolve the source-list conflict by placing Runtime_133518 and Runtime_133521 under the Regression_ro_2 glob without changing their contents. Co-authored-by: Copilot App <[email protected]>
|
Shorted the paths as suggested and resolved merge conflicts that came in |
There was a problem hiding this comment.
Copilot review overview
🔵 Needs a closer look
It performs a large-scale test layout/build-graph reshaping with broad potential impact, and I can’t fully validate runner membership and cross-platform behavior from the provided diffs alone.
Review tier: Lite
Findings: None
Co-authored-by: Copilot App <[email protected]>
|
Had to move the csproj to their respective source folders as there is a pre-existing behavior for included projects that they're expected to be nested compared to the project including them, which is what caused the WASM failures |
There was a problem hiding this comment.
Copilot review overview
🔵 Needs a closer look
There are a few concrete correctness/quality issues in newly added/relocated test sources (type-name typos and minor text/whitespace issues) that should be fixed before merging.
Review tier: Lite
Findings: None
|
/ba-g Remaining failures are the same Mono failures reproducing on main @jkoritzinsky could I get another sign-off so this can be merged? |
Resolve the regression test layout conflict from dotnet#133591. Co-authored-by: Copilot <[email protected]> Copilot-Session: be30cab5-d605-4896-b07e-9758803fed4f
Summary
Replace the conflict-prone regression source lists with globs over per-runner directories. Keep the existing categories (
JitBlue,Dev11,Dev14, andCLR-x86-JIT) at the same level, and group sources beneath them by runner. Single-file tests no longer need a directory of their own; related multi-file tests remain together.Group project-backed JitBlue tests beneath
Regression_2andRegression_3, preserving all 235 individual projects and their supporting files. Update the wrapper project globs and shared-source references without changing existing runner membership, compilation settings, or process-isolation requirements. Update the test-authoring guidance to distinguish source-glob runners from project-backed runners.All 1,198 relocated files retain identical contents. The one intentional coverage change is
Runtime_131557: it previously had no project reference and is now included inRegression_ro_2.Validation
Runtime_131557executes and passes.Runtime101046NativeandCrossplatVirtualAllocat their new paths, and copied their dependencies through the existing test build flow.Note
This pull request description was drafted with GitHub Copilot.