Fix compilation on 193 and clean up other warnings

This commit is contained in:
Nikolay Krasko
2019-10-25 14:14:36 +03:00
parent 7b0f03cc1c
commit 3e7767f096
@@ -14,7 +14,6 @@ import com.intellij.codeInspection.LocalInspectionEP
import com.intellij.ide.highlighter.JavaFileType
import com.intellij.openapi.command.CommandProcessor
import com.intellij.openapi.editor.Editor
import com.intellij.openapi.extensions.Extensions
import com.intellij.openapi.fileTypes.FileType
import com.intellij.openapi.fileTypes.PlainTextFileType
import com.intellij.openapi.util.io.FileUtil
@@ -26,7 +25,6 @@ import com.intellij.psi.PsiFile
import com.intellij.testFramework.fixtures.impl.CodeInsightTestFixtureImpl
import com.intellij.util.ArrayUtil
import com.intellij.util.PathUtil
import com.intellij.util.containers.ContainerUtil
import junit.framework.ComparisonFailure
import junit.framework.TestCase
import org.jetbrains.kotlin.idea.KotlinFileType
@@ -49,8 +47,7 @@ abstract class AbstractQuickFixMultiFileTest : KotlinLightCodeInsightFixtureTest
if (beforeFileName.endsWith(".test")) {
doMultiFileTest(beforeFileName)
}
else {
} else {
doTest(beforeFileName)
}
}
@@ -65,15 +62,10 @@ abstract class AbstractQuickFixMultiFileTest : KotlinLightCodeInsightFixtureTest
}
private fun enableInspectionTools(klass: Class<*>) {
val eps = ContainerUtil.newArrayList<InspectionEP>()
ContainerUtil.addAll<InspectionEP, LocalInspectionEP, List<InspectionEP>>(
eps,
*(@Suppress("DEPRECATION") Extensions.getExtensions(LocalInspectionEP.LOCAL_INSPECTION))
)
ContainerUtil.addAll<InspectionEP, InspectionEP, List<InspectionEP>>(
eps,
*(@Suppress("DEPRECATION") Extensions.getExtensions(InspectionEP.GLOBAL_INSPECTION))
)
val eps = mutableListOf<InspectionEP>().apply {
addAll(LocalInspectionEP.LOCAL_INSPECTION.extensions)
addAll(InspectionEP.GLOBAL_INSPECTION.extensions)
}
val tool = eps.firstOrNull { it.implementationClass == klass.name }?.instantiateTool()
?: error("Could not find inspection tool for class: $klass")
@@ -117,11 +109,11 @@ abstract class AbstractQuickFixMultiFileTest : KotlinLightCodeInsightFixtureTest
}
private fun doMultiFileTest(beforeFileName: String) {
val multifileText = FileUtil.loadFile(File(beforeFileName), true)
val multiFileText = FileUtil.loadFile(File(beforeFileName), true)
val subFiles = TestFiles.createTestFiles(
"single.kt",
multifileText,
multiFileText,
object : TestFiles.TestFileFactoryNoModules<TestFile>() {
override fun create(fileName: String, text: String, directives: Map<String, String>): TestFile {
val linesWithoutDirectives = text.lines().filter {
@@ -141,7 +133,7 @@ abstract class AbstractQuickFixMultiFileTest : KotlinLightCodeInsightFixtureTest
}
configureMultiFileTest(subFiles, beforeFile)
configureCompilerOptions(multifileText, project, module)
configureCompilerOptions(multiFileText, project, module)
CommandProcessor.getInstance().executeCommand(project, {
try {
@@ -165,8 +157,8 @@ abstract class AbstractQuickFixMultiFileTest : KotlinLightCodeInsightFixtureTest
TestCase.assertNotNull(".after file should exist", afterFile)
if (afterText != afterFile!!.content) {
val actualTestFile = StringBuilder()
if (multifileText.startsWith("// LANGUAGE_VERSION")) {
actualTestFile.append(multifileText.lineSequence().first())
if (multiFileText.startsWith("// LANGUAGE_VERSION")) {
actualTestFile.append(multiFileText.lineSequence().first())
}
actualTestFile.append("// FILE: ").append(beforeFile.path).append("\n").append(beforeFile.content)
@@ -177,18 +169,14 @@ abstract class AbstractQuickFixMultiFileTest : KotlinLightCodeInsightFixtureTest
KotlinTestUtils.assertEqualsToFile(File(beforeFileName), actualTestFile.toString())
}
}
else {
} else {
TestCase.assertNull(".after file should not exist", afterFile)
}
}
catch (e: ComparisonFailure) {
} catch (e: ComparisonFailure) {
throw e
}
catch (e: AssertionError) {
} catch (e: AssertionError) {
throw e
}
catch (e: Throwable) {
} catch (e: Throwable) {
e.printStackTrace()
TestCase.fail(getTestName(true))
}
@@ -234,8 +222,7 @@ abstract class AbstractQuickFixMultiFileTest : KotlinLightCodeInsightFixtureTest
val afterFilePath = beforeFileName.replace(".before.Main.", ".after.")
try {
myFixture.checkResultByFile(mainFile.name.replace(".before.Main.", ".after."))
}
catch (e: ComparisonFailure) {
} catch (e: ComparisonFailure) {
KotlinTestUtils.assertEqualsToFile(File(afterFilePath), editor)
}
@@ -247,24 +234,19 @@ abstract class AbstractQuickFixMultiFileTest : KotlinLightCodeInsightFixtureTest
val afterFile = File(extraFileFullPath.replace(".before.", ".after."))
if (afterFile.exists()) {
KotlinTestUtils.assertEqualsToFile(afterFile, file.text)
}
else {
} else {
KotlinTestUtils.assertEqualsToFile(File(extraFileFullPath), file.text)
}
}
}
}
catch (e: ComparisonFailure) {
} catch (e: ComparisonFailure) {
throw e
}
catch (e: AssertionError) {
} catch (e: AssertionError) {
throw e
}
catch (e: Throwable) {
} catch (e: Throwable) {
e.printStackTrace()
TestCase.fail(getTestName(true))
}
finally {
} finally {
if (configured) {
rollbackCompilerOptions(project, module)
}
@@ -282,10 +264,10 @@ abstract class AbstractQuickFixMultiFileTest : KotlinLightCodeInsightFixtureTest
companion object {
private fun getActionsTexts(availableActions: List<IntentionAction>): List<String> =
availableActions.map(IntentionAction::getText)
availableActions.map(IntentionAction::getText)
private fun extraFileNamePrefix(mainFileName: String): String =
mainFileName.replace(".Main.kt", ".").replace(".Main.java", ".")
mainFileName.replace(".Main.kt", ".").replace(".Main.java", ".")
protected fun guessFileType(file: TestFile): FileType = when {
file.path.contains("." + KotlinFileType.EXTENSION) -> KotlinFileType.INSTANCE
@@ -294,17 +276,17 @@ abstract class AbstractQuickFixMultiFileTest : KotlinLightCodeInsightFixtureTest
}
private fun findActionByPattern(pattern: Pattern, availableActions: List<IntentionAction>): IntentionAction? =
availableActions.firstOrNull { pattern.matcher(it.text).matches() }
availableActions.firstOrNull { pattern.matcher(it.text).matches() }
fun doAction(
text: String,
file: PsiFile,
editor: Editor,
actionShouldBeAvailable: Boolean,
testFilePath: String,
getAvailableActions: () -> List<IntentionAction>,
doHighlighting: () -> List<HighlightInfo>,
shouldBeAvailableAfterExecution: Boolean = false
text: String,
file: PsiFile,
editor: Editor,
actionShouldBeAvailable: Boolean,
testFilePath: String,
getAvailableActions: () -> List<IntentionAction>,
doHighlighting: () -> List<HighlightInfo>,
shouldBeAvailableAfterExecution: Boolean = false
) {
val pattern = if (text.startsWith("/"))
Pattern.compile(text.substring(1, text.length - 1))
@@ -318,19 +300,19 @@ abstract class AbstractQuickFixMultiFileTest : KotlinLightCodeInsightFixtureTest
if (actionShouldBeAvailable) {
val texts = getActionsTexts(availableActions)
val infos = doHighlighting()
TestCase.fail("Action with text '" + text + "' is not available in test " + testFilePath + "\n" +
"Available actions (" + texts.size + "): \n" +
StringUtil.join(texts, "\n") +
"\nActions:\n" +
StringUtil.join(availableActions, "\n") +
"\nInfos:\n" +
StringUtil.join(infos, "\n"))
}
else {
TestCase.fail(
"Action with text '" + text + "' is not available in test " + testFilePath + "\n" +
"Available actions (" + texts.size + "): \n" +
StringUtil.join(texts, "\n") +
"\nActions:\n" +
StringUtil.join(availableActions, "\n") +
"\nInfos:\n" +
StringUtil.join(infos, "\n")
)
} else {
DirectiveBasedActionUtils.checkAvailableActionsAreExpected(file, availableActions)
}
}
else {
} else {
if (!actionShouldBeAvailable) {
TestCase.fail("Action '$text' is available (but must not) in test $testFilePath")
}