package com.intellij.codeInspection.tests.java
import com.intellij.jvm.analysis.internal.testFramework.MustAlreadyBeRemovedApiInspectionTestBase
import com.intellij.jvm.analysis.testFramework.JvmLanguage
class JavaMustAlreadyBeRemovedApiInspectionTest : MustAlreadyBeRemovedApiInspectionTestBase() {
fun `test APIs must have been removed`() {
inspection.currentVersion = "3.0"
myFixture.testHighlighting(JvmLanguage.JAVA, """
import org.jetbrains.annotations.ApiStatus;
@ApiStatus.ScheduledForRemoval(inVersion = "2.0")
@Deprecated
class Warnings {
@ApiStatus.ScheduledForRemoval(inVersion = "2.0")
@Deprecated
public String field;
@ApiStatus.ScheduledForRemoval(inVersion = "2.0")
@Deprecated
public void method() {
}
}
//No warnings should be produced.
@Deprecated
@ApiStatus.ScheduledForRemoval(inVersion = "5.0")
class NoWarnings {
@Deprecated
@ApiStatus.ScheduledForRemoval(inVersion = "5.0")
public String field;
@Deprecated
@ApiStatus.ScheduledForRemoval(inVersion = "5.0")
public void method() {
}
}
""".trimIndent())
}
}