J2K: KotlinIntroduceVariableHandler
This commit is contained in:
@@ -35,7 +35,7 @@ import org.jetbrains.kotlin.psi.*
|
||||
public class KotlinRefactoringSupportProvider : RefactoringSupportProvider() {
|
||||
override fun isSafeDeleteAvailable(element: PsiElement) = element.canDeleteElement()
|
||||
|
||||
override fun getIntroduceVariableHandler() = KotlinIntroduceVariableHandler()
|
||||
override fun getIntroduceVariableHandler() = KotlinIntroduceVariableHandler
|
||||
|
||||
override fun getIntroduceParameterHandler() = KotlinIntroduceParameterHandler()
|
||||
|
||||
|
||||
+430
-567
File diff suppressed because it is too large
Load Diff
@@ -40,6 +40,7 @@ import com.intellij.openapi.ui.popup.JBPopupAdapter
|
||||
import com.intellij.openapi.ui.popup.LightweightWindowEvent
|
||||
import com.intellij.openapi.ui.popup.PopupChooserBuilder
|
||||
import com.intellij.openapi.util.Key
|
||||
import com.intellij.openapi.util.Pass
|
||||
import com.intellij.openapi.util.TextRange
|
||||
import com.intellij.openapi.util.text.StringUtil
|
||||
import com.intellij.openapi.vfs.LocalFileSystem
|
||||
@@ -744,3 +745,7 @@ fun <ListType : KtElement> replaceListPsiAndKeepDelimiters(
|
||||
|
||||
return originalList
|
||||
}
|
||||
|
||||
fun <T> Pass(body: (T) -> Unit) = object: Pass<T>() {
|
||||
override fun pass(t: T) = body(t)
|
||||
}
|
||||
+8
-4
@@ -32,6 +32,7 @@ import com.intellij.refactoring.introduceField.ElementToWorkOn
|
||||
import com.intellij.refactoring.introduceParameter.AbstractJavaInplaceIntroducer
|
||||
import com.intellij.refactoring.introduceParameter.IntroduceParameterProcessor
|
||||
import com.intellij.refactoring.introduceParameter.Util
|
||||
import com.intellij.refactoring.util.CommonRefactoringUtil
|
||||
import com.intellij.refactoring.util.occurrences.ExpressionOccurrenceManager
|
||||
import com.intellij.testFramework.fixtures.JavaCodeInsightTestFixture
|
||||
import com.intellij.testFramework.fixtures.LightCodeInsightFixtureTestCase
|
||||
@@ -67,11 +68,11 @@ public abstract class AbstractExtractionTest() : KotlinLightCodeInsightFixtureTe
|
||||
doTest(path) { file ->
|
||||
file as KtFile
|
||||
|
||||
KotlinIntroduceVariableHandler().invoke(
|
||||
fixture.getProject(),
|
||||
fixture.getEditor(),
|
||||
KotlinIntroduceVariableHandler.invoke(
|
||||
fixture.project,
|
||||
fixture.editor,
|
||||
file,
|
||||
DataManager.getInstance().getDataContext(fixture.getEditor().getComponent())
|
||||
DataManager.getInstance().getDataContext(fixture.editor.component)
|
||||
)
|
||||
}
|
||||
}
|
||||
@@ -342,6 +343,9 @@ public abstract class AbstractExtractionTest() : KotlinLightCodeInsightFixtureTe
|
||||
val message = e.messages.sorted().joinToString(" ").replace("\n", " ")
|
||||
KotlinTestUtils.assertEqualsToFile(conflictFile, message)
|
||||
}
|
||||
catch(e: CommonRefactoringUtil.RefactoringErrorHintException) {
|
||||
KotlinTestUtils.assertEqualsToFile(conflictFile, e.message!!)
|
||||
}
|
||||
catch(e: RuntimeException) { // RuntimeException is thrown by IDEA code in CodeInsightUtils.java
|
||||
if (e.javaClass != RuntimeException::class.java) throw e
|
||||
KotlinTestUtils.assertEqualsToFile(conflictFile, e.message!!)
|
||||
|
||||
Reference in New Issue
Block a user