Expand test coverage for native AOT on android#121217
Merged
Conversation
- Expand native AOT smoke tests to all libraries tests - Add job for runtime smoke tests using native AOT on emulator
Move NDK compiler logic to a shared props file and import it in test and build projects to unify Android NativeAOT and Mono builds.
- Set ASSETS_DIR for crypto tests (using same pattern as existing crypto test) - Set AppContext.BaseDirectory We should probably change crypto tests to use just AppContext.BaseDirectory.
- Use ReferenceXUnitWrapperGenerator != false to define SINGLE_FILE_TEST_RUNNER (android & singlefile targets) instead of IsFunctionalTest - Condition SingleFileTestRunner compile and TrimmerRootAssembly (TestUtilities) on wrapper/generator and SkipTestUtilitiesReference - Add Android NativeAOT publish/trim settings and set NativeLib/CustomNativeMain for android nativeaot - Make DisableImplicitFrameworkReferences respect preexisting value and add explicit DisableImplicitFrameworkReferences=false in nativeaot tests dir - Import testing\tests.targets when TargetsAndroid is true - Update many NativeAOT smoke tests Main signatures to public static int Main(string[] args) to match runner invocation
- Ensure they have Main entry point - Tighten MSBuild conditions: - Only set NativeLib/CustomNativeMain for Android when OutputType == Exe - Only import testing/tests.targets for Android when using MicrosoftNETSdk and building executables - Make TestNativeAOT/UseNativeAOTRuntime defaults apply when TestBuildMode == nativeaot and only include monodroid-nativeaot.cs for executable/XUnit-wrapper cases
This reverts commit 4ed06ec.
- Avoid importing logic for SharedLibrary - Fix library filename - Set HasMergedInTests to ensure projects build
This reverts commit 37b7b4e.
This import is now covered by the IsMergedTestRunnerAssembly property. Fixes a warning about a double import. Fixes issue where mono runtime tests are getting incorrect assembly name due to this undesired import.
- Fix left-over whitespace change - Remove unnecessary ClrTestTargetUnsupported condition
Member
Author
|
/azp run runtime-android |
Member
Author
|
/azp run runtime-androidemulator |
|
No pipelines are associated with this pull request. |
1 similar comment
|
No pipelines are associated with this pull request. |
|
Azure Pipelines successfully started running 1 pipeline(s). |
1 similar comment
|
Azure Pipelines successfully started running 1 pipeline(s). |
Member
Author
|
/azp run runtime-nativeaot-outerloop |
|
Azure Pipelines successfully started running 1 pipeline(s). |
Member
Author
|
@simonrozsival @jtschuster you've both touched the android test infrastructure, I'd appreciate another review from one of you if you get a chance! |
jtschuster
reviewed
Nov 13, 2025
3 tasks
simonrozsival
approved these changes
Nov 14, 2025
Member
Author
|
/azp run runtime-androidemulator |
Member
Author
|
/azp run runtime-android |
|
Azure Pipelines successfully started running 1 pipeline(s). |
1 similar comment
|
Azure Pipelines successfully started running 1 pipeline(s). |
Member
Author
|
/azp run runtime-android |
Member
Author
|
/azp run runtime-androidemulator |
|
Azure Pipelines successfully started running 1 pipeline(s). |
1 similar comment
|
Azure Pipelines successfully started running 1 pipeline(s). |
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 subscribe to this conversation on GitHub.
Already have an account?
Sign in.
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.
Fixes #120715