Skip to content

Commit 89f5789

Browse files
ParameterizedLogging support for logger fields added through Lombok annotations (#205)
* Add test for lombok generated logger * Update lombok initialization * Drop missing marker reference * Only run select tests with Lombok support enabled --------- Co-authored-by: Tim te Beek <[email protected]>
1 parent 93a6d77 commit 89f5789

File tree

1 file changed

+48
-1
lines changed

1 file changed

+48
-1
lines changed

src/test/java/org/openrewrite/java/logging/ParameterizedLoggingTest.java

+48-1
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,9 @@
1515
*/
1616
package org.openrewrite.java.logging;
1717

18+
import org.junit.jupiter.api.AfterAll;
19+
import org.junit.jupiter.api.BeforeAll;
20+
import org.junit.jupiter.api.Nested;
1821
import org.junit.jupiter.api.Test;
1922
import org.openrewrite.DocumentExample;
2023
import org.openrewrite.InMemoryExecutionContext;
@@ -37,7 +40,7 @@ class ParameterizedLoggingTest implements RewriteTest {
3740
@Override
3841
public void defaults(RecipeSpec spec) {
3942
spec.parser(JavaParser.fromJavaVersion()
40-
.classpathFromResources(new InMemoryExecutionContext(), "slf4j-api-2.1", "log4j-api-2.23", "log4j-core-2.23"));
43+
.classpathFromResources(new InMemoryExecutionContext(), "slf4j-api-2.1", "log4j-api-2.23", "log4j-core-2.23", "lombok"));
4144
}
4245

4346
@DocumentExample
@@ -697,4 +700,48 @@ void method(int cnt, String name) {
697700
);
698701
}
699702

703+
@Nested
704+
class LombokSupport {
705+
706+
@BeforeAll
707+
static void setUp() {
708+
System.setProperty("rewrite.lombok", "true");
709+
}
710+
711+
@AfterAll
712+
static void tearDown() {
713+
System.clearProperty("rewrite.lombok");
714+
}
715+
716+
@Test
717+
void lombokLoggingAnnotation() {
718+
rewriteRun(
719+
spec -> spec.recipe(new ParameterizedLogging("org.slf4j.Logger info(..)", false)),
720+
// language=java
721+
java(
722+
"""
723+
import lombok.extern.slf4j.Slf4j;
724+
725+
@Slf4j
726+
class Test {
727+
static void method(String name) {
728+
log.info("Hello " + name + ", nice to meet you " + name);
729+
}
730+
}
731+
""",
732+
"""
733+
import lombok.extern.slf4j.Slf4j;
734+
735+
@Slf4j
736+
class Test {
737+
static void method(String name) {
738+
log.info("Hello {}, nice to meet you {}", name, name);
739+
}
740+
}
741+
"""
742+
)
743+
);
744+
}
745+
746+
}
700747
}

0 commit comments

Comments
 (0)