diff options
author | Jon Bratseth <bratseth@gmail.com> | 2022-02-18 08:36:01 +0100 |
---|---|---|
committer | Jon Bratseth <bratseth@gmail.com> | 2022-02-18 08:36:01 +0100 |
commit | 228ff94d652ae9b16bc723bb5448196f4d7dc62b (patch) | |
tree | 1f11257eaef9ec7d8f2591a92b8305a8659f5b1a /integration/intellij/src/test | |
parent | 55557bfbc0e0d794dd220ac1f6cc4e3a9f5e9bcf (diff) |
Find profile usages
Diffstat (limited to 'integration/intellij/src/test')
-rw-r--r-- | integration/intellij/src/test/java/ai/vespa/intellij/findUsages/FindFunctionDefinitionTest.java (renamed from integration/intellij/src/test/java/ai/vespa/intellij/findUsages/FindDefinitionTest.java) | 6 | ||||
-rw-r--r-- | integration/intellij/src/test/java/ai/vespa/intellij/findUsages/FindFunctionUsagesTest.java (renamed from integration/intellij/src/test/java/ai/vespa/intellij/findUsages/FindUsagesTest.java) | 11 | ||||
-rw-r--r-- | integration/intellij/src/test/java/ai/vespa/intellij/findUsages/FindRankProfileUsagesTest.java | 32 | ||||
-rw-r--r-- | integration/intellij/src/test/java/ai/vespa/intellij/findUsages/UsagesTester.java | 7 |
4 files changed, 41 insertions, 15 deletions
diff --git a/integration/intellij/src/test/java/ai/vespa/intellij/findUsages/FindDefinitionTest.java b/integration/intellij/src/test/java/ai/vespa/intellij/findUsages/FindFunctionDefinitionTest.java index 36fb842ce24..3ac45be4d9b 100644 --- a/integration/intellij/src/test/java/ai/vespa/intellij/findUsages/FindDefinitionTest.java +++ b/integration/intellij/src/test/java/ai/vespa/intellij/findUsages/FindFunctionDefinitionTest.java @@ -3,16 +3,12 @@ package ai.vespa.intellij.findUsages; import ai.vespa.intellij.PluginTestBase; import com.intellij.usageView.UsageInfo; -import com.intellij.util.Processor; import org.junit.Test; -import java.util.ArrayList; -import java.util.List; - /** * @author bratseth */ -public class FindDefinitionTest extends PluginTestBase { +public class FindFunctionDefinitionTest extends PluginTestBase { @Test public void testFindUsagesInRankProfileModularity() { diff --git a/integration/intellij/src/test/java/ai/vespa/intellij/findUsages/FindUsagesTest.java b/integration/intellij/src/test/java/ai/vespa/intellij/findUsages/FindFunctionUsagesTest.java index 141e5dd4b59..a5315cea8fe 100644 --- a/integration/intellij/src/test/java/ai/vespa/intellij/findUsages/FindUsagesTest.java +++ b/integration/intellij/src/test/java/ai/vespa/intellij/findUsages/FindFunctionUsagesTest.java @@ -2,22 +2,13 @@ package ai.vespa.intellij.findUsages; import ai.vespa.intellij.PluginTestBase; -import ai.vespa.intellij.schema.findUsages.SdFindUsagesHandler; -import ai.vespa.intellij.schema.model.Schema; -import ai.vespa.intellij.schema.utils.Path; -import com.intellij.find.findUsages.FindUsagesOptions; -import com.intellij.openapi.project.Project; import com.intellij.usageView.UsageInfo; -import com.intellij.util.Processor; import org.junit.Test; -import java.util.ArrayList; -import java.util.List; - /** * @author bratseth */ -public class FindUsagesTest extends PluginTestBase { +public class FindFunctionUsagesTest extends PluginTestBase { @Test public void testFindUsagesInRankProfileModularity() { diff --git a/integration/intellij/src/test/java/ai/vespa/intellij/findUsages/FindRankProfileUsagesTest.java b/integration/intellij/src/test/java/ai/vespa/intellij/findUsages/FindRankProfileUsagesTest.java new file mode 100644 index 00000000000..ef916d52c0d --- /dev/null +++ b/integration/intellij/src/test/java/ai/vespa/intellij/findUsages/FindRankProfileUsagesTest.java @@ -0,0 +1,32 @@ +// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +package ai.vespa.intellij.findUsages; + +import ai.vespa.intellij.PluginTestBase; +import com.intellij.usageView.UsageInfo; +import org.junit.Test; + +/** + * @author bratseth + */ +public class FindRankProfileUsagesTest extends PluginTestBase { + + @Test + public void testFindUsagesInRankProfileModularity() { + useDir("src/test/applications/rankprofilemodularity"); + var tester = new UsagesTester("test.sd", getProject()); + tester.assertProfileUsages(2, "in_schema1"); + tester.assertProfileUsages(0, "in_schema2"); + tester.assertProfileUsages(1, "outside_schema1"); + tester.assertProfileUsages(4, "outside_schema2"); + } + + @Test + public void testFindUsagesInSchemaInheritance() { + useDir("src/test/applications/schemainheritance"); + var tester = new UsagesTester("parent.sd", getProject()); + UsageInfo usage = tester.assertProfileUsages(1, "parent_profile").get(0); + assertEquals(406, usage.getNavigationOffset()); + assertEquals(560, usage.getNavigationRange().getEndOffset()); + } + +} diff --git a/integration/intellij/src/test/java/ai/vespa/intellij/findUsages/UsagesTester.java b/integration/intellij/src/test/java/ai/vespa/intellij/findUsages/UsagesTester.java index f48ef7f107a..319240b9ceb 100644 --- a/integration/intellij/src/test/java/ai/vespa/intellij/findUsages/UsagesTester.java +++ b/integration/intellij/src/test/java/ai/vespa/intellij/findUsages/UsagesTester.java @@ -36,6 +36,13 @@ class UsagesTester { return usageProcessor.usages; } + List<UsageInfo> assertProfileUsages(int expectedUsages, String profileName) { + var profile = schema.rankProfiles().get(profileName).definition(); + findUsages(profile); + assertEquals(expectedUsages, usageProcessor.usages.size()); + return usageProcessor.usages; + } + /** Finds the function referred at the given character offset in the given profile. */ UsageInfo findFunctionDefinition(String profileName, int offset) { PsiElement referringElement = schema.rankProfiles().get(profileName).definition().findElementAt(offset); |