[clr-ios] Enable System.Private.Xml tests on CoreCLR#127464
[clr-ios] Enable System.Private.Xml tests on CoreCLR#127464kotlarmilos wants to merge 6 commits intodotnet:mainfrom
Conversation
- Move System.Composition.Tests to the 'Not supported on Apple mobile' group. Failures observed on iossimulator-CoreCLR with aggressive trimming are reflection/metadata-stripping issues consistent with the existing line-381 aggressive-trimming and line-505 NativeAOT exclusions, not iOS-CoreCLR-specific bugs. - Re-enable System.Private.Xml.Tests on Apple mobile CoreCLR. The full suite (46452 / 46453) passes on iossimulator-arm64 Release with EnableAggressiveTrimming=true. The original exclusion under dotnet#124344 referenced on-device failures only. System.Runtime.Serialization.Xml.Tests stays excluded under dotnet#124344; the underlying StackOverflowException in DCS_DeeplyLinkedData is tracked separately. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
Pull request overview
Enables running System.Private.Xml library tests for Apple mobile CoreCLR by removing the test project exclusion in the libraries test orchestration project.
Changes:
- Removed the Apple mobile CoreCLR exclusion for
System.Private.Xml.Tests.csproj, allowing the test suite to run. - Reclassified
System.Composition.Tests.csprojas “Not supported on Apple mobile” within the same Apple mobile CoreCLR exclusions block (no functional behavior change vs. remaining excluded state).
Show a summary per file
| File | Description |
|---|---|
src/libraries/tests.proj |
Updates Apple mobile CoreCLR test exclusions to allow System.Private.Xml tests to run while keeping unsupported/failing suites excluded. |
Copilot's findings
- Files reviewed: 1/1 changed files
- Comments generated: 0
|
Tagging subscribers to this area: @JulieLeeMSFT, @BrzVlad, @janvorli, @kg |
…clusion Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…on for System.Runtime.Serialization.Xml.Tests
|
/azp run runtime-ioslike |
|
Azure Pipelines successfully started running 1 pipeline(s). |
The static ctor of XsltApiTestCaseBase2 writes back to an .xsl file inside the app bundle, which is read-only on Apple mobile, causing TypeInitializationException to propagate to all derived tests (~1615 failures). Skip the cctor body on Apple mobile CoreCLR and mark the two tests that actually consume the modified file (XmlResolver5/XmlResolver7) with ActiveIssue. Tracked under dotnet#124344. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
|
/azp run runtime-ioslike |
|
Azure Pipelines successfully started running 1 pipeline(s). |
| <ProjectExclusions Include="$(MSBuildThisFileDirectory)System.Text.Json\tests\System.Text.Json.Tests\System.Text.Json.Tests.csproj" /> | ||
|
|
||
| <!-- Not supported on Apple mobile --> | ||
| <ProjectExclusions Include="$(MSBuildThisFileDirectory)System.Composition\tests\System.Composition.Tests.csproj" /> |
There was a problem hiding this comment.
Is this currently unsupported on Mono as well?
There was a problem hiding this comment.
Yes, it's already excluded on Mono device and maccatalyst
There was a problem hiding this comment.
Is it this condition
runtime/src/libraries/tests.proj
Line 381 in 8703788
Is BuildTestsOnHelix always true when the tests run on Mono, and is it false when the tests run on CoreCLR?
There was a problem hiding this comment.
Yes this is the condition. It is redundant so I dropped it from the initial ItemGroup
…e CoreCLR The previous early-return inside the static ctor left static fields default-initialized, which would make any non-skipped derived test fail in confusing ways. A class-level [ActiveIssue] gates xunit discovery for the entire class on (IsAppleMobile && IsCoreCLR), so the static ctor never runs and tests are properly reported as skipped — symmetric with how the existing ConditionalClass(IsReflectionEmitSupported) skips the same class on Mono Apple mobile FullAOT. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
It is already excluded on every Apple-mobile Helix leg (Mono and CoreCLR) by the Aggressive Trimming ItemGroup at tests.proj:381 via the (TargetOS in (ios, tvos, maccatalyst)) and BuildTestsOnHelix clause. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Description
This PR enables System.Private.Xml tests on Apple mobile CoreCLR. The local tests succeeded without failures.