Skip to content

Enable more tests to run on all 3 runtimes, part 13 - #10635

Merged
jonathanpeppers merged 42 commits into
mainfrom
dev/grendel/test-runtimes-13
Mar 30, 2026
Merged

Enable more tests to run on all 3 runtimes, part 13#10635
jonathanpeppers merged 42 commits into
mainfrom
dev/grendel/test-runtimes-13

Conversation

@grendello

@grendellogrendello commented Dec 8, 2025

Copy link
Copy Markdown
Contributor

This pull request primarily refactors and improves test utility methods and logging for better maintainability and clarity. The most important changes include refactoring how MSBuild warnings are asserted in tests, improving debug logging in marshal method generation, and making test timeouts more maintainable by using a constant.

Test utilities and assertion improvements:

  • Refactored AssertHasNoWarnings and AssertHasSomeWarnings methods in AssertionExtensions.cs to reduce duplication and centralize the logic for asserting the number of MSBuild warnings. Now, both methods delegate to a shared implementation, improving maintainability.
  • Added a missing using System.Collections.Generic; directive in AssertionExtensions.cs to support the refactored methods.

Logging improvements:

  • Enhanced debug logging in MarshalMethodsNativeAssemblyGenerator.cs to include the native symbol name when generating marshal methods, providing more context for debugging.

Test timeout maintainability:

  • Updated hardcoded activity start timeouts in MonoAndroidExportTest.cs to use the shared constant InstallAndRunTests.ActivityStartTimeoutInSeconds, improving consistency and ease of configuration. [1][2]

@grendello
grendelloforce-pushed the dev/grendel/test-runtimes-13 branch 2 times, most recently from 7e3f8f4 to a45dafcCompareDecember 9, 2025 19:43
@grendello
grendello marked this pull request as ready for review December 10, 2025 15:07
@grendello
grendelloforce-pushed the dev/grendel/test-runtimes-13 branch from 1fc2bd5 to f728327CompareDecember 12, 2025 08:38
@grendello

Copy link
Copy Markdown
ContributorAuthor

/azp run

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 1 pipeline(s).

@grendello
grendelloforce-pushed the dev/grendel/test-runtimes-13 branch 3 times, most recently from a6f8ea0 to f802ad8CompareJanuary 14, 2026 09:58
@grendello
grendelloforce-pushed the dev/grendel/test-runtimes-13 branch from 4a71530 to e5a3fb0CompareFebruary 2, 2026 10:04
@grendello
grendelloforce-pushed the dev/grendel/test-runtimes-13 branch from e5a3fb0 to d305b94CompareFebruary 4, 2026 09:06
CopilotAI review requested due to automatic review settings February 4, 2026 09:06

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

This pull request extends test coverage in InstallAndRunTests.cs by modifying test methods to run on all three Android runtimes (MonoVM, CoreCLR, and NativeAOT) instead of being limited to specific runtimes. The PR is part of a series (part 13) aimed at improving runtime test coverage.

Changes:

  • Converted multiple test methods from [TestCase] attributes to [Values] attributes with AndroidRuntime parameter
  • Added runtime-specific package name generation using PackageUtils.MakePackageName(runtime)
  • Added IgnoreUnsupportedConfiguration checks and runtime-specific Assert.Ignore statements for known limitations
  • Created test data generator methods Get_DotNetRun_Data and Get_SmokeTestBuildAndRunWithSpecialCharacters_Data to generate test combinations
Comments suppressed due to low confidence (1)

tests/MSBuildDeviceIntegration/Tests/InstallAndRunTests.cs:448

 AndroidRuntime.CoreCLR => null, // CoreCLR explicitly passes a `null` sender

Comment threadtests/MSBuildDeviceIntegration/Tests/InstallAndRunTests.cs Outdated
Comment threadtests/MSBuildDeviceIntegration/Tests/InstallAndRunTests.cs Outdated
Comment threadtests/MSBuildDeviceIntegration/Tests/InstallAndRunTests.cs
Comment threadtests/MSBuildDeviceIntegration/Tests/InstallAndRunTests.cs Outdated
Comment threadtests/MSBuildDeviceIntegration/Tests/InstallAndRunTests.cs Outdated
Comment threadtests/MSBuildDeviceIntegration/Tests/InstallAndRunTests.cs
Comment threadtests/MSBuildDeviceIntegration/Tests/InstallAndRunTests.cs
Comment threadtests/MSBuildDeviceIntegration/Tests/InstallAndRunTests.cs
Comment threadtests/MSBuildDeviceIntegration/Tests/InstallAndRunTests.cs
Comment threadtests/MSBuildDeviceIntegration/Tests/InstallAndRunTests.cs
@grendello
grendelloforce-pushed the dev/grendel/test-runtimes-13 branch 2 times, most recently from fa9fd76 to ffa9f47CompareFebruary 5, 2026 08:57
@grendello
grendelloforce-pushed the dev/grendel/test-runtimes-13 branch 5 times, most recently from 0cbf89d to d7ea1ecCompareFebruary 25, 2026 11:16
@grendello
grendelloforce-pushed the dev/grendel/test-runtimes-13 branch 3 times, most recently from 9a3581e to a40eebaCompareMarch 5, 2026 08:30
@grendello
grendelloforce-pushed the dev/grendel/test-runtimes-13 branch 4 times, most recently from 88f92ec to 0286907CompareMarch 11, 2026 07:59
@grendello
grendelloforce-pushed the dev/grendel/test-runtimes-13 branch from db1ff4f to e8e1146CompareMarch 25, 2026 13:01
@jonathanpeppers
jonathanpeppers merged commit 847c5fe into mainMar 30, 2026
6 checks passed
@jonathanpeppers
jonathanpeppers deleted the dev/grendel/test-runtimes-13 branch March 30, 2026 15:39
@github-actionsgithub-actionsBot locked and limited conversation to collaborators Apr 30, 2026
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@grendello@jonathanpeppers