[Mono][browser] Quarantine double Min/Max NaN payload tests - #133312
Conversation
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
|
Azure Pipelines: Successfully started running 3 pipeline(s). 13 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: @dotnet/area-system-numerics |
|
Tagging subscribers to 'arch-wasm': @lewing, @pavelsavara |
There was a problem hiding this comment.
🟡 Changes recommended
Moving those NaN sign/payload rows out of the shared MaxDouble/MinDouble member data reduces coverage for other test suites that consume those datasets (e.g., Math and Vector tests), which is likely unintended given the stated goal to quarantine only Mono browser-WASM.
Once you've addressed the issues Copilot identified, you can request another Copilot review.
Pull request overview
This PR quarantines the double Max/Min NaN sign-and-payload generic-math test cases on Mono browser-WASM by splitting those rows into dedicated member-data sets and adding two new [Theory] methods that are gated with ActiveIssue for TestPlatforms.Browser + TestRuntimes.Mono.
Changes:
- Add
MaxNaNSignAndPayloadTestandMinNaNSignAndPayloadTesttheories withActiveIssuescoped to Mono Browser. - Move the two NaN sign/payload rows out of
GenericMathTestMemberData.MaxDouble/MinDoubleinto newMaxDoubleNaNSignAndPayload/MinDoubleNaNSignAndPayloaddatasets.
File summaries
| File | Description |
|---|---|
| src/libraries/System.Runtime/tests/System.Runtime.Tests/System/DoubleTests.GenericMath.cs | Adds two new theories to quarantine the NaN sign/payload cases via ActiveIssue on Mono Browser while keeping the main MaxTest/MinTest theories running. |
| src/libraries/Common/tests/System/GenericMathTestMemberData.cs | Splits the NaN sign/payload rows into dedicated datasets and removes them from the shared MaxDouble/MinDouble datasets. |
Review details
Suppressed comments (1)
src/libraries/Common/tests/System/GenericMathTestMemberData.cs:1595
- Similarly, moving the NaN sign/payload rows out of MinDouble drops those inputs for all other tests that use GenericMathTestMemberData.MinDouble (Math.cs and various Vector* test suites). If the intent is only to quarantine Mono browser-WASM failures in DoubleTests.GenericMath, consider keeping these rows in MinDouble and adding a separate filtered dataset for DoubleTests.GenericMath.MinTest to use.
public static IEnumerable<object[]> MinDoubleNaNSignAndPayload
{
get
{
yield return new object[] { PositiveNaNDouble, -0.0, PositiveNaNDouble };
- Files reviewed: 2/2 changed files
- Comments generated: 1
- Review effort level: Lite
|
this is more important for the backports to keep things green |
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
🟡 Changes recommended
The current IsWasm guard also applies to WASI (IsBrowser || IsWasi), so the quarantine scope is broader than described and should be narrowed or clarified.
Once you've addressed the issues Copilot identified, you can request another Copilot review.
Review details
Suppressed comments (1)
src/libraries/Common/tests/System/GenericMathTestMemberData.cs:1581
- Same as above:
PlatformDetection.IsWasmincludes WASI (IsBrowser || IsWasi), so this also omits the NaN payload rows on Mono WASI. If the quarantine is meant to be browser-only, switch the check toIsBrowser(or clarify/expand the rationale if WASI is intended).
// [ActiveIssue("https://github.com/dotnet/runtime/issues/133311")]
if (!(PlatformDetection.IsMonoRuntime && PlatformDetection.IsWasm))
{
- Files reviewed: 1/1 changed files
- Comments generated: 1
- Review effort level: Lite
|
/backport to release/11.0 |
|
Started backporting to |
Quarantines the four double generic-math
Max/Mincases tracked by #133311 on Mono browser-WASM without splitting the shared test methods or data sets.The affected NaN sign-and-payload rows remain in
MaxDoubleandMinDoublefor every other runtime. Each pair is conditionally omitted only whenPlatformDetection.IsMonoRuntime && PlatformDetection.IsWasm; all other Max/Min coverage remains unchanged.Validation:
PATH=/opt/homebrew/bin:$PATH ./build.sh mono+libs -os browserMaxTestcases passed and 17/17 applicableMinTestcases passedContributes to #133311
Note
This pull request description was generated with GitHub Copilot.