diff --git a/idea/testData/completion/confidence/CompleteOnDotOutOfRanges.kt b/idea/testData/completion/confidence/CompleteOnDotOutOfRanges.kt index 4d0dfbaedbd..594930fc703 100644 --- a/idea/testData/completion/confidence/CompleteOnDotOutOfRanges.kt +++ b/idea/testData/completion/confidence/CompleteOnDotOutOfRanges.kt @@ -1,3 +1,5 @@ fun test() { 12.in -} \ No newline at end of file +} + +// TYPE: "." \ No newline at end of file diff --git a/idea/testData/completion/confidence/CompleteOnDotOutOfRanges.kt.after b/idea/testData/completion/confidence/CompleteOnDotOutOfRanges.kt.after index 2c8d387e41f..2aef6663fb4 100644 --- a/idea/testData/completion/confidence/CompleteOnDotOutOfRanges.kt.after +++ b/idea/testData/completion/confidence/CompleteOnDotOutOfRanges.kt.after @@ -1,3 +1,5 @@ fun test() { - 12.inc(). -} \ No newline at end of file + 12.inc(). +} + +// TYPE: "." \ No newline at end of file diff --git a/idea/testData/completion/confidence/ImportAsConfidence.kt b/idea/testData/completion/confidence/ImportAsConfidence.kt index 23a13a5a418..abf71eafb62 100644 --- a/idea/testData/completion/confidence/ImportAsConfidence.kt +++ b/idea/testData/completion/confidence/ImportAsConfidence.kt @@ -1 +1,3 @@ -import kotlin.util // Comment to prevent for removing trailing spaces \ No newline at end of file +import kotlin.util // Comment to prevent for removing trailing spaces + +// TYPE: "as" \ No newline at end of file diff --git a/idea/testData/completion/confidence/ImportAsConfidence.kt.after b/idea/testData/completion/confidence/ImportAsConfidence.kt.after index 710bdc9420a..c6ade5b4bf8 100644 --- a/idea/testData/completion/confidence/ImportAsConfidence.kt.after +++ b/idea/testData/completion/confidence/ImportAsConfidence.kt.after @@ -1 +1,3 @@ -import kotlin.util as // Comment to prevent for removing trailing spaces \ No newline at end of file +import kotlin.util as// Comment to prevent for removing trailing spaces + +// TYPE: "as" \ No newline at end of file diff --git a/idea/testData/completion/confidence/InBeginningOfFunctionLiteral.kt b/idea/testData/completion/confidence/InBeginningOfFunctionLiteral.kt index 03898c0f8b1..501531ce7d2 100644 --- a/idea/testData/completion/confidence/InBeginningOfFunctionLiteral.kt +++ b/idea/testData/completion/confidence/InBeginningOfFunctionLiteral.kt @@ -1,4 +1,6 @@ fun main(args : Array) { val mmm = 12 val t = { } -} \ No newline at end of file +} + +// TYPE: "mm " \ No newline at end of file diff --git a/idea/testData/completion/confidence/InBeginningOfFunctionLiteral.kt.after b/idea/testData/completion/confidence/InBeginningOfFunctionLiteral.kt.after index c1079d37611..a22e4856c42 100644 --- a/idea/testData/completion/confidence/InBeginningOfFunctionLiteral.kt.after +++ b/idea/testData/completion/confidence/InBeginningOfFunctionLiteral.kt.after @@ -1,4 +1,6 @@ fun main(args : Array) { val mmm = 12 val t = { mm } -} \ No newline at end of file +} + +// TYPE: "mm " \ No newline at end of file diff --git a/idea/testData/completion/confidence/InBeginningOfFunctionLiteralInBrackets.kt b/idea/testData/completion/confidence/InBeginningOfFunctionLiteralInBrackets.kt index 0fcec1593b2..cf28f8c445c 100644 --- a/idea/testData/completion/confidence/InBeginningOfFunctionLiteralInBrackets.kt +++ b/idea/testData/completion/confidence/InBeginningOfFunctionLiteralInBrackets.kt @@ -1,4 +1,6 @@ fun main(args : Array) { val mmm = 12 val t = { () } -} \ No newline at end of file +} + +// TYPE: "mm " \ No newline at end of file diff --git a/idea/testData/completion/confidence/InBeginningOfFunctionLiteralInBrackets.kt.after b/idea/testData/completion/confidence/InBeginningOfFunctionLiteralInBrackets.kt.after index 34d71fc9fe5..03819a122c8 100644 --- a/idea/testData/completion/confidence/InBeginningOfFunctionLiteralInBrackets.kt.after +++ b/idea/testData/completion/confidence/InBeginningOfFunctionLiteralInBrackets.kt.after @@ -1,4 +1,6 @@ fun main(args : Array) { val mmm = 12 val t = { (mm ) } -} \ No newline at end of file +} + +// TYPE: "mm " \ No newline at end of file diff --git a/idea/testData/completion/confidence/InBlockOfFunctionLiteral.kt b/idea/testData/completion/confidence/InBlockOfFunctionLiteral.kt index f438d237441..0a609794637 100644 --- a/idea/testData/completion/confidence/InBlockOfFunctionLiteral.kt +++ b/idea/testData/completion/confidence/InBlockOfFunctionLiteral.kt @@ -1,4 +1,6 @@ fun main(args : Array) { val mmm = 12 val t = { i -> } -} \ No newline at end of file +} + +// TYPE: "mm " \ No newline at end of file diff --git a/idea/testData/completion/confidence/InBlockOfFunctionLiteral.kt.after b/idea/testData/completion/confidence/InBlockOfFunctionLiteral.kt.after index b541c7e8f9f..027b9f2c855 100644 --- a/idea/testData/completion/confidence/InBlockOfFunctionLiteral.kt.after +++ b/idea/testData/completion/confidence/InBlockOfFunctionLiteral.kt.after @@ -1,4 +1,6 @@ fun main(args : Array) { val mmm = 12 val t = { i -> mmm } -} \ No newline at end of file +} + +// TYPE: "mm " \ No newline at end of file diff --git a/idea/testData/completion/confidence/InModifierList.kt b/idea/testData/completion/confidence/InModifierList.kt index 472ffcb0869..88f9177fc10 100644 --- a/idea/testData/completion/confidence/InModifierList.kt +++ b/idea/testData/completion/confidence/InModifierList.kt @@ -2,4 +2,6 @@ package test import java.util.AbstractSet as Hello -// Comment to prevent for removing trailing spaces \ No newline at end of file +// Comment to prevent for removing trailing spaces + +// TYPE: "pub " \ No newline at end of file diff --git a/idea/testData/completion/confidence/InModifierList.kt.after b/idea/testData/completion/confidence/InModifierList.kt.after index 9ee02ecc7e0..4a3a6fe994e 100644 --- a/idea/testData/completion/confidence/InModifierList.kt.after +++ b/idea/testData/completion/confidence/InModifierList.kt.after @@ -2,4 +2,6 @@ package test import java.util.AbstractSet as Hello -public // Comment to prevent for removing trailing spaces \ No newline at end of file +public // Comment to prevent for removing trailing spaces + +// TYPE: "pub " \ No newline at end of file diff --git a/idea/testData/completion/confidence/NoAutoCompletionForRangeOperator.kt b/idea/testData/completion/confidence/NoAutoCompletionForRangeOperator.kt index df9b659ce3c..30b134d7d79 100644 --- a/idea/testData/completion/confidence/NoAutoCompletionForRangeOperator.kt +++ b/idea/testData/completion/confidence/NoAutoCompletionForRangeOperator.kt @@ -2,3 +2,5 @@ fun test() { for (i in 12.) { } } + +// TYPE: "." diff --git a/idea/testData/completion/confidence/NoAutoCompletionForRangeOperator.kt.after b/idea/testData/completion/confidence/NoAutoCompletionForRangeOperator.kt.after index 66e6eb5c241..dade80aff41 100644 --- a/idea/testData/completion/confidence/NoAutoCompletionForRangeOperator.kt.after +++ b/idea/testData/completion/confidence/NoAutoCompletionForRangeOperator.kt.after @@ -1,4 +1,6 @@ fun test() { - for (i in 12.. ) { + for (i in 12..) { } } + +// TYPE: "." diff --git a/idea/tests/org/jetbrains/jet/completion/confidence/JetConfidenceTest.java b/idea/tests/org/jetbrains/jet/completion/confidence/JetConfidenceTest.java index 2df7715ab63..f4b1905c76d 100644 --- a/idea/tests/org/jetbrains/jet/completion/confidence/JetConfidenceTest.java +++ b/idea/tests/org/jetbrains/jet/completion/confidence/JetConfidenceTest.java @@ -21,8 +21,10 @@ import com.intellij.codeInsight.completion.CompletionType; import com.intellij.codeInsight.completion.LightCompletionTestCase; import com.intellij.openapi.projectRoots.JavaSdk; import com.intellij.openapi.projectRoots.Sdk; +import com.intellij.openapi.util.text.StringUtil; import org.apache.commons.lang.SystemUtils; import org.jetbrains.jet.plugin.PluginTestCaseBase; +import org.jetbrains.jet.testing.InTextDirectivesUtils; import java.io.File; @@ -30,40 +32,51 @@ import java.io.File; * @author Nikolay Krasko */ public class JetConfidenceTest extends LightCompletionTestCase { + private static final String TYPE_DIRECTIVE_PREFIX = "// TYPE:"; + public void testCompleteOnDotOutOfRanges() { - doTest("."); + doTest(); } public void testImportAsConfidence() { - doTest("as"); - } - - public void testInModifierList() { - doTest("pub"); + doTest(); } public void testInBeginningOfFunctionLiteral() { - doTest("mm"); + doTest(); } public void testInBeginningOfFunctionLiteralInBrackets() { - doTest("mm"); + doTest(); } public void testInBlockOfFunctionLiteral() { - doTest("mm"); + doTest(); + } + + public void testInModifierList() { + doTest(); } public void testNoAutoCompletionForRangeOperator() { - doTest("."); + doTest(); } - protected void doTest(String completionActivateType) { + protected void doTest() { configureByFile(getBeforeFileName()); - type(completionActivateType + " "); + type(getTypeTextFromFile()); checkResultByFile(getAfterFileName()); } + protected static String getTypeTextFromFile() { + String text = getEditor().getDocument().getText(); + + String[] directives = InTextDirectivesUtils.findListWithPrefix(TYPE_DIRECTIVE_PREFIX, text); + assertEquals("One directive with \"" + TYPE_DIRECTIVE_PREFIX +"\" expected", 1, directives.length); + + return StringUtil.unquoteString(directives[0]); + } + protected String getBeforeFileName() { return getTestName(false) + ".kt"; }