Refactoring: extract pattern to variable and add language injection

This commit is contained in:
Nikolay Krasko
2016-07-27 15:16:51 +03:00
parent 071285fad7
commit e7ee0d1c5e
@@ -17,6 +17,7 @@
package org.jetbrains.kotlin.generators.tests package org.jetbrains.kotlin.generators.tests
import junit.framework.TestCase import junit.framework.TestCase
import org.intellij.lang.annotations.Language
import org.jetbrains.kotlin.AbstractDataFlowValueRenderingTest import org.jetbrains.kotlin.AbstractDataFlowValueRenderingTest
import org.jetbrains.kotlin.addImport.AbstractAddImportTest import org.jetbrains.kotlin.addImport.AbstractAddImportTest
import org.jetbrains.kotlin.android.* import org.jetbrains.kotlin.android.*
@@ -144,7 +145,8 @@ import java.io.File
import java.util.* import java.util.*
import java.util.regex.Pattern import java.util.regex.Pattern
private val kotlinFileOrScript = "^(.+)\\.(kt|kts)\$" @Language("RegExp") private val KT_OR_KTS = """^(.+)\.(kt|kts)$"""
@Language("RegExp") private val KT_WITHOUT_DOTS_IN_NAME = """^([^\.]+)\.kt$"""
fun main(args: Array<String>) { fun main(args: Array<String>) {
System.setProperty("java.awt.headless", "true") System.setProperty("java.awt.headless", "true")
@@ -577,7 +579,7 @@ fun main(args: Array<String>) {
} }
testClass<AbstractReferenceResolveTest>() { testClass<AbstractReferenceResolveTest>() {
model("resolve/references", pattern = """^([^\.]+)\.kt$""") model("resolve/references", pattern = KT_WITHOUT_DOTS_IN_NAME)
} }
testClass<AbstractReferenceResolveInJavaTest>() { testClass<AbstractReferenceResolveInJavaTest>() {
@@ -669,8 +671,8 @@ fun main(args: Array<String>) {
} }
testClass<AbstractInsertImportOnPasteTest>() { testClass<AbstractInsertImportOnPasteTest>() {
model("copyPaste/imports", pattern = """^([^\.]+)\.kt$""", testMethod = "doTestCopy", testClassName = "Copy", recursive = false) model("copyPaste/imports", pattern = KT_WITHOUT_DOTS_IN_NAME, testMethod = "doTestCopy", testClassName = "Copy", recursive = false)
model("copyPaste/imports", pattern = """^([^\.]+)\.kt$""", testMethod = "doTestCut", testClassName = "Cut", recursive = false) model("copyPaste/imports", pattern = KT_WITHOUT_DOTS_IN_NAME, testMethod = "doTestCut", testClassName = "Cut", recursive = false)
} }
testClass<AbstractHighlightExitPointsTest>() { testClass<AbstractHighlightExitPointsTest>() {
@@ -682,22 +684,22 @@ fun main(args: Array<String>) {
} }
testClass<AbstractShortenRefsTest>() { testClass<AbstractShortenRefsTest>() {
model("shortenRefs", pattern = """^([^\.]+)\.kt$""") model("shortenRefs", pattern = KT_WITHOUT_DOTS_IN_NAME)
} }
testClass<AbstractAddImportTest>() { testClass<AbstractAddImportTest>() {
model("addImport", pattern = """^([^\.]+)\.kt$""") model("addImport", pattern = KT_WITHOUT_DOTS_IN_NAME)
} }
testClass<AbstractSmartSelectionTest>() { testClass<AbstractSmartSelectionTest>() {
model("smartSelection", testMethod = "doTestSmartSelection", pattern = """^([^\.]+)\.kt$""") model("smartSelection", testMethod = "doTestSmartSelection", pattern = KT_WITHOUT_DOTS_IN_NAME)
} }
testClass<AbstractKotlinFileStructureTest>() { testClass<AbstractKotlinFileStructureTest>() {
model("structureView/fileStructure", pattern = """^([^\.]+)\.kt$""") model("structureView/fileStructure", pattern = KT_WITHOUT_DOTS_IN_NAME)
} }
testClass<AbstractExpressionSelectionTest>() { testClass<AbstractExpressionSelectionTest>() {
model("expressionSelection", testMethod = "doTestExpressionSelection", pattern = """^([^\.]+)\.kt$""") model("expressionSelection", testMethod = "doTestExpressionSelection", pattern = KT_WITHOUT_DOTS_IN_NAME)
} }
testClass(AbstractCommonDecompiledTextTest::class.java) { testClass(AbstractCommonDecompiledTextTest::class.java) {
@@ -721,7 +723,7 @@ fun main(args: Array<String>) {
} }
testClass<AbstractOptimizeImportsTest>() { testClass<AbstractOptimizeImportsTest>() {
model("editor/optimizeImports", pattern = """^([^\.]+)\.kt$""") model("editor/optimizeImports", pattern = KT_WITHOUT_DOTS_IN_NAME)
} }
testClass<AbstractPositionManagerTest>() { testClass<AbstractPositionManagerTest>() {
@@ -765,13 +767,13 @@ fun main(args: Array<String>) {
} }
testClass<AbstractExtractionTest>() { testClass<AbstractExtractionTest>() {
model("refactoring/introduceVariable", pattern = kotlinFileOrScript, testMethod = "doIntroduceVariableTest") model("refactoring/introduceVariable", pattern = KT_OR_KTS, testMethod = "doIntroduceVariableTest")
model("refactoring/extractFunction", pattern = kotlinFileOrScript, testMethod = "doExtractFunctionTest") model("refactoring/extractFunction", pattern = KT_OR_KTS, testMethod = "doExtractFunctionTest")
model("refactoring/introduceProperty", pattern = kotlinFileOrScript, testMethod = "doIntroducePropertyTest") model("refactoring/introduceProperty", pattern = KT_OR_KTS, testMethod = "doIntroducePropertyTest")
model("refactoring/introduceParameter", pattern = kotlinFileOrScript, testMethod = "doIntroduceSimpleParameterTest") model("refactoring/introduceParameter", pattern = KT_OR_KTS, testMethod = "doIntroduceSimpleParameterTest")
model("refactoring/introduceLambdaParameter", pattern = kotlinFileOrScript, testMethod = "doIntroduceLambdaParameterTest") model("refactoring/introduceLambdaParameter", pattern = KT_OR_KTS, testMethod = "doIntroduceLambdaParameterTest")
model("refactoring/introduceJavaParameter", extension = "java", testMethod = "doIntroduceJavaParameterTest") model("refactoring/introduceJavaParameter", extension = "java", testMethod = "doIntroduceJavaParameterTest")
model("refactoring/introduceTypeAlias", pattern = kotlinFileOrScript, testMethod = "doIntroduceTypeAliasTest") model("refactoring/introduceTypeAlias", pattern = KT_OR_KTS, testMethod = "doIntroduceTypeAliasTest")
} }
testClass<AbstractPullUpTest>() { testClass<AbstractPullUpTest>() {
@@ -853,7 +855,7 @@ fun main(args: Array<String>) {
} }
testClass<AbstractIdeCompiledLightClassTest> { testClass<AbstractIdeCompiledLightClassTest> {
model("asJava/lightClasses", pattern = """^([^\.]+)\.kt$""") model("asJava/lightClasses", pattern = KT_WITHOUT_DOTS_IN_NAME)
} }
} }
@@ -867,11 +869,11 @@ fun main(args: Array<String>) {
} }
testClass<AbstractBasicCompletionWeigherTest>() { testClass<AbstractBasicCompletionWeigherTest>() {
model("weighers/basic", pattern = """^([^\.]+)\.kt$""") model("weighers/basic", pattern = KT_WITHOUT_DOTS_IN_NAME)
} }
testClass<AbstractSmartCompletionWeigherTest>() { testClass<AbstractSmartCompletionWeigherTest>() {
model("weighers/smart", pattern = """^([^\.]+)\.kt$""") model("weighers/smart", pattern = KT_WITHOUT_DOTS_IN_NAME)
} }
testClass<AbstractJSBasicCompletionTest>() { testClass<AbstractJSBasicCompletionTest>() {