Quick Fixes: Add test for KT-5922 (QuickFix to change lambda signature doesn't work with SAM conversion)

This commit is contained in:
Alexey Sedunov
2014-12-09 12:23:57 +03:00
parent 14b33f8b95
commit 346d9ea0c5
4 changed files with 37 additions and 1 deletions
@@ -0,0 +1,6 @@
// "Change the signature of function literal" "true"
// DISABLE-ERRORS
fun main(args: Array<String>) {
Test<String>().perform("") {(s: String?, s1: String?) -> }
}
@@ -0,0 +1,6 @@
// "Change the signature of function literal" "true"
// DISABLE-ERRORS
fun main(args: Array<String>) {
Test<String>().perform("") <caret>{ }
}
@@ -0,0 +1,9 @@
class Test<T> {
public static interface Action<T> {
void call(T t, String name);
}
void perform(T t, Action<T> subscribe) {
subscribe.call(t, "");
}
}
@@ -30,7 +30,7 @@ import java.util.regex.Pattern;
@SuppressWarnings("all")
@TestMetadata("idea/testData/quickfix")
@TestDataPath("$PROJECT_ROOT")
@InnerTestClasses({QuickFixMultiFileTestGenerated.AddStarProjections.class, QuickFixMultiFileTestGenerated.AutoImports.class, QuickFixMultiFileTestGenerated.CreateFromUsage.class, QuickFixMultiFileTestGenerated.Modifiers.class, QuickFixMultiFileTestGenerated.Nullables.class, QuickFixMultiFileTestGenerated.Override.class, QuickFixMultiFileTestGenerated.Suppress.class, QuickFixMultiFileTestGenerated.TypeImports.class, QuickFixMultiFileTestGenerated.TypeMismatch.class, QuickFixMultiFileTestGenerated.Variables.class})
@InnerTestClasses({QuickFixMultiFileTestGenerated.AddStarProjections.class, QuickFixMultiFileTestGenerated.AutoImports.class, QuickFixMultiFileTestGenerated.ChangeSignature.class, QuickFixMultiFileTestGenerated.CreateFromUsage.class, QuickFixMultiFileTestGenerated.Modifiers.class, QuickFixMultiFileTestGenerated.Nullables.class, QuickFixMultiFileTestGenerated.Override.class, QuickFixMultiFileTestGenerated.Suppress.class, QuickFixMultiFileTestGenerated.TypeImports.class, QuickFixMultiFileTestGenerated.TypeMismatch.class, QuickFixMultiFileTestGenerated.Variables.class})
@RunWith(JUnit3RunnerWithInners.class)
public class QuickFixMultiFileTestGenerated extends AbstractQuickFixMultiFileTest {
public void testAllFilesPresentInQuickfix() throws Exception {
@@ -225,6 +225,21 @@ public class QuickFixMultiFileTestGenerated extends AbstractQuickFixMultiFileTes
}
}
@TestMetadata("idea/testData/quickfix/changeSignature")
@TestDataPath("$PROJECT_ROOT")
@RunWith(JUnit3RunnerWithInners.class)
public static class ChangeSignature extends AbstractQuickFixMultiFileTest {
public void testAllFilesPresentInChangeSignature() throws Exception {
JetTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("idea/testData/quickfix/changeSignature"), Pattern.compile("^(\\w+)\\.before\\.Main\\.kt$"), true);
}
@TestMetadata("matchFunctionLiteralWithSAMType.before.Main.kt")
public void testMatchFunctionLiteralWithSAMType() throws Exception {
String fileName = JetTestUtils.navigationMetadata("idea/testData/quickfix/changeSignature/matchFunctionLiteralWithSAMType.before.Main.kt");
doTestWithExtraFile(fileName);
}
}
@TestMetadata("idea/testData/quickfix/createFromUsage")
@TestDataPath("$PROJECT_ROOT")
@InnerTestClasses({CreateFromUsage.CreateClass.class, CreateFromUsage.CreateFunction.class, CreateFromUsage.CreateVariable.class})