From 7ec15fd00a9e561853c4ee81308227ed001f9c75 Mon Sep 17 00:00:00 2001 From: svtk Date: Thu, 29 Sep 2011 14:20:57 +0400 Subject: [PATCH] Added tests for 'open' modifier checks --- .../jet/plugin/quickfix/ModifierFix.java | 12 ++++++++++-- .../full/IllegalModifiers.jet | 17 +++++++++++++++++ .../full/IncompatibleModifiers.jet | 7 ------- .../abstract/afterNonMemberAbstractAccessor.kt | 2 +- .../abstract/beforeNonMemberAbstractAccessor.kt | 2 +- .../quickfix/modifiers/afterFinalTrait.kt | 2 ++ .../afterNonFinalAccessorOfFinalProperty1.kt | 5 +++++ .../afterNonFinalAccessorOfFinalProperty2.kt | 5 +++++ .../modifiers/afterOpenMemberInFinalClass1.kt | 4 ++++ .../modifiers/afterOpenMemberInFinalClass2.kt | 4 ++++ .../quickfix/modifiers/beforeFinalTrait.kt | 2 ++ .../beforeNonFinalAccessorOfFinalProperty1.kt | 5 +++++ .../beforeNonFinalAccessorOfFinalProperty2.kt | 5 +++++ .../modifiers/beforeOpenMemberInFinalClass1.kt | 4 ++++ .../modifiers/beforeOpenMemberInFinalClass2.kt | 4 ++++ .../org/jetbrains/jet/codegen/TypeInfoTest.java | 2 +- ...erTest.java => AbstractModifierFixTest.java} | 2 +- ...t.java => AddPrimaryConstructorFixTest.java} | 2 +- ...ava => ChangeVariableMutabilityFixTest.java} | 2 +- ...ImportTests.java => ClassImportFixTest.java} | 2 +- ...essionsTest.java => ExpressionsFixTest.java} | 2 +- ...ModifiersTest.java => ModifiersFixTest.java} | 2 +- ...erTest.java => OverrideModifierFixTest.java} | 2 +- ...tionTests.java => TypeAdditionFixTests.java} | 2 +- 24 files changed, 78 insertions(+), 20 deletions(-) create mode 100644 idea/testData/checkerWithErrorTypes/full/IllegalModifiers.jet delete mode 100644 idea/testData/checkerWithErrorTypes/full/IncompatibleModifiers.jet create mode 100644 idea/testData/quickfix/modifiers/afterFinalTrait.kt create mode 100644 idea/testData/quickfix/modifiers/afterNonFinalAccessorOfFinalProperty1.kt create mode 100644 idea/testData/quickfix/modifiers/afterNonFinalAccessorOfFinalProperty2.kt create mode 100644 idea/testData/quickfix/modifiers/afterOpenMemberInFinalClass1.kt create mode 100644 idea/testData/quickfix/modifiers/afterOpenMemberInFinalClass2.kt create mode 100644 idea/testData/quickfix/modifiers/beforeFinalTrait.kt create mode 100644 idea/testData/quickfix/modifiers/beforeNonFinalAccessorOfFinalProperty1.kt create mode 100644 idea/testData/quickfix/modifiers/beforeNonFinalAccessorOfFinalProperty2.kt create mode 100644 idea/testData/quickfix/modifiers/beforeOpenMemberInFinalClass1.kt create mode 100644 idea/testData/quickfix/modifiers/beforeOpenMemberInFinalClass2.kt rename idea/tests/org/jetbrains/jet/plugin/quickfix/{AbstractModifierTest.java => AbstractModifierFixTest.java} (87%) rename idea/tests/org/jetbrains/jet/plugin/quickfix/{AddPrimaryConstructorTest.java => AddPrimaryConstructorFixTest.java} (86%) rename idea/tests/org/jetbrains/jet/plugin/quickfix/{ChangeVariableMutabilityTest.java => ChangeVariableMutabilityFixTest.java} (86%) rename idea/tests/org/jetbrains/jet/plugin/quickfix/{ClassImportTests.java => ClassImportFixTest.java} (90%) rename idea/tests/org/jetbrains/jet/plugin/quickfix/{ExpressionsTest.java => ExpressionsFixTest.java} (87%) rename idea/tests/org/jetbrains/jet/plugin/quickfix/{ModifiersTest.java => ModifiersFixTest.java} (88%) rename idea/tests/org/jetbrains/jet/plugin/quickfix/{OverrideModifierTest.java => OverrideModifierFixTest.java} (87%) rename idea/tests/org/jetbrains/jet/plugin/quickfix/{TypeAdditionTests.java => TypeAdditionFixTests.java} (87%) diff --git a/idea/src/org/jetbrains/jet/plugin/quickfix/ModifierFix.java b/idea/src/org/jetbrains/jet/plugin/quickfix/ModifierFix.java index 347dfb2aaed..fa1c38e7a6c 100644 --- a/idea/src/org/jetbrains/jet/plugin/quickfix/ModifierFix.java +++ b/idea/src/org/jetbrains/jet/plugin/quickfix/ModifierFix.java @@ -4,6 +4,7 @@ import com.intellij.psi.PsiElement; import com.intellij.psi.PsiNameIdentifierOwner; import org.jetbrains.annotations.NotNull; import org.jetbrains.jet.lang.psi.JetModifierListOwner; +import org.jetbrains.jet.lang.psi.JetPropertyAccessor; import org.jetbrains.jet.lexer.JetKeywordToken; /** @@ -19,12 +20,19 @@ public abstract class ModifierFix extends JetIntentionActionabstract final fun f() + abstract open fun g() + final open fun h() {} +} + +final trait T {} + +class FinalClass() { + open fun foo() {} + val i: Int = 1 + open get(): Int = $i + var j: Int = 1 + open set(v: Int) {} +} diff --git a/idea/testData/checkerWithErrorTypes/full/IncompatibleModifiers.jet b/idea/testData/checkerWithErrorTypes/full/IncompatibleModifiers.jet deleted file mode 100644 index a7b3f5a6e88..00000000000 --- a/idea/testData/checkerWithErrorTypes/full/IncompatibleModifiers.jet +++ /dev/null @@ -1,7 +0,0 @@ -namespace a - -abstract class A() { - abstract final fun f() - abstract open fun g() - final open fun h() {} -} \ No newline at end of file diff --git a/idea/testData/quickfix/abstract/afterNonMemberAbstractAccessor.kt b/idea/testData/quickfix/abstract/afterNonMemberAbstractAccessor.kt index c31be73c7df..9d9d46b6606 100644 --- a/idea/testData/quickfix/abstract/afterNonMemberAbstractAccessor.kt +++ b/idea/testData/quickfix/abstract/afterNonMemberAbstractAccessor.kt @@ -1,2 +1,2 @@ -// "Make 'abstract get' not abstract" "true" +// "Make 'get' not abstract" "true" val i : Int = 0; get \ No newline at end of file diff --git a/idea/testData/quickfix/abstract/beforeNonMemberAbstractAccessor.kt b/idea/testData/quickfix/abstract/beforeNonMemberAbstractAccessor.kt index 872f637f879..4eab8790a9e 100644 --- a/idea/testData/quickfix/abstract/beforeNonMemberAbstractAccessor.kt +++ b/idea/testData/quickfix/abstract/beforeNonMemberAbstractAccessor.kt @@ -1,2 +1,2 @@ -// "Make 'abstract get' not abstract" "true" +// "Make 'get' not abstract" "true" val i : Int = 0; abstract get \ No newline at end of file diff --git a/idea/testData/quickfix/modifiers/afterFinalTrait.kt b/idea/testData/quickfix/modifiers/afterFinalTrait.kt new file mode 100644 index 00000000000..d5b8bbf86c6 --- /dev/null +++ b/idea/testData/quickfix/modifiers/afterFinalTrait.kt @@ -0,0 +1,2 @@ +// "Remove 'final' modifier" "true" +trait A {} \ No newline at end of file diff --git a/idea/testData/quickfix/modifiers/afterNonFinalAccessorOfFinalProperty1.kt b/idea/testData/quickfix/modifiers/afterNonFinalAccessorOfFinalProperty1.kt new file mode 100644 index 00000000000..7ae88e4147a --- /dev/null +++ b/idea/testData/quickfix/modifiers/afterNonFinalAccessorOfFinalProperty1.kt @@ -0,0 +1,5 @@ +// "Make 'i' open" "true" +open class A() { + open val i: Int = 1 + open get(): Int = $i +} \ No newline at end of file diff --git a/idea/testData/quickfix/modifiers/afterNonFinalAccessorOfFinalProperty2.kt b/idea/testData/quickfix/modifiers/afterNonFinalAccessorOfFinalProperty2.kt new file mode 100644 index 00000000000..62cf211cb44 --- /dev/null +++ b/idea/testData/quickfix/modifiers/afterNonFinalAccessorOfFinalProperty2.kt @@ -0,0 +1,5 @@ +// "Make 'get' not open" "true" +open class A() { + val i: Int = 1 + get(): Int = $i +} \ No newline at end of file diff --git a/idea/testData/quickfix/modifiers/afterOpenMemberInFinalClass1.kt b/idea/testData/quickfix/modifiers/afterOpenMemberInFinalClass1.kt new file mode 100644 index 00000000000..cf2f155fc9a --- /dev/null +++ b/idea/testData/quickfix/modifiers/afterOpenMemberInFinalClass1.kt @@ -0,0 +1,4 @@ +// "Make 'A' open" "true" +open class A() { + open fun foo() {} +} diff --git a/idea/testData/quickfix/modifiers/afterOpenMemberInFinalClass2.kt b/idea/testData/quickfix/modifiers/afterOpenMemberInFinalClass2.kt new file mode 100644 index 00000000000..1d4c97459f7 --- /dev/null +++ b/idea/testData/quickfix/modifiers/afterOpenMemberInFinalClass2.kt @@ -0,0 +1,4 @@ +// "Make 'foo' not open" "true" +class A() { + fun foo() {} +} diff --git a/idea/testData/quickfix/modifiers/beforeFinalTrait.kt b/idea/testData/quickfix/modifiers/beforeFinalTrait.kt new file mode 100644 index 00000000000..61895997169 --- /dev/null +++ b/idea/testData/quickfix/modifiers/beforeFinalTrait.kt @@ -0,0 +1,2 @@ +// "Remove 'final' modifier" "true" +final trait A {} \ No newline at end of file diff --git a/idea/testData/quickfix/modifiers/beforeNonFinalAccessorOfFinalProperty1.kt b/idea/testData/quickfix/modifiers/beforeNonFinalAccessorOfFinalProperty1.kt new file mode 100644 index 00000000000..da2f748ec26 --- /dev/null +++ b/idea/testData/quickfix/modifiers/beforeNonFinalAccessorOfFinalProperty1.kt @@ -0,0 +1,5 @@ +// "Make 'i' open" "true" +open class A() { + val i: Int = 1 + open get(): Int = $i +} \ No newline at end of file diff --git a/idea/testData/quickfix/modifiers/beforeNonFinalAccessorOfFinalProperty2.kt b/idea/testData/quickfix/modifiers/beforeNonFinalAccessorOfFinalProperty2.kt new file mode 100644 index 00000000000..868366c07ba --- /dev/null +++ b/idea/testData/quickfix/modifiers/beforeNonFinalAccessorOfFinalProperty2.kt @@ -0,0 +1,5 @@ +// "Make 'get' not open" "true" +open class A() { + val i: Int = 1 + open get(): Int = $i +} \ No newline at end of file diff --git a/idea/testData/quickfix/modifiers/beforeOpenMemberInFinalClass1.kt b/idea/testData/quickfix/modifiers/beforeOpenMemberInFinalClass1.kt new file mode 100644 index 00000000000..7fe2cfa5d53 --- /dev/null +++ b/idea/testData/quickfix/modifiers/beforeOpenMemberInFinalClass1.kt @@ -0,0 +1,4 @@ +// "Make 'A' open" "true" +class A() { + open fun foo() {} +} diff --git a/idea/testData/quickfix/modifiers/beforeOpenMemberInFinalClass2.kt b/idea/testData/quickfix/modifiers/beforeOpenMemberInFinalClass2.kt new file mode 100644 index 00000000000..f46a98892ae --- /dev/null +++ b/idea/testData/quickfix/modifiers/beforeOpenMemberInFinalClass2.kt @@ -0,0 +1,4 @@ +// "Make 'foo' not open" "true" +class A() { + open fun foo() {} +} diff --git a/idea/tests/org/jetbrains/jet/codegen/TypeInfoTest.java b/idea/tests/org/jetbrains/jet/codegen/TypeInfoTest.java index f356e8da69f..da349baae39 100644 --- a/idea/tests/org/jetbrains/jet/codegen/TypeInfoTest.java +++ b/idea/tests/org/jetbrains/jet/codegen/TypeInfoTest.java @@ -136,7 +136,7 @@ public class TypeInfoTest extends CodegenTestCase { } public void testInner() throws Exception { - blackBoxFile("typeinfo/inner.jet"); + blackBoxFile("typeInfo/inner.jet"); System.out.println(generateToText()); } } diff --git a/idea/tests/org/jetbrains/jet/plugin/quickfix/AbstractModifierTest.java b/idea/tests/org/jetbrains/jet/plugin/quickfix/AbstractModifierFixTest.java similarity index 87% rename from idea/tests/org/jetbrains/jet/plugin/quickfix/AbstractModifierTest.java rename to idea/tests/org/jetbrains/jet/plugin/quickfix/AbstractModifierFixTest.java index 2f137b3a941..cbade4283ca 100644 --- a/idea/tests/org/jetbrains/jet/plugin/quickfix/AbstractModifierTest.java +++ b/idea/tests/org/jetbrains/jet/plugin/quickfix/AbstractModifierFixTest.java @@ -6,7 +6,7 @@ import org.jetbrains.jet.JetTestCaseBase; /** * @author svtk */ -public class AbstractModifierTest extends LightQuickFixTestCase { +public class AbstractModifierFixTest extends LightQuickFixTestCase { public void test() throws Exception { doAllTests(); diff --git a/idea/tests/org/jetbrains/jet/plugin/quickfix/AddPrimaryConstructorTest.java b/idea/tests/org/jetbrains/jet/plugin/quickfix/AddPrimaryConstructorFixTest.java similarity index 86% rename from idea/tests/org/jetbrains/jet/plugin/quickfix/AddPrimaryConstructorTest.java rename to idea/tests/org/jetbrains/jet/plugin/quickfix/AddPrimaryConstructorFixTest.java index e575bc659bd..c8a067576f9 100644 --- a/idea/tests/org/jetbrains/jet/plugin/quickfix/AddPrimaryConstructorTest.java +++ b/idea/tests/org/jetbrains/jet/plugin/quickfix/AddPrimaryConstructorFixTest.java @@ -6,7 +6,7 @@ import org.jetbrains.jet.JetTestCaseBase; /** * @author svtk */ -public class AddPrimaryConstructorTest extends LightQuickFixTestCase { +public class AddPrimaryConstructorFixTest extends LightQuickFixTestCase { public void test() throws Exception { doAllTests(); diff --git a/idea/tests/org/jetbrains/jet/plugin/quickfix/ChangeVariableMutabilityTest.java b/idea/tests/org/jetbrains/jet/plugin/quickfix/ChangeVariableMutabilityFixTest.java similarity index 86% rename from idea/tests/org/jetbrains/jet/plugin/quickfix/ChangeVariableMutabilityTest.java rename to idea/tests/org/jetbrains/jet/plugin/quickfix/ChangeVariableMutabilityFixTest.java index 1690f3a1e66..e2b04a75f1f 100644 --- a/idea/tests/org/jetbrains/jet/plugin/quickfix/ChangeVariableMutabilityTest.java +++ b/idea/tests/org/jetbrains/jet/plugin/quickfix/ChangeVariableMutabilityFixTest.java @@ -6,7 +6,7 @@ import org.jetbrains.jet.JetTestCaseBase; /** * @author svtk */ -public class ChangeVariableMutabilityTest extends LightQuickFixTestCase { +public class ChangeVariableMutabilityFixTest extends LightQuickFixTestCase { public void test() throws Exception { doAllTests(); diff --git a/idea/tests/org/jetbrains/jet/plugin/quickfix/ClassImportTests.java b/idea/tests/org/jetbrains/jet/plugin/quickfix/ClassImportFixTest.java similarity index 90% rename from idea/tests/org/jetbrains/jet/plugin/quickfix/ClassImportTests.java rename to idea/tests/org/jetbrains/jet/plugin/quickfix/ClassImportFixTest.java index 2b29637e9fa..215a15eb5b2 100644 --- a/idea/tests/org/jetbrains/jet/plugin/quickfix/ClassImportTests.java +++ b/idea/tests/org/jetbrains/jet/plugin/quickfix/ClassImportFixTest.java @@ -7,7 +7,7 @@ import org.jetbrains.jet.JetTestCaseBase; /** * @author svtk */ -public class ClassImportTests extends LightQuickFixTestCase { +public class ClassImportFixTest extends LightQuickFixTestCase { public void test() throws Exception { doAllTests(); diff --git a/idea/tests/org/jetbrains/jet/plugin/quickfix/ExpressionsTest.java b/idea/tests/org/jetbrains/jet/plugin/quickfix/ExpressionsFixTest.java similarity index 87% rename from idea/tests/org/jetbrains/jet/plugin/quickfix/ExpressionsTest.java rename to idea/tests/org/jetbrains/jet/plugin/quickfix/ExpressionsFixTest.java index d02253c22ec..9e0affacba6 100644 --- a/idea/tests/org/jetbrains/jet/plugin/quickfix/ExpressionsTest.java +++ b/idea/tests/org/jetbrains/jet/plugin/quickfix/ExpressionsFixTest.java @@ -6,7 +6,7 @@ import org.jetbrains.jet.JetTestCaseBase; /** * @author svtk */ -public class ExpressionsTest extends LightQuickFixTestCase { +public class ExpressionsFixTest extends LightQuickFixTestCase { public void test() throws Exception { doAllTests(); diff --git a/idea/tests/org/jetbrains/jet/plugin/quickfix/ModifiersTest.java b/idea/tests/org/jetbrains/jet/plugin/quickfix/ModifiersFixTest.java similarity index 88% rename from idea/tests/org/jetbrains/jet/plugin/quickfix/ModifiersTest.java rename to idea/tests/org/jetbrains/jet/plugin/quickfix/ModifiersFixTest.java index e1199ce2a37..66b299fded9 100644 --- a/idea/tests/org/jetbrains/jet/plugin/quickfix/ModifiersTest.java +++ b/idea/tests/org/jetbrains/jet/plugin/quickfix/ModifiersFixTest.java @@ -6,7 +6,7 @@ import org.jetbrains.jet.JetTestCaseBase; /** * @author svtk */ -public class ModifiersTest extends LightQuickFixTestCase { +public class ModifiersFixTest extends LightQuickFixTestCase { public void test() throws Exception { doAllTests(); diff --git a/idea/tests/org/jetbrains/jet/plugin/quickfix/OverrideModifierTest.java b/idea/tests/org/jetbrains/jet/plugin/quickfix/OverrideModifierFixTest.java similarity index 87% rename from idea/tests/org/jetbrains/jet/plugin/quickfix/OverrideModifierTest.java rename to idea/tests/org/jetbrains/jet/plugin/quickfix/OverrideModifierFixTest.java index 4aad9e4c4ff..2a67aa23aeb 100644 --- a/idea/tests/org/jetbrains/jet/plugin/quickfix/OverrideModifierTest.java +++ b/idea/tests/org/jetbrains/jet/plugin/quickfix/OverrideModifierFixTest.java @@ -6,7 +6,7 @@ import org.jetbrains.jet.JetTestCaseBase; /** * @author svtk */ -public class OverrideModifierTest extends LightQuickFixTestCase { +public class OverrideModifierFixTest extends LightQuickFixTestCase { public void test() throws Exception { doAllTests(); diff --git a/idea/tests/org/jetbrains/jet/plugin/quickfix/TypeAdditionTests.java b/idea/tests/org/jetbrains/jet/plugin/quickfix/TypeAdditionFixTests.java similarity index 87% rename from idea/tests/org/jetbrains/jet/plugin/quickfix/TypeAdditionTests.java rename to idea/tests/org/jetbrains/jet/plugin/quickfix/TypeAdditionFixTests.java index c45adf043e9..42c100016f6 100644 --- a/idea/tests/org/jetbrains/jet/plugin/quickfix/TypeAdditionTests.java +++ b/idea/tests/org/jetbrains/jet/plugin/quickfix/TypeAdditionFixTests.java @@ -6,7 +6,7 @@ import org.jetbrains.jet.JetTestCaseBase; /** * @author svtk */ -public class TypeAdditionTests extends LightQuickFixTestCase { +public class TypeAdditionFixTests extends LightQuickFixTestCase { public void test() throws Exception { doAllTests();