From 79ce7135a46f57e546f2fc199e0389fca0fdcee0 Mon Sep 17 00:00:00 2001 From: "Pavel V. Talanov" Date: Tue, 2 Dec 2014 14:43:08 +0300 Subject: [PATCH] Update AbstractDecompiledTextTest --- .../textBuilder/AbstractDecompiledTextTest.kt | 25 +++++++++++-------- 1 file changed, 14 insertions(+), 11 deletions(-) diff --git a/idea/tests/org/jetbrains/jet/plugin/decompiler/textBuilder/AbstractDecompiledTextTest.kt b/idea/tests/org/jetbrains/jet/plugin/decompiler/textBuilder/AbstractDecompiledTextTest.kt index d10de626726..68511830b6d 100644 --- a/idea/tests/org/jetbrains/jet/plugin/decompiler/textBuilder/AbstractDecompiledTextTest.kt +++ b/idea/tests/org/jetbrains/jet/plugin/decompiler/textBuilder/AbstractDecompiledTextTest.kt @@ -17,7 +17,6 @@ package org.jetbrains.jet.plugin.decompiler.textBuilder import com.intellij.psi.PsiManager -import com.intellij.psi.impl.compiled.ClsFileImpl import com.intellij.testFramework.LightProjectDescriptor import org.jetbrains.jet.plugin.JdkAndMockLibraryProjectDescriptor import org.jetbrains.jet.plugin.PluginTestCaseBase @@ -29,6 +28,8 @@ import org.jetbrains.jet.plugin.decompiler.navigation.NavigateToDecompiledLibrar import com.intellij.psi.PsiRecursiveElementVisitor import com.intellij.psi.PsiErrorElement import org.jetbrains.jet.lang.psi.JetPsiUtil +import com.intellij.psi.PsiFile +import org.jetbrains.jet.plugin.decompiler.JetClsFile public abstract class AbstractDecompiledTextTest() : JetLightCodeInsightFixtureTestCase() { @@ -36,16 +37,10 @@ public abstract class AbstractDecompiledTextTest() : JetLightCodeInsightFixtureT public fun doTest(path: String) { val classFile = NavigateToDecompiledLibraryTest.getClassFile("test", getTestName(false), myModule!!) - val clsFileForClassFile = PsiManager.getInstance(getProject()!!).findFile(classFile) - assertTrue("Expecting java class file, was: " + clsFileForClassFile!!.javaClass, clsFileForClassFile is ClsFileImpl) - val decompiledPsiFile = (clsFileForClassFile as ClsFileImpl).getDecompiledPsiFile() - assertNotNull(decompiledPsiFile) - assertSameLinesWithFile(path.substring(0, path.length - 1) + ".expected.kt", decompiledPsiFile!!.getText()) - decompiledPsiFile.accept(object : PsiRecursiveElementVisitor() { - override fun visitErrorElement(element: PsiErrorElement) { - fail("Decompiled file should not contain error elements!\n${JetPsiUtil.getElementTextWithContext(element)}") - } - }) + val clsFile = PsiManager.getInstance(getProject()!!).findFile(classFile) + assertTrue("Expecting decompiled kotlin file, was: " + clsFile!!.javaClass, clsFile is JetClsFile) + assertSameLinesWithFile(path.substring(0, path.length - 1) + ".expected.kt", clsFile.getText()) + checkThatFileWasParsedCorrectly(clsFile) } override fun getProjectDescriptor(): LightProjectDescriptor { @@ -54,4 +49,12 @@ public abstract class AbstractDecompiledTextTest() : JetLightCodeInsightFixtureT } return JdkAndMockLibraryProjectDescriptor(TEST_DATA_PATH + "/" + getTestName(false), false) } + + private fun checkThatFileWasParsedCorrectly(clsFile: PsiFile) { + clsFile.accept(object : PsiRecursiveElementVisitor() { + override fun visitErrorElement(element: PsiErrorElement) { + fail("Decompiled file should not contain error elements!\n${JetPsiUtil.getElementTextWithContext(element)}") + } + }) + } }