diff options
Diffstat (limited to 'java/java-tests/testSrc/com/intellij/refactoring/SafeDeleteTest.java')
-rw-r--r-- | java/java-tests/testSrc/com/intellij/refactoring/SafeDeleteTest.java | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/java/java-tests/testSrc/com/intellij/refactoring/SafeDeleteTest.java b/java/java-tests/testSrc/com/intellij/refactoring/SafeDeleteTest.java index a6768c98d0f3..e99d8a5d1cec 100644 --- a/java/java-tests/testSrc/com/intellij/refactoring/SafeDeleteTest.java +++ b/java/java-tests/testSrc/com/intellij/refactoring/SafeDeleteTest.java @@ -134,6 +134,35 @@ 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 testFunctionalInterfaceDefaultMethod() throws Exception { + LanguageLevelProjectExtension.getInstance(getProject()).setLanguageLevel(LanguageLevel.JDK_1_8); + doSingleFileTest(); + } + public void testMethodDeepHierarchy() throws Exception { doTest("Super"); } |