[Java. Logging] Add basic tests

IDEA-331693

GitOrigin-RevId: 7e3418984b59f18411ce3be472637f5d0e8daa39
This commit is contained in:
Georgii Ustinov
2024-02-02 16:48:30 +02:00
committed by intellij-monorepo-bot
parent de5ea078b4
commit a9ac56fa4b
27 changed files with 397 additions and 16 deletions

View File

@@ -0,0 +1,78 @@
package com.intellij.java.lomboktest
import com.intellij.codeInsight.generation.GenerateLoggerHandler
import com.intellij.codeInsight.generation.ui.ChooseLoggerDialogWrapper
import com.intellij.openapi.ui.DialogWrapper
import com.intellij.openapi.util.Disposer
import com.intellij.testFramework.LightProjectDescriptor
import com.intellij.testFramework.fixtures.LightJavaCodeInsightFixtureTestCase
import com.intellij.ui.UiInterceptors
import de.plushnikov.intellij.plugin.LombokTestUtil
class LombokGenerateLoggerTest : LightJavaCodeInsightFixtureTestCase() {
override fun getProjectDescriptor(): LightProjectDescriptor = LombokTestUtil.LOMBOK_DESCRIPTOR
override fun getBasePath(): String = "community/plugins/lombok/testData/intention/generateLogger"
fun testSlf4j() {
myFixture.addClass("""
package org.slf4j;
interface Logger {}
""".trimIndent())
doTest()
}
fun testLog4j() {
myFixture.addClass("""
package org.apache.log4j;
interface Logger {}
""".trimIndent())
doTest()
}
fun testLog4j2() {
myFixture.addClass("""
package org.apache.logging.log4j;
interface Logger {}
""".trimIndent())
doTest()
}
fun testApacheCommons() {
myFixture.addClass("""
package org.apache.commons.logging;
interface Log {
}
""".trimIndent())
doTest("Lombok Apache Commons Logging")
}
private fun doTest() {
doTest("Lombok ${getTestName(false)}")
}
private fun doTest(displayName : String) {
val name = getTestName(false)
myFixture.configureByFile("before$name.java")
UiInterceptors.register(
object : UiInterceptors.UiInterceptor<ChooseLoggerDialogWrapper>(ChooseLoggerDialogWrapper::class.java) {
override fun doIntercept(component: ChooseLoggerDialogWrapper) {
Disposer.register(myFixture.testRootDisposable, component.disposable)
component.setComboBoxItem(displayName)
component.close(DialogWrapper.OK_EXIT_CODE)
}
}
)
GenerateLoggerHandler().invoke(project, editor, file)
myFixture.checkResultByFile("after$name.java")
}
}

View File

@@ -0,0 +1,6 @@
import lombok.extern.apachecommons.CommonsLog;
@CommonsLog<caret>
class A {
}

View File

@@ -0,0 +1,6 @@
import lombok.extern.log4j.Log4j;
@Log4j<caret>
class A {
}

View File

@@ -0,0 +1,6 @@
import lombok.extern.log4j.Log4j2;
@Log4j2<caret>
class A {
}

View File

@@ -0,0 +1,6 @@
import lombok.extern.slf4j.Slf4j;
@Slf4j<caret>
class A {
}

View File

@@ -0,0 +1,4 @@
class A {
<caret>
}

View File

@@ -0,0 +1,4 @@
class A {
<caret>
}

View File

@@ -0,0 +1,4 @@
class A {
<caret>
}

View File

@@ -0,0 +1,3 @@
class A {
<caret>
}