-
Notifications
You must be signed in to change notification settings - Fork 130
sequencer acceptance tests migration to Kotlin #1949
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
base: main
Are you sure you want to change the base?
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #1949 +/- ##
=========================================
Coverage 62.78% 62.78%
Complexity 1536 1536
=========================================
Files 411 411
Lines 14958 14958
Branches 1580 1580
=========================================
Hits 9391 9391
Misses 4948 4948
Partials 619 619
*This pull request uses carry forward flags. Click here to find out more. 🚀 New features to boost your workflow:
|
Signed-off-by: F Bojarski <[email protected]>
| dependencies { | ||
| annotationProcessor 'org.apache.logging.log4j:log4j-core' | ||
| implementation 'org.apache.logging.log4j:log4j-core' | ||
| implementation project(":jvm-libs:generic:serialization:jackson") |
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.
Bug: Log4j2 plugin may not be discovered after Kotlin migration
The MemoryAppender class migrated from Java to Kotlin, but the build only configures Java annotation processing for Log4j2 (annotationProcessor 'org.apache.logging.log4j:log4j-core'). The Java annotation processor won't process Kotlin files, so it won't generate the Log4j2Plugins.dat cache file needed for plugin discovery. The log4j2-test.xml configuration references <Memory> appenders without a packages attribute for runtime scanning. Without either kapt for Kotlin annotation processing or a packages attribute in the configuration, the custom Memory appender plugin may not be discovered at runtime.
This PR migrates the acceptance test to Kotlin, mostly using AI.
Further simplification and improvements of the tests will be done in follow-up PRs.
Note
Migrates the acceptance test suite to Kotlin, updates Gradle/test tooling and dependencies, and improves plugin error logging.
src/test/kotlinandsrc/main/kotlin(e.g.,LineaPlugin*TestBase,EngineAPIService, test classes like*Test.kt).MemoryAppender.javawith KotlinMemoryAppender.kt.acceptance-tests/build.gradle; wire Kotlin/solidity/web3j generation intocompileKotlin/compileTestKotlin.:jvm-libs:...:jackson, WireMock) and dedicatedacceptanceTeststask; disable defaulttesttask.sequencer/build.gradle(remove global spotless chaining) and root spotless comment tweak.AbstractLineaRequiredPlugin(structured logging; removeprintStackTrace).Written by Cursor Bugbot for commit 1b5e00b. This will update automatically on new commits. Configure here.