Closed
Conversation
Extends the Kotlin compatibility test suite to verify that the Spockk compiler plugin works correctly across different JDK versions. Changes: - Extended Workspace fixture to support JDK version configuration via Gradle toolchain - Updated SpockkKotlinCompatibilityTest to test combinations of Kotlin versions (1.8.22, 1.9.25, 2.0.21, 2.1.21, 2.2.21) with JDK versions (21, 25) - Configured CI to provision JDK 21 and 25 in setup-gradle action - Added JDK environment variable exports for test execution The test suite now verifies 10 (Kotlin, JDK) combinations to ensure the compiler plugin is compatible with different JDK environments. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Owner
Author
|
Kotlin does not yet support the JDK25 target. So, this change will have to wait. |
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 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.
Summary
Extends the Kotlin compatibility test suite to verify that the Spockk compiler plugin works correctly across different JDK versions.
Changes
Workspacefixture to support JDK version configuration via Gradle toolchainSpockkKotlinCompatibilityTestto test combinations of:setup-gradleactionTest Coverage
The test suite verifies that the Spockk compiler plugin successfully transforms and executes specifications when compiling with different Kotlin compiler versions on different JDK runtimes.
Why JDK 21 and 25?
Implementation Details
Workspace Fixture
Added optional
jdkVersionparameter tosetup()method that injects Gradle toolchain configuration:java { toolchain { languageVersion = JavaLanguageVersion.of(jdkVersion) } }Test Structure
Used a data class to encapsulate version combinations:
The test uses Spock's
whereblock with a pre-computed list of all combinations for clean, maintainable test data.CI Configuration
Moved JDK setup to the reusable
setup-gradleaction for consistency across workflows:Test Plan
🤖 Generated with Claude Code