generated from block/oss-project-template
-
Notifications
You must be signed in to change notification settings - Fork 3
Add end-to-end functional tests #158
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
e9e91d5 to
2272cdf
Compare
d470678 to
671e038
Compare
050611c to
d643d3f
Compare
bd42efa to
26cf32d
Compare
520f268 to
64643e7
Compare
Base automatically changed from
fix/maven-local-directory-tooling-model
to
main
February 10, 2026 00:04
…rides ProjectAccessorDelegate now unwraps leaf ProjectDependency results so DSLs like SQLDelight and DAGP receive the real Gradle object instead of our CharSequence wrapper. Intermediate accessors stay wrapped so chained access can still fall back to artifact notation for excluded projects. Removed the unused alwaysKeepProjects plumbing from the delegate and override plugin since the settings plugin already guarantees always-keep projects are included. Also adds alwaysKeepProjects property to ArtifactSwapBomService and improves BomLoader error message accuracy.
Adds a comprehensive functional test suite using the autonomousapps testkit covering module selection, local change detection, missing artifact fallback, always-keep behavior, SQLDelight project accessor compatibility, DAGP exclude compatibility, and full end-to-end CLI workflows. Test infrastructure includes ArtifactSwapTestProject for creating multi-module test projects with git repos and local maven publishing, CliRunner for in-process picocli invocation, and isolated temp directories for test maven repositories. Also adds functionalTest to the CI check workflow.
64643e7 to
268cf67
Compare
wclausen-square
approved these changes
Feb 10, 2026
Collaborator
wclausen-square
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.
nice to see these, i think they'll be valuable tests. some minor nits, but overall lgtm 🚢
...ctionalTest/kotlin/xyz/block/artifactswap/functionaltest/fixtures/ArtifactSwapTestProject.kt
Outdated
Show resolved
Hide resolved
...plugin/src/main/groovy/xyz/block/artifactswap/ArtifactSwapGroovyProjectOverridePlugin.groovy
Show resolved
Hide resolved
...ctionalTest/kotlin/xyz/block/artifactswap/functionaltest/fixtures/ArtifactSwapTestProject.kt
Outdated
Show resolved
Hide resolved
...ctionalTest/kotlin/xyz/block/artifactswap/functionaltest/fixtures/GradleProjectExtensions.kt
Outdated
Show resolved
Hide resolved
...le-plugin/src/functionalTest/kotlin/xyz/block/artifactswap/functionaltest/EndToEndCliTest.kt
Outdated
Show resolved
Hide resolved
...ctionalTest/kotlin/xyz/block/artifactswap/functionaltest/fixtures/GradleProjectExtensions.kt
Outdated
Show resolved
Hide resolved
...ctionalTest/kotlin/xyz/block/artifactswap/functionaltest/fixtures/GradleProjectExtensions.kt
Outdated
Show resolved
Hide resolved
1099700 to
150959a
Compare
bff0ba1 to
58de094
Compare
58de094 to
de9cd6e
Compare
de9cd6e to
4c2906d
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.
No description provided.