diff --git a/idea/src/org/jetbrains/kotlin/idea/actions/generate/KotlinGenerateEqualsAndHashcodeAction.kt b/idea/src/org/jetbrains/kotlin/idea/actions/generate/KotlinGenerateEqualsAndHashcodeAction.kt index 69e44cc0c9f..1c1f111b4ac 100644 --- a/idea/src/org/jetbrains/kotlin/idea/actions/generate/KotlinGenerateEqualsAndHashcodeAction.kt +++ b/idea/src/org/jetbrains/kotlin/idea/actions/generate/KotlinGenerateEqualsAndHashcodeAction.kt @@ -74,12 +74,12 @@ class KotlinGenerateEqualsAndHashcodeAction : KotlinGenerateMemberActionBase "super.hashCode()" propertyIterator.hasNext() -> propertyIterator.next().genVariableHashCode(false) - else -> "0" + else -> "javaClass.hashCode()" } val bodyText = if (propertyIterator.hasNext()) { diff --git a/idea/testData/codeInsight/generate/equalsWithHashCode/explicitDefaultAccessors.kt b/idea/testData/codeInsight/generate/equalsWithHashCode/explicitDefaultAccessors.kt index 4c688ffae95..cca0cf391b8 100644 --- a/idea/testData/codeInsight/generate/equalsWithHashCode/explicitDefaultAccessors.kt +++ b/idea/testData/codeInsight/generate/equalsWithHashCode/explicitDefaultAccessors.kt @@ -5,6 +5,4 @@ class Test { var name: String = "" get -} - -// FORCED \ No newline at end of file +} \ No newline at end of file diff --git a/idea/testData/codeInsight/generate/equalsWithHashCode/explicitDefaultAccessors.kt.after b/idea/testData/codeInsight/generate/equalsWithHashCode/explicitDefaultAccessors.kt.after index 1c6ff3cd016..135184e78fe 100644 --- a/idea/testData/codeInsight/generate/equalsWithHashCode/explicitDefaultAccessors.kt.after +++ b/idea/testData/codeInsight/generate/equalsWithHashCode/explicitDefaultAccessors.kt.after @@ -12,9 +12,7 @@ class Test { } override fun hashCode(): Int { - return 0 + return javaClass.hashCode() } -} - -// FORCED \ No newline at end of file +} \ No newline at end of file diff --git a/idea/testData/codeInsight/generate/equalsWithHashCode/noVars.kt b/idea/testData/codeInsight/generate/equalsWithHashCode/noVars.kt index a3beae64071..0d643780bbd 100644 --- a/idea/testData/codeInsight/generate/equalsWithHashCode/noVars.kt +++ b/idea/testData/codeInsight/generate/equalsWithHashCode/noVars.kt @@ -1,4 +1,3 @@ -// NOT_APPLICABLE class A { fun foo() { diff --git a/idea/testData/codeInsight/generate/equalsWithHashCode/noVarsForced.kt.after b/idea/testData/codeInsight/generate/equalsWithHashCode/noVars.kt.after similarity index 87% rename from idea/testData/codeInsight/generate/equalsWithHashCode/noVarsForced.kt.after rename to idea/testData/codeInsight/generate/equalsWithHashCode/noVars.kt.after index 9469725c156..ef9933bd63b 100644 --- a/idea/testData/codeInsight/generate/equalsWithHashCode/noVarsForced.kt.after +++ b/idea/testData/codeInsight/generate/equalsWithHashCode/noVars.kt.after @@ -1,4 +1,3 @@ -// FORCED class A { fun foo() { @@ -11,6 +10,6 @@ class A { } override fun hashCode(): Int { - return 0 + return javaClass.hashCode() } } \ No newline at end of file diff --git a/idea/testData/codeInsight/generate/equalsWithHashCode/noVarsForced.kt b/idea/testData/codeInsight/generate/equalsWithHashCode/noVarsForced.kt deleted file mode 100644 index fd189b60ebb..00000000000 --- a/idea/testData/codeInsight/generate/equalsWithHashCode/noVarsForced.kt +++ /dev/null @@ -1,6 +0,0 @@ -// FORCED -class A { - fun foo() { - - } -} \ No newline at end of file diff --git a/idea/testData/codeInsight/generate/equalsWithHashCode/noVarsForcedWithSuperClass.kt b/idea/testData/codeInsight/generate/equalsWithHashCode/noVarsWithSuperClass.kt similarity index 94% rename from idea/testData/codeInsight/generate/equalsWithHashCode/noVarsForcedWithSuperClass.kt rename to idea/testData/codeInsight/generate/equalsWithHashCode/noVarsWithSuperClass.kt index 664503f1ebe..4fca19adc98 100644 --- a/idea/testData/codeInsight/generate/equalsWithHashCode/noVarsForcedWithSuperClass.kt +++ b/idea/testData/codeInsight/generate/equalsWithHashCode/noVarsWithSuperClass.kt @@ -1,4 +1,3 @@ -// FORCED open class X { override fun equals(other: Any?) = super.equals(other) override fun hashCode() = super.hashCode() diff --git a/idea/testData/codeInsight/generate/equalsWithHashCode/noVarsForcedWithSuperClass.kt.after b/idea/testData/codeInsight/generate/equalsWithHashCode/noVarsWithSuperClass.kt.after similarity index 97% rename from idea/testData/codeInsight/generate/equalsWithHashCode/noVarsForcedWithSuperClass.kt.after rename to idea/testData/codeInsight/generate/equalsWithHashCode/noVarsWithSuperClass.kt.after index 613abd7c39d..84942c006d5 100644 --- a/idea/testData/codeInsight/generate/equalsWithHashCode/noVarsForcedWithSuperClass.kt.after +++ b/idea/testData/codeInsight/generate/equalsWithHashCode/noVarsWithSuperClass.kt.after @@ -1,4 +1,3 @@ -// FORCED open class X { override fun equals(other: Any?) = super.equals(other) override fun hashCode() = super.hashCode() diff --git a/idea/tests/org/jetbrains/kotlin/idea/codeInsight/generate/GenerateHashCodeAndEqualsActionTestGenerated.java b/idea/tests/org/jetbrains/kotlin/idea/codeInsight/generate/GenerateHashCodeAndEqualsActionTestGenerated.java index 18702ca8df7..911973bfcc1 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/codeInsight/generate/GenerateHashCodeAndEqualsActionTestGenerated.java +++ b/idea/tests/org/jetbrains/kotlin/idea/codeInsight/generate/GenerateHashCodeAndEqualsActionTestGenerated.java @@ -132,15 +132,9 @@ public class GenerateHashCodeAndEqualsActionTestGenerated extends AbstractGenera doTest(fileName); } - @TestMetadata("noVarsForced.kt") - public void testNoVarsForced() throws Exception { - String fileName = KotlinTestUtils.navigationMetadata("idea/testData/codeInsight/generate/equalsWithHashCode/noVarsForced.kt"); - doTest(fileName); - } - - @TestMetadata("noVarsForcedWithSuperClass.kt") - public void testNoVarsForcedWithSuperClass() throws Exception { - String fileName = KotlinTestUtils.navigationMetadata("idea/testData/codeInsight/generate/equalsWithHashCode/noVarsForcedWithSuperClass.kt"); + @TestMetadata("noVarsWithSuperClass.kt") + public void testNoVarsWithSuperClass() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("idea/testData/codeInsight/generate/equalsWithHashCode/noVarsWithSuperClass.kt"); doTest(fileName); }