mirror of
https://gitflic.ru/project/openide/openide.git
synced 2025-12-18 00:20:54 +07:00
To better highlight that this test framework is for internal usage only. #IDEA-334017 GitOrigin-RevId: c491de2411cdffd6eee3e97a6273982560572f4b
239 lines
5.2 KiB
Kotlin
239 lines
5.2 KiB
Kotlin
package com.intellij.codeInspection.tests.java
|
|
|
|
import com.intellij.jvm.analysis.internal.testFramework.MigrationTestBase
|
|
import com.intellij.jvm.analysis.testFramework.JvmLanguage
|
|
import com.intellij.refactoring.migration.MigrationMapEntry
|
|
|
|
class JavaMigrationTest : MigrationTestBase() {
|
|
fun `test package`() {
|
|
migrationTest(JvmLanguage.JAVA, before = """
|
|
package p1;
|
|
|
|
import qqq.AAA;
|
|
|
|
class C {
|
|
AAA a = new AAA();
|
|
}
|
|
""".trimIndent(), after = """
|
|
package p1;
|
|
|
|
import jetbrains.test.AAA;
|
|
|
|
class C {
|
|
AAA a = new AAA();
|
|
}
|
|
""".trimIndent(), MigrationMapEntry("qqq", "jetbrains.test", MigrationMapEntry.PACKAGE, true)
|
|
)
|
|
migrationTest(JvmLanguage.JAVA, before = """
|
|
package p1;
|
|
|
|
import qqq.*;
|
|
|
|
class C {
|
|
qqq.AAA a = new qqq.AAA();
|
|
}
|
|
""".trimIndent(), after = """
|
|
package p1;
|
|
|
|
class C {
|
|
java.lang.AAA a = new java.lang.AAA();
|
|
}
|
|
""".trimIndent(), MigrationMapEntry("qqq", "java.lang", MigrationMapEntry.PACKAGE, true)
|
|
)
|
|
}
|
|
|
|
fun `test package migration with non existing package`() {
|
|
migrationTest(JvmLanguage.JAVA, before = """
|
|
package p1;
|
|
|
|
import qqq.AAA;
|
|
|
|
class C {
|
|
AAA a = new AAA();
|
|
}
|
|
""".trimIndent(), after = """
|
|
package p1;
|
|
|
|
import zzz.bbb.AAA;
|
|
|
|
class C {
|
|
AAA a = new AAA();
|
|
}
|
|
""".trimIndent(), MigrationMapEntry("qqq", "zzz.bbb", MigrationMapEntry.PACKAGE, true)
|
|
)
|
|
migrationTest(JvmLanguage.JAVA, before = """
|
|
package p1;
|
|
|
|
import qqq.*;
|
|
|
|
class C {
|
|
qqq.AAA a = new qqq.AAA();
|
|
}
|
|
""".trimIndent(), after = """
|
|
package p1;
|
|
|
|
import zzz.bbb.*;
|
|
|
|
class C {
|
|
zzz.bbb.AAA a = new zzz.bbb.AAA();
|
|
}
|
|
""".trimIndent(), MigrationMapEntry("qqq", "zzz.bbb", MigrationMapEntry.PACKAGE, true)
|
|
)
|
|
}
|
|
|
|
fun `test two classes`() {
|
|
migrationTest(JvmLanguage.JAVA, before = """
|
|
class A {}
|
|
class A1 {}
|
|
|
|
class B {}
|
|
class B1 {}
|
|
|
|
public class Test {
|
|
A a;
|
|
B b;
|
|
}
|
|
""".trimIndent(), after = """
|
|
class A {}
|
|
class A1 {}
|
|
|
|
class B {}
|
|
class B1 {}
|
|
|
|
public class Test {
|
|
A1 a;
|
|
B1 b;
|
|
}
|
|
""".trimIndent(),
|
|
MigrationMapEntry("A", "A1", MigrationMapEntry.CLASS, true),
|
|
MigrationMapEntry("B", "B1", MigrationMapEntry.CLASS, true)
|
|
)
|
|
}
|
|
|
|
fun `test two non existent classes`() {
|
|
migrationTest(JvmLanguage.JAVA, before = """
|
|
package p1;
|
|
|
|
import qqq.aaa.XXX;
|
|
|
|
class C {
|
|
XXX you = new XXX();
|
|
}
|
|
""".trimIndent(), after = """
|
|
package p1;
|
|
|
|
import zzz.bbb.QQQ;
|
|
|
|
class C {
|
|
QQQ you = new QQQ();
|
|
}
|
|
""".trimIndent(), MigrationMapEntry("qqq.aaa.XXX", "zzz.bbb.QQQ", MigrationMapEntry.CLASS, false)
|
|
)
|
|
migrationTest(JvmLanguage.JAVA, before = """
|
|
package p1;
|
|
|
|
import qqq.aaa.*;
|
|
|
|
class C1 {
|
|
XXX you = new XXX();
|
|
}
|
|
""".trimIndent(), after = """
|
|
package p1;
|
|
|
|
import qqq.aaa.*;
|
|
import zzz.bbb.QQQ;
|
|
|
|
class C1 {
|
|
QQQ you = new QQQ();
|
|
}
|
|
""".trimIndent(), MigrationMapEntry("qqq.aaa.XXX", "zzz.bbb.QQQ", MigrationMapEntry.CLASS, false)
|
|
)
|
|
}
|
|
|
|
fun `test non existing class and non existing package`() {
|
|
migrationTest(JvmLanguage.JAVA, before = """
|
|
package p1;
|
|
|
|
import qqq.aaa.XXX;
|
|
|
|
class C {
|
|
XXX you = new XXX();
|
|
}
|
|
""".trimIndent(), after = """
|
|
package p1;
|
|
|
|
import java.lang.String;
|
|
|
|
class C {
|
|
String you = new String();
|
|
}
|
|
""".trimIndent(), MigrationMapEntry("qqq.aaa.XXX", "java.lang.String", MigrationMapEntry.CLASS, false)
|
|
)
|
|
migrationTest(JvmLanguage.JAVA, before = """
|
|
package p1;
|
|
|
|
import qqq.aaa.*;
|
|
|
|
class C1 {
|
|
XXX you = new XXX();
|
|
}
|
|
""".trimIndent(), after = """
|
|
package p1;
|
|
|
|
import qqq.aaa.*;
|
|
|
|
class C1 {
|
|
String you = new String();
|
|
}
|
|
""".trimIndent(), MigrationMapEntry("qqq.aaa.XXX", "java.lang.String", MigrationMapEntry.CLASS, false)
|
|
)
|
|
}
|
|
|
|
fun `test same short name class`() {
|
|
migrationTest(JvmLanguage.JAVA, before = """
|
|
import aaa.*;
|
|
|
|
public class C {
|
|
@Test
|
|
void foo(){}
|
|
|
|
@Test
|
|
void bar(){}
|
|
}
|
|
""".trimIndent(), after = """
|
|
import aaa.*;
|
|
import bbb.Test;
|
|
|
|
public class C {
|
|
@Test
|
|
void foo(){}
|
|
|
|
@Test
|
|
void bar(){}
|
|
}
|
|
""".trimIndent(), MigrationMapEntry("aaa.Test", "bbb.Test", MigrationMapEntry.CLASS, false)
|
|
)
|
|
migrationTest(JvmLanguage.JAVA, before = """
|
|
import aaa.Test;
|
|
|
|
public class C1 {
|
|
@Test
|
|
void foo(){}
|
|
|
|
@Test
|
|
void bar(){}
|
|
}
|
|
""".trimIndent(), after = """
|
|
import bbb.Test;
|
|
|
|
public class C1 {
|
|
@Test
|
|
void foo(){}
|
|
|
|
@Test
|
|
void bar(){}
|
|
}
|
|
""".trimIndent(), MigrationMapEntry("aaa.Test", "bbb.Test", MigrationMapEntry.CLASS, false)
|
|
)
|
|
}
|
|
} |