diff --git a/plugins/groovy/src/META-INF/plugin.xml b/plugins/groovy/src/META-INF/plugin.xml
index bcbe434cdee0..703f940e64d6 100644
--- a/plugins/groovy/src/META-INF/plugin.xml
+++ b/plugins/groovy/src/META-INF/plugin.xml
@@ -355,9 +355,9 @@
+ id="groovyWithWeigher" order="after prefix"/>
+ id="groovyKindWeigher" order="after groovyWithWeigher, before explicitProximity"/>
diff --git a/plugins/groovy/test/org/jetbrains/plugins/groovy/completion/GroovyCompletionTest.groovy b/plugins/groovy/test/org/jetbrains/plugins/groovy/completion/GroovyCompletionTest.groovy
index 20a8e57a3bcd..11d29c2081e8 100644
--- a/plugins/groovy/test/org/jetbrains/plugins/groovy/completion/GroovyCompletionTest.groovy
+++ b/plugins/groovy/test/org/jetbrains/plugins/groovy/completion/GroovyCompletionTest.groovy
@@ -15,7 +15,6 @@
*/
package org.jetbrains.plugins.groovy.completion
-
import com.intellij.codeInsight.CodeInsightSettings
import com.intellij.codeInsight.completion.CompletionType
import com.intellij.codeInsight.completion.impl.CamelHumpMatcher
@@ -23,6 +22,8 @@ import com.intellij.codeInsight.lookup.LookupElement
import com.intellij.codeInsight.lookup.LookupElementPresentation
import com.intellij.codeInsight.lookup.PsiTypeLookupItem
import com.intellij.psi.codeStyle.CodeStyleSettingsManager
+import com.intellij.psi.statistics.StatisticsManager
+import com.intellij.psi.statistics.impl.StatisticsManagerImpl
import com.intellij.psi.util.PsiTreeUtil
import org.jetbrains.plugins.groovy.GroovyFileType
import org.jetbrains.plugins.groovy.codeStyle.GroovyCodeStyleSettings
@@ -1670,4 +1671,17 @@ void foo() {
= baz
}""")
}
+
+ public void "test honor statistics"() {
+ ((StatisticsManagerImpl)StatisticsManager.instance).enableStatistics(testRootDisposable)
+
+ myFixture.addClass("class Foo { Object getMessage() {} }; class Bar extends Foo { Object getMessages(); }")
+ configure "b = new Bar();\nb.mes"
+ def items = myFixture.completeBasic()
+ myFixture.assertPreferredCompletionItems 0, "messages", "message"
+ myFixture.lookup.currentItem = items[1]
+ myFixture.type('\n\nb.mes')
+ myFixture.completeBasic()
+ myFixture.assertPreferredCompletionItems 0, "message", "messages"
+ }
}
\ No newline at end of file