mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
honor statistics and prefix matching degree in groovy completion
This commit is contained in:
@@ -355,9 +355,9 @@
|
||||
<psi.referenceContributor language="Properties" implementation="org.jetbrains.plugins.groovy.dgm.DGMReferenceContributor"/>
|
||||
|
||||
<weigher key="completion" implementationClass="org.jetbrains.plugins.groovy.lang.completion.weighers.GrWithWeigher"
|
||||
id="groovyWithWeigher" order="before stats"/>
|
||||
id="groovyWithWeigher" order="after prefix"/>
|
||||
<weigher key="completion" implementationClass="org.jetbrains.plugins.groovy.lang.completion.weighers.GrKindWeigher"
|
||||
id="groovyKindWeigher" order="before stats, after groovyWithWeigher"/>
|
||||
id="groovyKindWeigher" order="after groovyWithWeigher, before explicitProximity"/>
|
||||
|
||||
<weigher key="proximity" implementationClass="org.jetbrains.plugins.groovy.lang.completion.weighers.GrReferenceListWeigher"
|
||||
id="groovyReferenceListWeigher" order="before openedInEditor"/>
|
||||
|
||||
+15
-1
@@ -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() {
|
||||
<caret> = 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<caret>"
|
||||
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"
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user