mirror of
https://gitflic.ru/project/openide/openide.git
synced 2025-12-17 07:20:53 +07:00
To better highlight that this test framework is for internal usage only. #IDEA-334017 GitOrigin-RevId: c491de2411cdffd6eee3e97a6273982560572f4b
63 lines
2.5 KiB
Kotlin
63 lines
2.5 KiB
Kotlin
package com.intellij.codeInspection.tests.java
|
|
|
|
import com.intellij.jvm.analysis.internal.testFramework.DependencyInspectionTestBase
|
|
|
|
class JavaDependencyInspectionTest : DependencyInspectionTestBase() {
|
|
fun `test illegal imported dependency Java API`() = dependencyViolationTest(javaFooFile, "ImportClientJava.java", """
|
|
package pkg.client;
|
|
|
|
import <error descr="Dependency rule 'Deny usages of scope 'JavaFoo' in scope 'ImportClientJava'.' is violated">pkg.api.JavaFoo</error>;
|
|
|
|
class Client {
|
|
public static void main(String[] args) {
|
|
new <error descr="Dependency rule 'Deny usages of scope 'JavaFoo' in scope 'ImportClientJava'.' is violated">JavaFoo</error>();
|
|
}
|
|
}
|
|
""".trimIndent())
|
|
|
|
fun `test illegal imported dependency skip imports`() = dependencyViolationTest(javaFooFile, "ImportClientJava.java", """
|
|
package pkg.client;
|
|
|
|
import pkg.api.JavaFoo;
|
|
|
|
class Client {
|
|
public static void main(String[] args) {
|
|
new <error descr="Dependency rule 'Deny usages of scope 'JavaFoo' in scope 'ImportClientJava'.' is violated">JavaFoo</error>();
|
|
}
|
|
}
|
|
""".trimIndent(), skipImports = true)
|
|
|
|
fun `test illegal imported dependency skip static imports`() = dependencyViolationTest(javaFooFile, "ImportClientJava.java", """
|
|
package pkg.client;
|
|
|
|
import static pkg.api.JavaFoo.foo;
|
|
|
|
class Client {
|
|
public static void main(String[] args) {
|
|
<error descr="Dependency rule 'Deny usages of scope 'JavaFoo' in scope 'ImportClientJava'.' is violated">foo</error>();
|
|
}
|
|
}
|
|
""".trimIndent(), skipImports = true)
|
|
|
|
fun `test illegal imported dependency qualified expression`() = dependencyViolationTest(javaFooFile, "ImportClientJava.java", """
|
|
package pkg.client;
|
|
|
|
import pkg.api.JavaFoo;
|
|
|
|
class Client {
|
|
public static void main(String[] args) {
|
|
<error descr="Dependency rule 'Deny usages of scope 'JavaFoo' in scope 'ImportClientJava'.' is violated">JavaFoo.foo</error>();
|
|
}
|
|
}
|
|
""".trimIndent(), skipImports = true)
|
|
|
|
fun `test illegal fully qualified dependency Java API`() = dependencyViolationTest(javaFooFile, "FqClientJava.java", """
|
|
package pkg.client;
|
|
|
|
class Client {
|
|
public static void main(String[] args) {
|
|
new <error descr="Dependency rule 'Deny usages of scope 'JavaFoo' in scope 'FqClientJava'.' is violated">pkg.api.JavaFoo</error>();
|
|
}
|
|
}
|
|
""".trimIndent())
|
|
} |