Add test for not generating file facade light class for empty file
This commit is contained in:
@@ -0,0 +1 @@
|
|||||||
|
<not generated>
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
//a.b.c.EmptyFileKt
|
||||||
|
package a.b.c
|
||||||
@@ -70,6 +70,12 @@ public class CompilerLightClassTestGenerated extends AbstractCompilerLightClassT
|
|||||||
JetTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/asJava/lightClasses/facades"), Pattern.compile("^(.+)\\.kt$"), true);
|
JetTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/asJava/lightClasses/facades"), Pattern.compile("^(.+)\\.kt$"), true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@TestMetadata("EmptyFile.kt")
|
||||||
|
public void testEmptyFile() throws Exception {
|
||||||
|
String fileName = JetTestUtils.navigationMetadata("compiler/testData/asJava/lightClasses/facades/EmptyFile.kt");
|
||||||
|
doTest(fileName);
|
||||||
|
}
|
||||||
|
|
||||||
@TestMetadata("SingleFile.kt")
|
@TestMetadata("SingleFile.kt")
|
||||||
public void testSingleFile() throws Exception {
|
public void testSingleFile() throws Exception {
|
||||||
String fileName = JetTestUtils.navigationMetadata("compiler/testData/asJava/lightClasses/facades/SingleFile.kt");
|
String fileName = JetTestUtils.navigationMetadata("compiler/testData/asJava/lightClasses/facades/SingleFile.kt");
|
||||||
|
|||||||
@@ -40,6 +40,14 @@ object LightClassTestCommon {
|
|||||||
|
|
||||||
val lightClass = findLightClass(fqName)
|
val lightClass = findLightClass(fqName)
|
||||||
|
|
||||||
|
val actual = actualText(fqName, lightClass, normalizeText)
|
||||||
|
JetTestUtils.assertEqualsToFile(JetTestUtils.replaceExtension(testDataFile, "java"), actual)
|
||||||
|
}
|
||||||
|
|
||||||
|
private fun actualText(fqName: String?, lightClass: PsiClass?, normalizeText: (String) -> String): String {
|
||||||
|
if (lightClass == null) {
|
||||||
|
return "<not generated>"
|
||||||
|
}
|
||||||
TestCase.assertTrue("Not a light class: $lightClass ($fqName)", lightClass is KotlinLightClass)
|
TestCase.assertTrue("Not a light class: $lightClass ($fqName)", lightClass is KotlinLightClass)
|
||||||
|
|
||||||
val delegate = (lightClass as KotlinLightClass).getDelegate()
|
val delegate = (lightClass as KotlinLightClass).getDelegate()
|
||||||
@@ -48,6 +56,6 @@ object LightClassTestCommon {
|
|||||||
val buffer = StringBuilder()
|
val buffer = StringBuilder()
|
||||||
(delegate as ClsElementImpl).appendMirrorText(0, buffer)
|
(delegate as ClsElementImpl).appendMirrorText(0, buffer)
|
||||||
val actual = normalizeText(buffer.toString())
|
val actual = normalizeText(buffer.toString())
|
||||||
JetTestUtils.assertEqualsToFile(JetTestUtils.replaceExtension(testDataFile, "java"), actual)
|
return actual
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -43,6 +43,12 @@ public class IdeLightClassTestGenerated extends AbstractIdeLightClassTest {
|
|||||||
JetTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/asJava/lightClasses/facades"), Pattern.compile("^(.+)\\.kt$"), true);
|
JetTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/asJava/lightClasses/facades"), Pattern.compile("^(.+)\\.kt$"), true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@TestMetadata("EmptyFile.kt")
|
||||||
|
public void testEmptyFile() throws Exception {
|
||||||
|
String fileName = JetTestUtils.navigationMetadata("compiler/testData/asJava/lightClasses/facades/EmptyFile.kt");
|
||||||
|
doTest(fileName);
|
||||||
|
}
|
||||||
|
|
||||||
@TestMetadata("SingleFile.kt")
|
@TestMetadata("SingleFile.kt")
|
||||||
public void testSingleFile() throws Exception {
|
public void testSingleFile() throws Exception {
|
||||||
String fileName = JetTestUtils.navigationMetadata("compiler/testData/asJava/lightClasses/facades/SingleFile.kt");
|
String fileName = JetTestUtils.navigationMetadata("compiler/testData/asJava/lightClasses/facades/SingleFile.kt");
|
||||||
|
|||||||
Reference in New Issue
Block a user