Skip to content

test(oss-licenses): implement comprehensive E2E testing with standalone testapp#412

Merged
timothyfroehlich merged 1 commit intomainfrom
proper-e2e-tests
Apr 22, 2026
Merged

test(oss-licenses): implement comprehensive E2E testing with standalone testapp#412
timothyfroehlich merged 1 commit intomainfrom
proper-e2e-tests

Conversation

@timothyfroehlich
Copy link
Copy Markdown
Member

Summary

Part 3 of the stacked testing infrastructure update for oss-licenses-plugin.

Key changes

  • Added a dedicated src/e2eTest/kotlin/ source set with its own e2eTestTask Test task, wired into check.
  • EndToEndTest.kt uses GradleTestKit to build the standalone testapp against the AGP/Gradle matrix, patching the testapp's libs.versions.toml and (for AGP 8.x) the Kotlin block in app/build.gradle.kts.
  • Split the AGP/Gradle version matrix in build.gradle.kts into e2eVersions (heavier, modern AGPs only) and integrationOnlyVersions (older AGPs for backward-compat coverage).
  • Shared the TestKit task setup (publish dep, repo inputs, plugin_version / testkit_path / java21_home / repo_path system properties) between integrationTestTask and e2eTestTask via a Test.configureTestKitDefaults() helper.
  • Added oss-licenses-e2e matrix job to .github/workflows/oss-licenses.yml, downloading the local repo artifact from oss-licenses-build and running ./gradlew e2eTestTask --tests "…EndToEndTest_AGP_X".
  • Pre-created $ANDROID_USER_HOME before setup-gradle runs to keep its cache path stable across CI runs (explained in a new comment).
  • Added keep-in-sync comments between the e2e matrix in the workflow and the e2eVersions map.
  • Minor cleanup: enabled isShrinkResources on testapp release; dropped the unused org.junit.Ignore import from OssLicensesV2Test; removed a stale "CC strictness flags" comment.

Test plan

  • ./gradlew :oss-licenses-plugin:check passes locally across the full integration matrix (AGP 7.4 / 8.7 / 8.12 / 9.x stable / 9.x alpha) and the full e2e matrix (AGP 8.12 / 9.x stable / 9.x alpha). Ran on macOS with ANDROID_HOME set.
  • CI workflow_call runs green across oss-licenses-build, oss-licenses-integration-test matrix, and oss-licenses-e2e matrix.

…ne testapp

## Summary

Part 3 of the stacked testing infrastructure update for `oss-licenses-plugin`.

## Key changes

- Added a dedicated `src/e2eTest/kotlin/` source set with its own `e2eTestTask` Test task, wired into `check`.
- `EndToEndTest.kt` uses GradleTestKit to build the standalone `testapp` against the AGP/Gradle matrix, patching the testapp's `libs.versions.toml` and (for AGP 8.x) the Kotlin block in `app/build.gradle.kts`.
- Split the AGP/Gradle version matrix in `build.gradle.kts` into `e2eVersions` (heavier, modern AGPs only) and `integrationOnlyVersions` (older AGPs for backward-compat coverage).
- Shared the TestKit task setup (publish dep, repo inputs, `plugin_version` / `testkit_path` / `java21_home` / `repo_path` system properties) between `integrationTestTask` and `e2eTestTask` via a `Test.configureTestKitDefaults()` helper.
- Added `oss-licenses-e2e` matrix job to `.github/workflows/oss-licenses.yml`, downloading the local repo artifact from `oss-licenses-build` and running `./gradlew e2eTestTask --tests "…EndToEndTest_AGP_X"`.
- Pre-created `$ANDROID_USER_HOME` before `setup-gradle` runs to keep its cache path stable across CI runs (explained in a new comment).
- Added keep-in-sync comments between the e2e matrix in the workflow and the `e2eVersions` map.
- Minor cleanup: enabled `isShrinkResources` on testapp release; dropped the unused `org.junit.Ignore` import from `OssLicensesV2Test`; removed a stale "CC strictness flags" comment.

## Test plan

- [x] `./gradlew :oss-licenses-plugin:check` passes locally across the full integration matrix (AGP 7.4 / 8.7 / 8.12 / 9.x stable / 9.x alpha) and the full e2e matrix (AGP 8.12 / 9.x stable / 9.x alpha). Ran on macOS with `ANDROID_HOME` set.
- [ ] CI workflow_call runs green across `oss-licenses-build`, `oss-licenses-integration-test` matrix, and `oss-licenses-e2e` matrix.
@timothyfroehlich timothyfroehlich merged commit bddbf84 into main Apr 22, 2026
18 checks passed
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.

2 participants