public void testXmlInTagLiteral() { myFixture.configureByText("a.go", "package main; type foo struct { a int `<caret>` }"); myFixture.type("xml\t"); myFixture.checkResult("package main; type foo struct { a int `xml:\"a\"` }"); }
public void testSimple() { myFixture.configureByText("a.go", "package main; func main() { const fo<caret>o int = 2 }"); applySingleQuickFix("Delete const 'foo'"); myFixture.checkResult("package main; func main() {}"); }
public void testRemoveSingleQuote() { myFixture.configureByText("t.go", "package main; const _ = '\\n''<caret>'"); myFixture.type('\b'); myFixture.checkResult("package main; const _ = '\\n'<caret>"); }
public void testAddSingleQuote() { myFixture.configureByText("t.go", "package main; const _ = '\\n'<caret>"); myFixture.type('\''); myFixture.checkResult("package main; const _ = '\\n''<caret>'"); }
public void testMultiplePackages() { myFixture.addFileToProject("a.go", "package a"); myFixture.configureByText("b.go", "<error>package b</error>"); myFixture.checkHighlighting(); }
private <T> void doTestGetUseScope(@NotNull String text, @NotNull Class<T> scope) { myFixture.configureByText("a.go", text); PsiFile file = myFixture.getFile(); GoVarDefinition var = PsiTreeUtil.findChildOfType(file, GoVarDefinition.class); assertNotNull(var); assertTrue(scope.isInstance(var.getUseScope())); }
private void doTestExcluded(@NotNull String initial, @NotNull String after, String... excludedPaths) { GoExcludedPathsSettings.getInstance(getProject()).setExcludedPackages(excludedPaths); myFixture.configureByText("a.go", initial); myFixture.completeBasic(); myFixture.checkResult(after); }
public void testImportedFunctionsPriority() { myFixture.configureByText("a.go", "package main; \n" + "import `io`\n" + "func test(){ReadA<caret>}"); failOnFileLoading(); myFixture.completeBasic(); myFixture.assertPreferredCompletionItems(0, "io.ReadAtLeast", "io.ReaderAt", "idea_io.ReadAtLeastCustom", "idea_io.ReaderAtCustom"); }
public void testCompleteTestBenchmarkExamplesFromNonTestFiles() throws IOException { myFixture.addFileToProject("pack/pack.go", "package pack; func TestFoo() {} func BenchmarkFoo() {} func ExampleFoo() {}"); myFixture.configureByText("my_test.go", "package a; func main() { _ = Foo<caret>"); myFixture.completeBasic(); //noinspection ConstantConditions assertContainsElements(myFixture.getLookupElementStrings(), "pack.TestFoo", "pack.BenchmarkFoo", "pack.ExampleFoo"); }
public void testAddVarSpec() { myFixture.configureByText("a.go", "package main\n\nvar (\n" + " fo<caret>o int\n" + ")"); GoVarDeclaration declaration = PsiTreeUtil.getNonStrictParentOfType(myFixture.getElementAtCaret(), GoVarDeclaration.class); assertNotNull(declaration); declaration.addSpec("bar", "string", "`1`", null); myFixture.checkResult("package main\n\nvar (\n foo int\nbar string = `1`\n)"); }
public void testAddVarSpecNoNewLines() { myFixture.configureByText("a.go", "package main\n\nvar (fo<caret>o int\n)"); GoVarDeclaration declaration = PsiTreeUtil.getNonStrictParentOfType(myFixture.getElementAtCaret(), GoVarDeclaration.class); assertNotNull(declaration); declaration.addSpec("bar", "string", "`1`", null); myFixture.checkResult("package main\n\nvar (foo int\nbar string = `1`\n)"); }
public void testImportVendoringPackageWithDisabledVendoring() { disableVendoring(); myFixture.addFileToProject("vendor/a/b/c.go", "package b"); myFixture.configureByText("a.go", "package a; func a() { b<caret>.Println() }"); myFixture.launchAction(myFixture.findSingleIntention("Import vendor/a/b?")); myFixture.checkResult("package a;\n\nimport \"vendor/a/b\"\n\nfunc a() { b<caret>.Println() }"); }
public void testDoNotCompleteSymbolsFromShadowedPackages() { myFixture.addFileToProject("foo/foo.go", "package foo; func ShadowedFunction() {}"); myFixture.addFileToProject("vendor/foo/foo.go", "package bar; func ShadowedFunction() {}"); myFixture.configureByText("a.go", "package src; func _() { ShadowF<caret> }"); myFixture.completeBasic(); //noinspection ConstantConditions assertSameElements(myFixture.getLookupElementStrings(), "bar.ShadowedFunction"); }
public void testAddVarSpecWithoutParensWithAnchor() { myFixture.configureByText("a.go", "package main\n\nvar fo<caret>o int\n"); GoVarSpec spec = PsiTreeUtil.getNonStrictParentOfType(myFixture.getElementAtCaret(), GoVarSpec.class); assertNotNull(spec); GoVarDeclaration declaration = (GoVarDeclaration)spec.getParent(); declaration.addSpec("bar", "string", "`1`", spec); myFixture.checkResult("package main\n\nvar (\nbar string = `1`\nfoo int)\n"); }
public void testAddConstSpecWithoutParensWithAnchor() { myFixture.configureByText("a.go", "package main\n\nconst fo<caret>o int\n"); GoConstSpec spec = PsiTreeUtil.getNonStrictParentOfType(myFixture.getElementAtCaret(), GoConstSpec.class); assertNotNull(spec); GoConstDeclaration declaration = (GoConstDeclaration)spec.getParent(); declaration.addSpec("bar", "string", "`1`", spec); myFixture.checkResult("package main\n\nconst (\nbar string = `1`\nfoo int)\n"); }
public void testReplaceImportWithVendoredPath() { myFixture.addFileToProject("vendor/foo/a.go", "package foo"); myFixture.configureByText("a.go", "package pack\n" + "import _ `pack/vendor/unresolved`\n" + "import <error descr=\"Must be imported as 'foo'\">_ `vend<caret>or/foo`</error>"); myFixture.checkHighlighting(); assertContainsElements(getIntentionNames(), "Disable vendoring experiment support in module 'light_idea_test_case'", "Delete import"); myFixture.launchAction(myFixture.findSingleIntention("Replace with 'foo'")); myFixture.checkResult("package pack\n" + "import _ `pack/vendor/unresolved`\n" + "import _ `foo`"); }
public void testDeleteLastMultipleVarDefinitionWithoutValue() { myFixture.configureByText("a.go", "package main\n\n var foo, b<caret>ar int = 1"); GoVarDefinition definition = PsiTreeUtil.getNonStrictParentOfType(myFixture.getElementAtCaret(), GoVarDefinition.class); assertNotNull(definition); GoVarSpec spec = PsiTreeUtil.getNonStrictParentOfType(myFixture.getElementAtCaret(), GoVarSpec.class); assertNotNull(spec); spec.deleteDefinition(definition); myFixture.checkResult("package main\n\n var foo int = 1"); }
public void testDeleteSingleConstDefinition() { myFixture.configureByText("a.go", "package main\n\n const b<caret>ar int = 1, 2"); GoConstDefinition definition = PsiTreeUtil.getNonStrictParentOfType(myFixture.getElementAtCaret(), GoConstDefinition.class); assertNotNull(definition); GoConstSpec spec = PsiTreeUtil.getNonStrictParentOfType(myFixture.getElementAtCaret(), GoConstSpec.class); assertNotNull(spec); spec.deleteDefinition(definition); myFixture.checkResult("package main\n\n "); }
public void testDeleteFirstMultipleConstDefinitionWithValue() { myFixture.configureByText("a.go", "package main\n\n const fo<caret>o, bar int = 1, 2"); GoConstDefinition definition = PsiTreeUtil.getNonStrictParentOfType(myFixture.getElementAtCaret(), GoConstDefinition.class); assertNotNull(definition); GoConstSpec spec = PsiTreeUtil.getNonStrictParentOfType(myFixture.getElementAtCaret(), GoConstSpec.class); assertNotNull(spec); spec.deleteDefinition(definition); myFixture.checkResult("package main\n\n const bar int = 2"); }
public void testDeleteLastMultipleConstDefinitionWithValue() { myFixture.configureByText("a.go", "package main\n\n const foo, b<caret>ar int = 1, 2"); GoConstDefinition definition = PsiTreeUtil.getNonStrictParentOfType(myFixture.getElementAtCaret(), GoConstDefinition.class); assertNotNull(definition); GoConstSpec spec = PsiTreeUtil.getNonStrictParentOfType(myFixture.getElementAtCaret(), GoConstSpec.class); assertNotNull(spec); spec.deleteDefinition(definition); myFixture.checkResult("package main\n\n const foo int = 1 "); }