[clr-ios] Fix mobile CoreCLR test failures across libraries#128409
Draft
kotlarmilos wants to merge 2 commits into
Draft
[clr-ios] Fix mobile CoreCLR test failures across libraries#128409kotlarmilos wants to merge 2 commits into
kotlarmilos wants to merge 2 commits into
Conversation
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Contributor
|
Tagging subscribers to this area: @dotnet/area-meta |
Member
Author
|
/azp run runtime-extra-platforms |
|
Azure Pipelines successfully started running 1 pipeline(s). |
Contributor
There was a problem hiding this comment.
Pull request overview
This PR adjusts a handful of library test cases to run (or skip) correctly on newly-enabled CoreCLR Apple mobile test legs by updating xUnit data discovery patterns and adding platform/trimming-related guards.
Changes:
- Add/adjust theory data sourcing to avoid xUnit
MemberDataresolution problems in derived/overridden conformance tests. - Skip or expand existing platform exclusions for tests that rely on desktop-only behaviors (e.g., TPA/fusion log details, reflection emit under aggressive trimming).
- Expand an existing
ActiveIssueto include MacCatalyst and gate a debugger-proxy test away from NativeAOT.
Show a summary per file
| File | Description |
|---|---|
| src/libraries/System.Security.Cryptography/tests/CryptoStream.cs | Adds an override using explicit MemberType for MemberData to stabilize conformance theory data discovery. |
| src/libraries/System.Runtime.Loader/tests/TpaLoadFailureTest.cs | Skips path/fusion-log validation tests on Apple mobile where the assumptions don’t hold. |
| src/libraries/System.Reflection.Metadata/tests/Metadata/Decoding/CustomAttributeDecoderTests.cs | Expands an ActiveIssue platform mask to include MacCatalyst. |
| src/libraries/System.Net.Sockets/tests/FunctionalTests/NetworkStreamTest.cs | Adds an override to supply MemberType for MemberData on a conformance theory. |
| src/libraries/System.Linq.Expressions/tests/DebuggerTypeProxy/ExpressionDebuggerTypeProxyTests.cs | Gates a reflection-heavy theory away from NativeAOT via ConditionalTheory. |
| src/libraries/Microsoft.Extensions.Hosting/tests/UnitTests/Internal/HostTests.cs | Further gates Moq/RefEmit-based tests away from aggressively-trimmed/AOT-like environments. |
Copilot's findings
- Files reviewed: 6/6 changed files
- Comments generated: 1
Comment on lines
+46
to
+50
| [Theory] | ||
| [MemberData(nameof(CopyToAsync_AllDataCopied_MemberData), MemberType = typeof(ConnectedStreamConformanceTests))] | ||
| public override Task CopyToAsync_AllDataCopied(int byteCount, bool useAsync) => | ||
| base.CopyToAsync_AllDataCopied(byteCount, useAsync); | ||
|
|
This was referenced May 21, 2026
Open
…pported gate The previous override of CopyToAsync_AllDataCopied / ReadWrite_Success used MemberData(MemberType = typeof(ConnectedStreamConformanceTests)) but the referenced static factory methods are not strongly referenced from anywhere, so the trimmer on maccatalyst-arm64 CoreCLR stripped them and xUnit reported "Could not find public static member named 'ReadWrite_Success_MemberData' / 'CopyToAsync_AllDataCopied_MemberData' on ConnectedStreamConformanceTests". Add [DynamicDependency] on the override to keep those statics rooted. Also restore the [ConditionalTheory(IsMultithreadingSupported)] gate on CopyToAsync_AllDataCopied that the override had silently dropped, per the copilot-pr-reviewer comment. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Member
Author
|
/azp run runtime-extra-platforms |
|
Azure Pipelines successfully started running 1 pipeline(s). |
This was referenced May 21, 2026
This was referenced May 21, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Restores green on the
runtime-extra-platformsmobile pipelines. All failures here were uncovered by recently enabling CoreCLR on Apple mobile (iossimulator, maccatalyst, tvos). Each test exercised a code path that conflicts with the new target's constraints (aggressive trimming, xUnitMemberDatalookup for inherited statics).