-
Notifications
You must be signed in to change notification settings - Fork 564
Enable more tests to run on all 3 runtimes, part 11 #10625
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Conversation
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
2174803 to
f6d57a2
Compare
jonathanpeppers
approved these changes
Dec 4, 2025
Member
jonathanpeppers
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I merged in main, which should hopefully resolve the timeouts that were there before.
67571c4 to
5f7b2c9
Compare
…T, works otherwise
5f7b2c9 to
bf4ee01
Compare
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.
This pull request expands test coverage across multiple test classes to ensure all tests are executed for every supported
AndroidRuntime(MonoVM, CoreCLR, NativeAOT). It does so by parameterizing tests with theAndroidRuntimeenum, updating project initialization to reflect the runtime, and adding runtime-specific configuration and skip logic where necessary. This ensures that features and behaviors are validated across all runtime variants, improving reliability and future-proofing the test suite.Key changes include:
Test Parameterization and Runtime Handling:
Parameterized numerous
[Test]methods acrossAndroidResourceTests,CheckClientHandlerTypeTests,LinkerTests,ManagedResourceParserTests, andResolveMonoAndroidSdksTeststo run with all values of theAndroidRuntimeenum using[Values] AndroidRuntime runtime.Updated project creation in tests to set
IsReleasebased on the runtime (e.g.,NativeAOTimplies release), and calledSetRuntime(runtime)on test projects to ensure correct configuration.Added runtime-aware skip logic using
IgnoreUnsupportedConfiguration(runtime, release: isRelease)to bypass incompatible test configurations.Test Data and Behavior Adjustments:
Refactored test data sources to generate cases for all
AndroidRuntimevalues, ensuring comprehensive coverage.Adjusted test logic and assertions to handle differences in build outputs and behaviors between runtimes, particularly for NativeAOT (e.g., output directory structure, test skips for known issues).
Miscellaneous:
usingdirectives and minor code cleanups to support new logic.These changes collectively ensure that the test suite robustly validates Xamarin.Android behavior across all supported runtime environments.