Skip to content

Conversation

@grendello
Copy link
Contributor

@grendello grendello commented Nov 17, 2025

This pull request expands the test coverage in BindingBuildTest.cs to run binding and application tests across multiple Android runtimes by parameterizing tests with the AndroidRuntime enum. It also updates test setup logic to properly configure projects for each runtime and ensures unsupported configurations are skipped.

Test parameterization and runtime support:

  • All major test methods in BindingBuildTest.cs now accept an AndroidRuntime runtime parameter (using [Values] or [TestCaseSource]), allowing tests to run against all supported runtimes.

  • Test projects are now configured per-runtime by setting IsRelease according to the runtime (NativeAOT uses Release), and calling SetRuntime(runtime) on each project.

Test data generation improvements:

  • The static ClassParseOptions array is replaced with a Get_ClassParseOptions() method, which dynamically generates test cases for each AndroidRuntime value, ensuring all relevant runtime combinations are tested.

Test execution control:

  • All tests now call IgnoreUnsupportedConfiguration(runtime, release: isRelease) at the start, and skip execution if the configuration is not supported. This prevents failures on unsupported runtime/build type combinations.

Test path consistency and cleanup:

  • Several test methods now use TestName and Path.Combine to generate unique temporary directories for builds, improving test isolation and consistency.

These changes make the test suite more robust, comprehensive, and maintainable by ensuring all supported Android runtimes are covered and by improving test configuration and isolation.

@grendello grendello force-pushed the dev/grendel/test-runtimes-4 branch from 4099e75 to fe7b9f0 Compare November 17, 2025 16:28
@grendello
Copy link
Contributor Author

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@grendello grendello force-pushed the dev/grendel/test-runtimes-4 branch from fe7b9f0 to d442b7d Compare November 18, 2025 08:39
@grendello grendello marked this pull request as ready for review November 18, 2025 09:20
@grendello
Copy link
Contributor Author

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@grendello
Copy link
Contributor Author

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@grendello grendello force-pushed the dev/grendel/test-runtimes-4 branch from d442b7d to ba7b37c Compare November 19, 2025 10:09
Copy link
Member

@jonathanpeppers jonathanpeppers left a comment

Choose a reason for hiding this comment

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

We can ignore MAUI Integration lane, and the test:

Build_JLO_Change
Exceeded expected time of 4500ms, actual 5125.963ms

@jonathanpeppers jonathanpeppers merged commit e397464 into main Nov 20, 2025
56 of 59 checks passed
@jonathanpeppers jonathanpeppers deleted the dev/grendel/test-runtimes-4 branch November 20, 2025 14:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants