mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-08-28 04:37:32 +07:00
safe delete: warn about functional expressions
This commit is contained in:
@@ -0,0 +1,11 @@
|
||||
interface SAM {
|
||||
void fo<caret>o(int i);
|
||||
}
|
||||
|
||||
class Test {
|
||||
|
||||
{
|
||||
SAM sam = (i) -> {};
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
interface SAM {
|
||||
void foo(int <caret>i);
|
||||
}
|
||||
|
||||
class Test {
|
||||
|
||||
{
|
||||
SAM sam = (i) -> {};
|
||||
}
|
||||
|
||||
}
|
||||
@@ -134,6 +134,30 @@ public class SafeDeleteTest extends MultiFileTestCase {
|
||||
}
|
||||
}
|
||||
|
||||
public void testParameterFromFunctionalInterface() throws Exception {
|
||||
try {
|
||||
LanguageLevelProjectExtension.getInstance(getProject()).setLanguageLevel(LanguageLevel.JDK_1_8);
|
||||
doSingleFileTest();
|
||||
fail("Conflict was not detected");
|
||||
}
|
||||
catch (BaseRefactoringProcessor.ConflictsInTestsException e) {
|
||||
String message = e.getMessage();
|
||||
assertEquals("class <b><code>SAM</code></b> has 1 usage that is not safe to delete.", message);
|
||||
}
|
||||
}
|
||||
|
||||
public void testFunctionalInterfaceMethod() throws Exception {
|
||||
try {
|
||||
LanguageLevelProjectExtension.getInstance(getProject()).setLanguageLevel(LanguageLevel.JDK_1_8);
|
||||
doSingleFileTest();
|
||||
fail("Conflict was not detected");
|
||||
}
|
||||
catch (BaseRefactoringProcessor.ConflictsInTestsException e) {
|
||||
String message = e.getMessage();
|
||||
assertEquals("class <b><code>SAM</code></b> has 1 usage that is not safe to delete.", message);
|
||||
}
|
||||
}
|
||||
|
||||
public void testMethodDeepHierarchy() throws Exception {
|
||||
doTest("Super");
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user