PT #154980332 Fix the build on Win

This commit is contained in:
BoykoAlex
2018-02-06 20:47:21 -05:00
parent f8891a4e8d
commit 6aa3e365c9
14 changed files with 291 additions and 296 deletions

View File

@@ -62,10 +62,7 @@ public class SourceLinks {
Optional<Path> sourceResource = project.getClasspath().getSourceFolders().stream()
.map(r -> Paths.get(r).resolve(path)).filter(r -> Files.exists(r)).findFirst();
if (sourceResource.isPresent()) {
StringBuilder sb = new StringBuilder();
sb.append("file://");
sb.append(sourceResource.get().toString());
return Optional.of(sb.toString());
return Optional.of(sourceResource.get().toUri().toString());
}
return Optional.empty();
}
@@ -100,7 +97,7 @@ public class SourceLinks {
query.append("=");
query.append(project.getElementName());
query.append("/");
String convertedPath = String.join("\\/", jarFile.toString().split(File.separator));
String convertedPath = String.join("\\/", jarFile.toString().replaceAll("\\\\", "/").split("/"));
query.append(convertedPath);
query.append("<");
query.append(packageName);

View File

@@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2017 Pivotal, Inc.
* Copyright (c) 2017, 2018 Pivotal, Inc.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -12,6 +12,7 @@ package org.springframework.ide.vscode.boot.java.autowired.test;
import static org.junit.Assert.assertTrue;
import java.nio.file.Paths;
import java.time.Duration;
import org.junit.Before;
@@ -89,7 +90,7 @@ public class AutowiredHoverProviderTest {
.add(LiveBean.builder()
.id("dependencyA")
.type("com.example.DependencyA")
.fileResource(harness.getOutputFolder() + "/com/example/DependencyA.class")
.fileResource(harness.getOutputFolder() + Paths.get("/com/example/DependencyA.class").toString())
.build()
)
.add(LiveBean.builder()
@@ -131,7 +132,7 @@ public class AutowiredHoverProviderTest {
"\n" +
"- Bean: dependencyA \n" +
" Type: `com.example.DependencyA` \n" +
" Resource: `com/example/DependencyA.class`\n" +
" Resource: `" + Paths.get("com/example/DependencyA.class") + "`\n" +
"- Bean: dependencyB \n" +
" Type: `com.example.DependencyB` \n" +
" Resource: `com/example/DependencyB.class`\n"

View File

@@ -50,8 +50,8 @@ public class SpringIndexerBeansTest {
File directory = new File(ProjectsHarness.class.getResource("/test-projects/test-annotation-indexing-beans/").toURI());
indexer.initialize(indexer.wsFolder(directory));
String uriPrefix = "file://" + directory.getAbsolutePath();
indexer.assertDocumentSymbols(uriPrefix + "/src/main/java/org/test/SimpleConfiguration.java",
String docUri = directory.toPath().resolve("src/main/java/org/test/SimpleConfiguration.java").toUri().toString();
indexer.assertDocumentSymbols(docUri,
symbol("@Configuration", "@+ 'simpleConfiguration' (@Configuration <: @Component) SimpleConfiguration"),
symbol("@Bean", "@+ 'simpleBean' (@Bean) BeanClass")
);
@@ -62,8 +62,7 @@ public class SpringIndexerBeansTest {
File directory = new File(ProjectsHarness.class.getResource("/test-projects/test-annotation-indexing-beans/").toURI());
indexer.initialize(indexer.wsFolder(directory));
String uriPrefix = "file://" + directory.getAbsolutePath();
String docUri = uriPrefix + "/src/main/java/org/test/SpecialConfiguration.java";
String docUri = directory.toPath().resolve("src/main/java/org/test/SpecialConfiguration.java").toUri().toString();
indexer.assertDocumentSymbols(docUri,
symbol("@Configuration", "@+ 'specialConfiguration' (@Configuration <: @Component) SpecialConfiguration"),
@@ -92,8 +91,8 @@ public class SpringIndexerBeansTest {
File directory = new File(ProjectsHarness.class.getResource("/test-projects/test-annotation-indexing-beans/").toURI());
indexer.initialize(indexer.wsFolder(directory));
String uriPrefix = "file://" + directory.getAbsolutePath();
indexer.assertDocumentSymbols(uriPrefix + "/src/main/java/org/test/SimpleComponent.java",
String docUri = directory.toPath().resolve("src/main/java/org/test/SimpleComponent.java").toUri().toString();
indexer.assertDocumentSymbols(docUri,
symbol("@Component", "@+ 'simpleComponent' (@Component) SimpleComponent")
);
}
@@ -103,8 +102,7 @@ public class SpringIndexerBeansTest {
File directory = new File(ProjectsHarness.class.getResource("/test-projects/test-annotation-indexing-beans/").toURI());
indexer.initialize(indexer.wsFolder(directory));
String uriPrefix = "file://" + directory.getAbsolutePath();
String docUri = uriPrefix + "/src/main/java/org/test/SimpleController.java";
String docUri = directory.toPath().resolve("src/main/java/org/test/SimpleController.java").toUri().toString();
indexer.assertDocumentSymbols(docUri,
symbol("@Controller", "@+ 'simpleController' (@Controller <: @Component) SimpleController")
);
@@ -115,8 +113,7 @@ public class SpringIndexerBeansTest {
File directory = new File(ProjectsHarness.class.getResource("/test-projects/test-annotation-indexing-beans/").toURI());
indexer.initialize(indexer.wsFolder(directory));
String uriPrefix = "file://" + directory.getAbsolutePath();
String docUri = uriPrefix + "/src/main/java/org/test/SimpleRestController.java";
String docUri = directory.toPath().resolve("src/main/java/org/test/SimpleRestController.java").toUri().toString();
indexer.assertDocumentSymbols(docUri,
symbol("@RestController", "@+ 'simpleRestController' (@RestController <: @Controller, @Component) SimpleRestController")
);

View File

@@ -50,8 +50,8 @@ public class SpringIndexerFunctionBeansTest {
File directory = new File(ProjectsHarness.class.getResource("/test-projects/test-annotation-indexing-beans/").toURI());
indexer.initialize(indexer.wsFolder(directory));
String uriPrefix = "file://" + directory.getAbsolutePath();
indexer.assertDocumentSymbols(uriPrefix + "/src/main/java/org/test/FunctionClass.java",
String docUri = directory.toPath().resolve("src/main/java/org/test/FunctionClass.java").toUri().toString();
indexer.assertDocumentSymbols(docUri,
symbol("@Configuration", "@+ 'functionClass' (@Configuration <: @Component) FunctionClass"),
symbol("@Bean", "@> 'uppercase' (@Bean) Function<String,String>")
);
@@ -63,8 +63,8 @@ public class SpringIndexerFunctionBeansTest {
File directory = new File(ProjectsHarness.class.getResource("/test-projects/test-annotation-indexing-beans/").toURI());
indexer.initialize(indexer.wsFolder(directory));
String uriPrefix = "file://" + directory.getAbsolutePath();
indexer.assertDocumentSymbols(uriPrefix + "/src/main/java/org/test/ScannedFunctionClass.java",
String docUri = directory.toPath().resolve("src/main/java/org/test/ScannedFunctionClass.java").toUri().toString();
indexer.assertDocumentSymbols(docUri,
symbol("ScannedFunctionClass", "@> 'scannedFunctionClass' Function<String,String>")
);
}
@@ -75,8 +75,8 @@ public class SpringIndexerFunctionBeansTest {
File directory = new File(ProjectsHarness.class.getResource("/test-projects/test-annotation-indexing-beans/").toURI());
indexer.initialize(indexer.wsFolder(directory));
String uriPrefix = "file://" + directory.getAbsolutePath();
indexer.assertDocumentSymbols(uriPrefix + "/src/main/java/org/test/FunctionFromSpecializedClass.java",
String docUri = directory.toPath().resolve("src/main/java/org/test/FunctionFromSpecializedClass.java").toUri().toString();
indexer.assertDocumentSymbols(docUri,
symbol("FunctionFromSpecializedClass", "@> 'functionFromSpecializedClass' Function<String,String>")
);
}
@@ -87,8 +87,8 @@ public class SpringIndexerFunctionBeansTest {
File directory = new File(ProjectsHarness.class.getResource("/test-projects/test-annotation-indexing-beans/").toURI());
indexer.initialize(indexer.wsFolder(directory));
String uriPrefix = "file://" + directory.getAbsolutePath();
indexer.assertDocumentSymbols(uriPrefix + "/src/main/java/org/test/FunctionFromSpecializedInterface.java",
String docUri = directory.toPath().resolve("src/main/java/org/test/FunctionFromSpecializedInterface.java").toUri().toString();
indexer.assertDocumentSymbols(docUri,
symbol("FunctionFromSpecializedInterface", "@> 'functionFromSpecializedInterface' Function<String,String>")
);
}
@@ -99,8 +99,8 @@ public class SpringIndexerFunctionBeansTest {
File directory = new File(ProjectsHarness.class.getResource("/test-projects/test-annotation-indexing-beans/").toURI());
indexer.initialize(indexer.wsFolder(directory));
String uriPrefix = "file://" + directory.getAbsolutePath();
indexer.assertDocumentSymbols(uriPrefix + "/src/main/java/org/test/SpecializedFunctionClass.java");
String docUri = directory.toPath().resolve("src/main/java/org/test/SpecializedFunctionClass.java").toUri().toString();
indexer.assertDocumentSymbols(docUri);
}
@Test
@@ -109,8 +109,8 @@ public class SpringIndexerFunctionBeansTest {
File directory = new File(ProjectsHarness.class.getResource("/test-projects/test-annotation-indexing-beans/").toURI());
indexer.initialize(indexer.wsFolder(directory));
String uriPrefix = "file://" + directory.getAbsolutePath();
indexer.assertDocumentSymbols(uriPrefix + "/src/main/java/org/test/SpecializedFunctionInterface.java");
String docUri = directory.toPath().resolve("src/main/java/org/test/SpecializedFunctionInterface.java").toUri().toString();
indexer.assertDocumentSymbols(docUri);
}
@Test
@@ -119,8 +119,8 @@ public class SpringIndexerFunctionBeansTest {
File directory = new File(ProjectsHarness.class.getResource("/test-projects/test-annotation-indexing-beans/").toURI());
indexer.initialize(indexer.wsFolder(directory));
String uriPrefix = "file://" + directory.getAbsolutePath();
indexer.assertDocumentSymbols(uriPrefix + "/src/main/java/org/test/LoopedFunctionClass.java");
String docUri = directory.toPath().resolve("src/main/java/org/test/LoopedFunctionClass.java").toUri().toString();
indexer.assertDocumentSymbols(docUri);
}
////////////////////////////////

View File

@@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2017 Pivotal, Inc.
* Copyright (c) 2017, 2018 Pivotal, Inc.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -47,8 +47,8 @@ public class ConditionalsLiveHoverTest {
File directory = new File(
ProjectsHarness.class.getResource("/test-projects/test-conditionals-live-hover/").toURI());
String docUri = "file://" + directory.getAbsolutePath()
+ "/src/main/java/example/ConditionalOnMissingBeanConfig.java";
String docUri = directory.toPath().resolve("src/main/java/example/ConditionalOnMissingBeanConfig.java").toUri()
.toString();
harness.intialize(directory);
@@ -64,7 +64,8 @@ public class ConditionalsLiveHoverTest {
File directory = new File(
ProjectsHarness.class.getResource("/test-projects/test-conditionals-live-hover/").toURI());
String docUri = "file://" + directory.getAbsolutePath() + "/src/main/java/example/ConditionalOnBeanConfig.java";
String docUri = directory.toPath().resolve("src/main/java/example/ConditionalOnBeanConfig.java").toUri()
.toString();
// Build a mock running boot app
mockAppProvider.builder().isSpringBootApp(true).port("1111").processId("22022").host("cfapps.io")
@@ -77,9 +78,8 @@ public class ConditionalsLiveHoverTest {
Editor editor = harness.newEditorFromFileUri(docUri, LanguageId.JAVA);
editor.assertHoverContains("@ConditionalOnBean",
"@ConditionalOnBean (types: example.Hello; SearchStrategy: all) found bean 'missing'\n" +
"\n" +
"Process [PID=22022, name=`test-conditionals-live-hover`]");
"@ConditionalOnBean (types: example.Hello; SearchStrategy: all) found bean 'missing'\n" + "\n"
+ "Process [PID=22022, name=`test-conditionals-live-hover`]");
}
@Test
@@ -87,8 +87,8 @@ public class ConditionalsLiveHoverTest {
File directory = new File(
ProjectsHarness.class.getResource("/test-projects/test-conditionals-live-hover/").toURI());
String docUri = "file://" + directory.getAbsolutePath()
+ "/src/main/java/example/ConditionalOnMissingBeanConfig.java";
String docUri = directory.toPath().resolve("src/main/java/example/ConditionalOnMissingBeanConfig.java").toUri()
.toString();
// Build a mock running boot app
mockAppProvider.builder().isSpringBootApp(true).port("1111").processId("22022").host("cfapps.io")
@@ -100,9 +100,9 @@ public class ConditionalsLiveHoverTest {
harness.intialize(directory);
Editor editor = harness.newEditorFromFileUri(docUri, LanguageId.JAVA);
editor.assertHoverContains("@ConditionalOnMissingBean", "@ConditionalOnMissingBean (types: example.Hello; SearchStrategy: all) did not find any beans\n"+
"\n" +
"Process [PID=22022, name=`test-conditionals-live-hover`]");
editor.assertHoverContains("@ConditionalOnMissingBean",
"@ConditionalOnMissingBean (types: example.Hello; SearchStrategy: all) did not find any beans\n" + "\n"
+ "Process [PID=22022, name=`test-conditionals-live-hover`]");
}
@@ -111,7 +111,8 @@ public class ConditionalsLiveHoverTest {
File directory = new File(
ProjectsHarness.class.getResource("/test-projects/test-conditionals-live-hover/").toURI());
String docUri = "file://" + directory.getAbsolutePath() + "/src/main/java/example/MultipleConditionals.java";
String docUri = directory.toPath().resolve("src/main/java/example/MultipleConditionals.java").toUri()
.toString();
// Build a mock running boot app
mockAppProvider.builder().isSpringBootApp(true).port("1111").processId("22022").host("cfapps.io")
@@ -124,26 +125,24 @@ public class ConditionalsLiveHoverTest {
Editor editor = harness.newEditorFromFileUri(docUri, LanguageId.JAVA);
editor.assertHoverContains("@ConditionalOnBean", "@ConditionalOnBean (types: example.Hello; SearchStrategy: all) found beans 'hi', 'missing'\n" +
"\n" +
"Process [PID=22022, name=`test-conditionals-live-hover`]");
editor.assertHoverContains("@ConditionalOnBean",
"@ConditionalOnBean (types: example.Hello; SearchStrategy: all) found beans 'hi', 'missing'\n" + "\n"
+ "Process [PID=22022, name=`test-conditionals-live-hover`]");
editor.assertHoverContains("@ConditionalOnWebApplication", "@ConditionalOnWebApplication (required) found StandardServletEnvironment\n"+
"\n" +
"Process [PID=22022, name=`test-conditionals-live-hover`]");
editor.assertHoverContains("@ConditionalOnWebApplication",
"@ConditionalOnWebApplication (required) found StandardServletEnvironment\n" + "\n"
+ "Process [PID=22022, name=`test-conditionals-live-hover`]");
editor.assertHoverContains("@ConditionalOnJava(value=ConditionalOnJava.JavaVersion.EIGHT)",
"@ConditionalOnJava (1.8 or newer) found 1.8\n" +
"\n" +
"Process [PID=22022, name=`test-conditionals-live-hover`]");
"@ConditionalOnJava (1.8 or newer) found 1.8\n" + "\n"
+ "Process [PID=22022, name=`test-conditionals-live-hover`]");
editor.assertHoverContains("@ConditionalOnMissingClass", "@ConditionalOnClass found required class; @ConditionalOnMissingClass did not find unwanted class\n" +
"\n" +
"Process [PID=22022, name=`test-conditionals-live-hover`]");
editor.assertHoverContains("@ConditionalOnMissingClass",
"@ConditionalOnClass found required class; @ConditionalOnMissingClass did not find unwanted class\n"
+ "\n" + "Process [PID=22022, name=`test-conditionals-live-hover`]");
editor.assertHoverContains("@ConditionalOnExpression", "@ConditionalOnExpression (#{true}) resulted in true\n" +
"\n" +
"Process [PID=22022, name=`test-conditionals-live-hover`]");
editor.assertHoverContains("@ConditionalOnExpression", "@ConditionalOnExpression (#{true}) resulted in true\n"
+ "\n" + "Process [PID=22022, name=`test-conditionals-live-hover`]");
}
@Test
@@ -152,8 +151,8 @@ public class ConditionalsLiveHoverTest {
// Test that live hover shows information for multiple app instances
File directory = new File(
ProjectsHarness.class.getResource("/test-projects/test-conditionals-live-hover/").toURI());
String docUri = "file://" + directory.getAbsolutePath()
+ "/src/main/java/example/ConditionalOnMissingBeanConfig.java";
String docUri = directory.toPath().resolve("src/main/java/example/ConditionalOnMissingBeanConfig.java").toUri()
.toString();
// Build a mock running boot app
mockAppProvider.builder().isSpringBootApp(true).port("1000").processId("70000").host("cfapps.io")
@@ -178,22 +177,13 @@ public class ConditionalsLiveHoverTest {
Editor editor = harness.newEditorFromFileUri(docUri, LanguageId.JAVA);
editor.assertHoverContains("@ConditionalOnMissingBean", "@ConditionalOnMissingBean (types: example.Hello; SearchStrategy: all) did not find any beans\n" +
"\n" +
"Process [PID=70000, name=`test-conditionals-live-hover`]\n" +
"\n" +
"---\n" +
"\n" +
"@ConditionalOnMissingBean (types: example.Hello; SearchStrategy: all) did not find any beans\n" +
"\n" +
"Process [PID=80000, name=`test-conditionals-live-hover`]\n" +
"\n" +
"---\n" +
"\n" +
"@ConditionalOnMissingBean (types: example.Hello; SearchStrategy: all) did not find any beans\n" +
"\n" +
"Process [PID=90000, name=`test-conditionals-live-hover`]");
editor.assertHoverContains("@ConditionalOnMissingBean",
"@ConditionalOnMissingBean (types: example.Hello; SearchStrategy: all) did not find any beans\n" + "\n"
+ "Process [PID=70000, name=`test-conditionals-live-hover`]\n" + "\n" + "---\n" + "\n"
+ "@ConditionalOnMissingBean (types: example.Hello; SearchStrategy: all) did not find any beans\n"
+ "\n" + "Process [PID=80000, name=`test-conditionals-live-hover`]\n" + "\n" + "---\n" + "\n"
+ "@ConditionalOnMissingBean (types: example.Hello; SearchStrategy: all) did not find any beans\n"
+ "\n" + "Process [PID=90000, name=`test-conditionals-live-hover`]");
}
@@ -201,19 +191,20 @@ public class ConditionalsLiveHoverTest {
public void testMultipleConditionalsSameMethod() throws Exception {
// Tests something like this:
// @Bean
// @ConditionalOnBean
// @ConditionalOnWebApplication
// @ConditionalOnJava(value=ConditionalOnJava.JavaVersion.EIGHT)
// @ConditionalOnMissingClass
// @ConditionalOnExpression
// public Hello hi() {
// return null;
// }
// @Bean
// @ConditionalOnBean
// @ConditionalOnWebApplication
// @ConditionalOnJava(value=ConditionalOnJava.JavaVersion.EIGHT)
// @ConditionalOnMissingClass
// @ConditionalOnExpression
// public Hello hi() {
// return null;
// }
File directory = new File(
ProjectsHarness.class.getResource("/test-projects/test-conditionals-live-hover/").toURI());
String docUri = "file://" + directory.getAbsolutePath() + "/src/main/java/example/MultipleConditionals.java";
String docUri = directory.toPath().resolve("src/main/java/example/MultipleConditionals.java").toUri()
.toString();
// Build a mock running boot app
mockAppProvider.builder().isSpringBootApp(true).port("1000").processId("70000").host("cfapps.io")
@@ -226,7 +217,8 @@ public class ConditionalsLiveHoverTest {
Editor editor = harness.newEditorFromFileUri(docUri, LanguageId.JAVA);
// IMPORTANT: test EXACT text to ensure that multiple conditionals on the same method do not show
// IMPORTANT: test EXACT text to ensure that multiple conditionals on the same
// method do not show
// up while
// hovering over only one of the conditional annotations
editor.assertHoverExactText("@ConditionalOnBean",
@@ -238,7 +230,8 @@ public class ConditionalsLiveHoverTest {
+ "Process [PID=70000, name=`test-conditionals-live-hover`]");
editor.assertHoverExactText("@ConditionalOnJava(value=ConditionalOnJava.JavaVersion.EIGHT)",
"@ConditionalOnJava (1.8 or newer) found 1.8\n" + "\n" + "Process [PID=70000, name=`test-conditionals-live-hover`]");
"@ConditionalOnJava (1.8 or newer) found 1.8\n" + "\n"
+ "Process [PID=70000, name=`test-conditionals-live-hover`]");
editor.assertHoverExactText("@ConditionalOnMissingClass",
"@ConditionalOnClass found required class; @ConditionalOnMissingClass did not find unwanted class\n"
@@ -258,8 +251,8 @@ public class ConditionalsLiveHoverTest {
// and not any of the other ones
File directory = new File(
ProjectsHarness.class.getResource("/test-projects/test-conditionals-live-hover/").toURI());
String docUri = "file://" + directory.getAbsolutePath()
+ "/src/main/java/example/MultipleConditionalsPT152535713.java";
String docUri = directory.toPath().resolve("src/main/java/example/MultipleConditionalsPT152535713.java").toUri()
.toString();
// Build a mock running boot app
mockAppProvider.builder().isSpringBootApp(true).port("1000").processId("70000").host("cfapps.io")
@@ -277,7 +270,8 @@ public class ConditionalsLiveHoverTest {
+ "Process [PID=70000, name=`test-conditionals-live-hover`]");
editor.assertHoverExactText("@ConditionalOnJava(value=ConditionalOnJava.JavaVersion.EIGHT)",
"@ConditionalOnJava (1.8 or newer) found 1.8\n" + "\n" + "Process [PID=70000, name=`test-conditionals-live-hover`]");
"@ConditionalOnJava (1.8 or newer) found 1.8\n" + "\n"
+ "Process [PID=70000, name=`test-conditionals-live-hover`]");
// Test that the hovers dont have extra information of the other conditionals:
Hover hover = editor.getHover("@ConditionalOnWebApplication");
@@ -294,7 +288,8 @@ public class ConditionalsLiveHoverTest {
File directory = new File(
ProjectsHarness.class.getResource("/test-projects/test-conditionals-live-hover/").toURI());
String docUri = "file://" + directory.getAbsolutePath() + "/src/main/java/example/MultipleConditionals.java";
String docUri = directory.toPath().resolve("src/main/java/example/MultipleConditionals.java").toUri()
.toString();
// Build a mock running boot app
mockAppProvider.builder().isSpringBootApp(true).port("1111").processId("22022").host("cfapps.io")
@@ -305,33 +300,22 @@ public class ConditionalsLiveHoverTest {
harness.intialize(directory);
String content = "package example;\n" +
"\n" +
"import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;\n" +
"import org.springframework.boot.autoconfigure.condition.ConditionalOnExpression;\n" +
"import org.springframework.boot.autoconfigure.condition.ConditionalOnJava;\n" +
"import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;\n" +
"import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingClass;\n" +
"import org.springframework.boot.autoconfigure.condition.ConditionalOnNotWebApplication;\n" +
"import org.springframework.boot.autoconfigure.condition.ConditionalOnWebApplication;\n" +
"import org.springframework.context.annotation.Bean;\n" +
"import org.springframework.context.annotation.Configuration;\n" +
"\n" +
"@Configuration\n" +
"public class MultipleConditionals {\n" +
"\n" +
" @Bean\n" +
" @ConditionalOnBean\n" +
" @ConditionalOnWebApplication\n" +
" @ConditionalOnJava(value=ConditionalOnJava.JavaVersion.EIGHT)\n" +
" @ConditionalOnMissingClass\n" +
" @ConditionalOnExpression\n" +
" public Hello hi() {\n" +
" return null;\n" +
" }\n" +
"}";
String content = "package example;\n" + "\n"
+ "import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;\n"
+ "import org.springframework.boot.autoconfigure.condition.ConditionalOnExpression;\n"
+ "import org.springframework.boot.autoconfigure.condition.ConditionalOnJava;\n"
+ "import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;\n"
+ "import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingClass;\n"
+ "import org.springframework.boot.autoconfigure.condition.ConditionalOnNotWebApplication;\n"
+ "import org.springframework.boot.autoconfigure.condition.ConditionalOnWebApplication;\n"
+ "import org.springframework.context.annotation.Bean;\n"
+ "import org.springframework.context.annotation.Configuration;\n" + "\n" + "@Configuration\n"
+ "public class MultipleConditionals {\n" + "\n" + " @Bean\n" + " @ConditionalOnBean\n"
+ " @ConditionalOnWebApplication\n" + " @ConditionalOnJava(value=ConditionalOnJava.JavaVersion.EIGHT)\n"
+ " @ConditionalOnMissingClass\n" + " @ConditionalOnExpression\n" + " public Hello hi() {\n"
+ " return null;\n" + " }\n" + "}";
Editor editor = harness.newEditor( LanguageId.JAVA, content, docUri);
Editor editor = harness.newEditor(LanguageId.JAVA, content, docUri);
editor.assertHighlights("@ConditionalOnBean", "@ConditionalOnWebApplication",
"@ConditionalOnJava(value=ConditionalOnJava.JavaVersion.EIGHT)", "@ConditionalOnMissingClass",
@@ -344,39 +328,28 @@ public class ConditionalsLiveHoverTest {
File directory = new File(
ProjectsHarness.class.getResource("/test-projects/test-conditionals-live-hover/").toURI());
String docUri = "file://" + directory.getAbsolutePath() + "/src/main/java/example/MultipleConditionals.java";
String docUri = directory.toPath().resolve("src/main/java/example/MultipleConditionals.java").toUri()
.toString();
// Build a mock running boot app
mockAppProvider.builder().isSpringBootApp(true).port("1111").processId("22022").host("cfapps.io")
.processName("test-conditionals-live-hover")
.liveConditionalsJson(
"{\"negativeMatches\": {\n" +
" \"MyConditionalComponent\": {\n" +
" \"notMatched\": [\n" +
" {\n" +
" \"condition\": \"OnClassCondition\",\n" +
" \"message\": \"@ConditionalOnClass did not find required class 'java.lang.String2'\"\n" +
" }\n" +
" ],\n" +
" \"matched\": []\n" +
" }\n"
+ "}\n"
+ "}")
.liveConditionalsJson("{\"negativeMatches\": {\n" + " \"MyConditionalComponent\": {\n"
+ " \"notMatched\": [\n" + " {\n"
+ " \"condition\": \"OnClassCondition\",\n"
+ " \"message\": \"@ConditionalOnClass did not find required class 'java.lang.String2'\"\n"
+ " }\n" + " ],\n" + " \"matched\": []\n" + " }\n"
+ "}\n" + "}")
.build();
harness.intialize(directory);
String content = "package com.example;\n" +
"\n" +
"import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;\n" +
"import org.springframework.stereotype.Component;\n" +
"\n" +
"@Component\n" +
"@ConditionalOnClass(name=\"java.lang.String2\")\n" +
"public class MyConditionalComponent {\n" +
"}";
String content = "package com.example;\n" + "\n"
+ "import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;\n"
+ "import org.springframework.stereotype.Component;\n" + "\n" + "@Component\n"
+ "@ConditionalOnClass(name=\"java.lang.String2\")\n" + "public class MyConditionalComponent {\n" + "}";
Editor editor = harness.newEditor( LanguageId.JAVA, content, docUri);
Editor editor = harness.newEditor(LanguageId.JAVA, content, docUri);
editor.assertHighlights("@ConditionalOnClass(name=\"java.lang.String2\")");
@@ -387,43 +360,32 @@ public class ConditionalsLiveHoverTest {
File directory = new File(
ProjectsHarness.class.getResource("/test-projects/test-conditionals-live-hover/").toURI());
String docUri = "file://" + directory.getAbsolutePath() + "/src/main/java/example/MultipleConditionals.java";
String docUri = directory.toPath().resolve("src/main/java/example/MultipleConditionals.java").toUri()
.toString();
// Build a mock running boot app
mockAppProvider.builder().isSpringBootApp(true).port("1111").processId("67950").host("cfapps.io")
.processName("test-conditionals-live-hover")
.liveConditionalsJson(
"{\"negativeMatches\": {\n" +
" \"MyConditionalComponent\": {\n" +
" \"notMatched\": [\n" +
" {\n" +
" \"condition\": \"OnClassCondition\",\n" +
" \"message\": \"@ConditionalOnClass did not find required class 'java.lang.String2'\"\n" +
" }\n" +
" ],\n" +
" \"matched\": []\n" +
" }\n"
+ "}\n"
+ "}")
.liveConditionalsJson("{\"negativeMatches\": {\n" + " \"MyConditionalComponent\": {\n"
+ " \"notMatched\": [\n" + " {\n"
+ " \"condition\": \"OnClassCondition\",\n"
+ " \"message\": \"@ConditionalOnClass did not find required class 'java.lang.String2'\"\n"
+ " }\n" + " ],\n" + " \"matched\": []\n" + " }\n"
+ "}\n" + "}")
.build();
harness.intialize(directory);
String content = "package com.example;\n" +
"\n" +
"import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;\n" +
"import org.springframework.stereotype.Component;\n" +
"\n" +
"@Component\n" +
"@ConditionalOnClass(name=\"java.lang.String2\")\n" +
"public class MyConditionalComponent {\n" +
"}";
String content = "package com.example;\n" + "\n"
+ "import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;\n"
+ "import org.springframework.stereotype.Component;\n" + "\n" + "@Component\n"
+ "@ConditionalOnClass(name=\"java.lang.String2\")\n" + "public class MyConditionalComponent {\n" + "}";
Editor editor = harness.newEditor( LanguageId.JAVA, content, docUri);
Editor editor = harness.newEditor(LanguageId.JAVA, content, docUri);
editor.assertHoverContains("@ConditionalOnClass(name=\"java.lang.String2\")", "@ConditionalOnClass did not find required class 'java.lang.String2'\n" +
"\n" +
"Process [PID=67950, name=`test-conditionals-live-hover`]");
editor.assertHoverContains("@ConditionalOnClass(name=\"java.lang.String2\")",
"@ConditionalOnClass did not find required class 'java.lang.String2'\n" + "\n"
+ "Process [PID=67950, name=`test-conditionals-live-hover`]");
}
}

View File

@@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2017 Pivotal, Inc.
* Copyright (c) 2017, 2018 Pivotal, Inc.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -13,6 +13,7 @@ package org.springframework.ide.vscode.boot.java.livehover.test;
import static org.junit.Assert.assertTrue;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.time.Duration;
import org.junit.Before;
@@ -330,7 +331,7 @@ public class BeanInjectedIntoHoverProviderTest {
"\n" +
"- Bean: myController \n" +
" Type: `hello.MyController` \n" +
" Resource: `hello/MyController.class`"
" Resource: `" + Paths.get("hello/MyController.class") + "`"
);
}

View File

@@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2017 Pivotal, Inc.
* Copyright (c) 2017, 2018 Pivotal, Inc.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -12,6 +12,7 @@ package org.springframework.ide.vscode.boot.java.livehover.test;
import static org.junit.Assert.assertTrue;
import java.nio.file.Paths;
import java.time.Duration;
import org.junit.Before;
@@ -527,7 +528,7 @@ public class ComponentInjectionsHoverProviderTest {
"\n" +
"- Bean: dependencyA \n" +
" Type: `com.example.DependencyA` \n" +
" Resource: `com/example/DependencyA.class`\n" +
" Resource: `" + Paths.get("com/example/DependencyA.class") + "`\n" +
"- Bean: dependencyB \n" +
" Type: `com.example.DependencyB` \n" +
" Resource: `com/example/DependencyB.class`"

View File

@@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2017 Pivotal, Inc.
* Copyright (c) 2017, 2018 Pivotal, Inc.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -45,8 +45,8 @@ public class RequestMappingLiveHoverTest {
File directory = new File(
ProjectsHarness.class.getResource("/test-projects/test-request-mapping-live-hover/").toURI());
String docUri = "file://" +directory.getAbsolutePath() + "/src/main/java/example/HelloWorldController.java";
String docUri = directory.toPath().resolve("src/main/java/example/HelloWorldController.java").toUri()
.toString();
// Build a mock running boot app
mockAppProvider.builder()
@@ -76,7 +76,8 @@ public class RequestMappingLiveHoverTest {
File directory = new File(
ProjectsHarness.class.getResource("/test-projects/test-request-mapping-live-hover/").toURI());
String docUri = "file://" +directory.getAbsolutePath() + "/src/main/java/example/RestApi.java";
String docUri = directory.toPath().resolve("src/main/java/example/RestApi.java").toUri()
.toString();
// Build a mock running boot app
@@ -112,7 +113,8 @@ public class RequestMappingLiveHoverTest {
File directory = new File(
ProjectsHarness.class.getResource("/test-projects/test-request-mapping-live-hover/").toURI());
String docUri = "file://" + directory.getAbsolutePath() + "/src/main/java/example/RestApi.java";
String docUri = directory.toPath().resolve("src/main/java/example/RestApi.java").toUri()
.toString();
harness.intialize(directory);
@@ -124,7 +126,8 @@ public class RequestMappingLiveHoverTest {
editorWithMethodLiveHover.assertNoHover("@RequestMapping(\"/goodbye\")");
docUri = "file://" + directory.getAbsolutePath() + "/src/main/java/example/HelloWorldController.java";
docUri = directory.toPath().resolve("src/main/java/example/HelloWorldController.java").toUri()
.toString();
Editor editorWithTypeLiveHover = harness.newEditorFromFileUri(docUri, LanguageId.JAVA);
editorWithTypeLiveHover.assertNoHover("@RequestMapping(\"/hello-world\")");
@@ -136,7 +139,8 @@ public class RequestMappingLiveHoverTest {
File directory = new File(
ProjectsHarness.class.getResource("/test-projects/test-request-mapping-live-hover/").toURI());
String docUri = "file://" +directory.getAbsolutePath() + "/src/main/java/example/RestApi.java";
String docUri = directory.toPath().resolve("src/main/java/example/RestApi.java").toUri()
.toString();
// Build a mock running boot app
@@ -182,7 +186,8 @@ public class RequestMappingLiveHoverTest {
File directory = new File(
ProjectsHarness.class.getResource("/test-projects/test-request-mapping-live-hover/").toURI());
String docUri = "file://" +directory.getAbsolutePath() + "/src/main/java/example/RestApi.java";
String docUri = directory.toPath().resolve("src/main/java/example/RestApi.java").toUri()
.toString();
// Build a mock running boot app
@@ -224,7 +229,8 @@ public class RequestMappingLiveHoverTest {
File directory = new File(
ProjectsHarness.class.getResource("/test-projects/test-request-mapping-live-hover/").toURI());
String docUri = "file://" +directory.getAbsolutePath() + "/src/main/java/example/RestApi.java";
String docUri = directory.toPath().resolve("src/main/java/example/RestApi.java").toUri()
.toString();
// Build a mock running boot app
@@ -267,7 +273,8 @@ public class RequestMappingLiveHoverTest {
File directory = new File(
ProjectsHarness.class.getResource("/test-projects/test-request-mapping-live-hover/").toURI());
String docUri = "file://" +directory.getAbsolutePath() + "/src/main/java/example/RestApi.java";
String docUri = directory.toPath().resolve("src/main/java/example/RestApi.java").toUri()
.toString();
// Build a mock running boot app
@@ -314,7 +321,8 @@ public class RequestMappingLiveHoverTest {
File directory = new File(
ProjectsHarness.class.getResource("/test-projects/test-request-mapping-live-hover/").toURI());
String docUri = "file://" +directory.getAbsolutePath() + "/src/main/java/example/RestApi.java";
String docUri = directory.toPath().resolve("src/main/java/example/RestApi.java").toUri()
.toString();
// Build a mock running boot app
@@ -364,7 +372,8 @@ public class RequestMappingLiveHoverTest {
File directory = new File(
ProjectsHarness.class.getResource("/test-projects/test-request-mapping-live-hover/").toURI());
String docUri = "file://" +directory.getAbsolutePath() + "/src/main/java/example/RestApi.java";
String docUri = directory.toPath().resolve("src/main/java/example/RestApi.java").toUri()
.toString();
// Build a mock running boot app
@@ -414,7 +423,8 @@ public class RequestMappingLiveHoverTest {
File directory = new File(
ProjectsHarness.class.getResource("/test-projects/test-request-mapping-live-hover/").toURI());
String docUri = "file://" +directory.getAbsolutePath() + "/src/main/java/example/RestApi.java";
String docUri = directory.toPath().resolve("src/main/java/example/RestApi.java").toUri()
.toString();
// Build a mock running boot app
@@ -465,7 +475,8 @@ public class RequestMappingLiveHoverTest {
File directory = new File(
ProjectsHarness.class.getResource("/test-projects/test-request-mapping-live-hover/").toURI());
String docUri = "file://" +directory.getAbsolutePath() + "/src/main/java/example/RestApi.java";
String docUri = directory.toPath().resolve("src/main/java/example/RestApi.java").toUri()
.toString();
// Build a mock running boot app
@@ -516,7 +527,8 @@ public class RequestMappingLiveHoverTest {
File directory = new File(
ProjectsHarness.class.getResource("/test-projects/test-request-mapping-live-hover/").toURI());
String docUri = "file://" +directory.getAbsolutePath() + "/src/main/java/example/RestApi.java";
String docUri = directory.toPath().resolve("src/main/java/example/RestApi.java").toUri()
.toString();
// Build a mock running boot app
@@ -565,7 +577,8 @@ public class RequestMappingLiveHoverTest {
File directory = new File(
ProjectsHarness.class.getResource("/test-projects/test-request-mapping-live-hover/").toURI());
String docUri = "file://" +directory.getAbsolutePath() + "/src/main/java/example/RestApi.java";
String docUri = directory.toPath().resolve("src/main/java/example/RestApi.java").toUri()
.toString();
// Build a mock running boot app
@@ -614,7 +627,8 @@ public class RequestMappingLiveHoverTest {
File directory = new File(
ProjectsHarness.class.getResource("/test-projects/test-request-mapping-live-hover/").toURI());
String docUri = "file://" +directory.getAbsolutePath() + "/src/main/java/example/RestApi.java";
String docUri = directory.toPath().resolve("src/main/java/example/RestApi.java").toUri()
.toString();
// Build a mock running boot app
@@ -663,7 +677,8 @@ public class RequestMappingLiveHoverTest {
File directory = new File(
ProjectsHarness.class.getResource("/test-projects/test-request-mapping-live-hover/").toURI());
String docUri = "file://" +directory.getAbsolutePath() + "/src/main/java/example/RestApi.java";
String docUri = directory.toPath().resolve("src/main/java/example/RestApi.java").toUri()
.toString();
// Build three different instances of the same app running on different ports with different process IDs
mockAppProvider.builder()
@@ -727,7 +742,8 @@ public class RequestMappingLiveHoverTest {
File directory = new File(
ProjectsHarness.class.getResource("/test-projects/test-request-mapping-live-hover/").toURI());
String docUri = "file://" +directory.getAbsolutePath() + "/src/main/java/example/RestApi.java";
String docUri = directory.toPath().resolve("src/main/java/example/RestApi.java").toUri()
.toString();
// Build a mock running boot app
@@ -759,7 +775,8 @@ public class RequestMappingLiveHoverTest {
File directory = new File(
ProjectsHarness.class.getResource("/test-projects/test-request-mapping-live-hover/").toURI());
String docUri = "file://" +directory.getAbsolutePath() + "/src/main/java/example/InnerClassController.java";
String docUri = directory.toPath().resolve("src/main/java/example/InnerClassController.java").toUri()
.toString();
// Build a mock running boot app

View File

@@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2017 Pivotal, Inc.
* Copyright (c) 2017, 2018 Pivotal, Inc.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -41,10 +41,10 @@ public class RequestMappingSymbolProviderTest {
File directory = new File(ProjectsHarness.class.getResource("/test-projects/test-request-mapping-symbols/").toURI());
String uriPrefix = "file://" + directory.getAbsolutePath();
List<? extends SymbolInformation> symbols = harness.getServer().getSpringIndexer().getSymbols(uriPrefix + "/src/main/java/org/test/SimpleMappingClass.java");
String docUri = directory.toPath().resolve("src/main/java/org/test/SimpleMappingClass.java").toUri().toString();
List<? extends SymbolInformation> symbols = harness.getServer().getSpringIndexer().getSymbols(docUri);
assertEquals(1, symbols.size());
assertTrue(containsSymbol(symbols, "@/greeting", uriPrefix + "/src/main/java/org/test/SimpleMappingClass.java", 6, 1, 6, 29));
assertTrue(containsSymbol(symbols, "@/greeting", docUri, 6, 1, 6, 29));
}
@Test
@@ -53,10 +53,10 @@ public class RequestMappingSymbolProviderTest {
File directory = new File(ProjectsHarness.class.getResource("/test-projects/test-request-mapping-symbols/").toURI());
String uriPrefix = "file://" + directory.getAbsolutePath();
List<? extends SymbolInformation> symbols = harness.getServer().getSpringIndexer().getSymbols(uriPrefix + "/src/main/java/org/test/ParentMappingClass.java");
String docUri = directory.toPath().resolve("src/main/java/org/test/ParentMappingClass.java").toUri().toString();
List<? extends SymbolInformation> symbols = harness.getServer().getSpringIndexer().getSymbols(docUri);
assertEquals(1, symbols.size());
assertTrue(containsSymbol(symbols, "@/parent/greeting -- GET", uriPrefix + "/src/main/java/org/test/ParentMappingClass.java", 8, 1, 8, 47));
assertTrue(containsSymbol(symbols, "@/parent/greeting -- GET", docUri, 8, 1, 8, 47));
}
@Test
@@ -65,10 +65,10 @@ public class RequestMappingSymbolProviderTest {
File directory = new File(ProjectsHarness.class.getResource("/test-projects/test-request-mapping-symbols/").toURI());
String uriPrefix = "file://" + directory.getAbsolutePath();
List<? extends SymbolInformation> symbols = harness.getServer().getSpringIndexer().getSymbols(uriPrefix + "/src/main/java/org/test/ParentMappingClass2.java");
String docUri = directory.toPath().resolve("src/main/java/org/test/ParentMappingClass2.java").toUri().toString();
List<? extends SymbolInformation> symbols = harness.getServer().getSpringIndexer().getSymbols(docUri);
assertEquals(1, symbols.size());
assertTrue(containsSymbol(symbols, "@/parent2 -- GET,POST,DELETE", uriPrefix + "/src/main/java/org/test/ParentMappingClass2.java", 8, 1, 8, 16));
assertTrue(containsSymbol(symbols, "@/parent2 -- GET,POST,DELETE", docUri, 8, 1, 8, 16));
}
@Test
@@ -77,11 +77,11 @@ public class RequestMappingSymbolProviderTest {
File directory = new File(ProjectsHarness.class.getResource("/test-projects/test-request-mapping-symbols/").toURI());
String uriPrefix = "file://" + directory.getAbsolutePath();
List<? extends SymbolInformation> symbols = harness.getServer().getSpringIndexer().getSymbols(uriPrefix + "/src/main/java/org/test/MultiRequestMappingClass.java");
String docUri = directory.toPath().resolve("src/main/java/org/test/MultiRequestMappingClass.java").toUri().toString();
List<? extends SymbolInformation> symbols = harness.getServer().getSpringIndexer().getSymbols(docUri);
assertEquals(2, symbols.size());
assertTrue(containsSymbol(symbols, "@/hello1", uriPrefix + "/src/main/java/org/test/MultiRequestMappingClass.java", 6, 1, 6, 44));
assertTrue(containsSymbol(symbols, "@/hello2", uriPrefix + "/src/main/java/org/test/MultiRequestMappingClass.java", 6, 1, 6, 44));
assertTrue(containsSymbol(symbols, "@/hello1", docUri, 6, 1, 6, 44));
assertTrue(containsSymbol(symbols, "@/hello2", docUri, 6, 1, 6, 44));
}
@Test
@@ -90,9 +90,9 @@ public class RequestMappingSymbolProviderTest {
File directory = new File(ProjectsHarness.class.getResource("/test-projects/test-request-mapping-symbols/").toURI());
String uriPrefix = "file://" + directory.getAbsolutePath();
List<? extends SymbolInformation> symbols = harness.getServer().getSpringIndexer().getSymbols(uriPrefix + "/src/main/java/org/test/RequestMethodClass.java");
assertTrue(containsSymbol(symbols, "@/getData -- GET", uriPrefix + "/src/main/java/org/test/RequestMethodClass.java", 12, 1, 12, 24));
String docUri = directory.toPath().resolve("src/main/java/org/test/RequestMethodClass.java").toUri().toString();
List<? extends SymbolInformation> symbols = harness.getServer().getSpringIndexer().getSymbols(docUri);
assertTrue(containsSymbol(symbols, "@/getData -- GET", docUri, 12, 1, 12, 24));
}
@Test
@@ -101,9 +101,9 @@ public class RequestMappingSymbolProviderTest {
File directory = new File(ProjectsHarness.class.getResource("/test-projects/test-request-mapping-symbols/").toURI());
String uriPrefix = "file://" + directory.getAbsolutePath();
List<? extends SymbolInformation> symbols = harness.getServer().getSpringIndexer().getSymbols(uriPrefix + "/src/main/java/org/test/RequestMethodClass.java");
assertTrue(containsSymbol(symbols, "@/deleteData -- DELETE", uriPrefix + "/src/main/java/org/test/RequestMethodClass.java", 20, 1, 20, 30));
String docUri = directory.toPath().resolve("src/main/java/org/test/RequestMethodClass.java").toUri().toString();
List<? extends SymbolInformation> symbols = harness.getServer().getSpringIndexer().getSymbols(docUri);
assertTrue(containsSymbol(symbols, "@/deleteData -- DELETE",docUri, 20, 1, 20, 30));
}
@Test
@@ -112,9 +112,9 @@ public class RequestMappingSymbolProviderTest {
File directory = new File(ProjectsHarness.class.getResource("/test-projects/test-request-mapping-symbols/").toURI());
String uriPrefix = "file://" + directory.getAbsolutePath();
List<? extends SymbolInformation> symbols = harness.getServer().getSpringIndexer().getSymbols(uriPrefix + "/src/main/java/org/test/RequestMethodClass.java");
assertTrue(containsSymbol(symbols, "@/postData -- POST", uriPrefix + "/src/main/java/org/test/RequestMethodClass.java", 24, 1, 24, 26));
String docUri = directory.toPath().resolve("src/main/java/org/test/RequestMethodClass.java").toUri().toString();
List<? extends SymbolInformation> symbols = harness.getServer().getSpringIndexer().getSymbols(docUri);
assertTrue(containsSymbol(symbols, "@/postData -- POST", docUri, 24, 1, 24, 26));
}
@Test
@@ -123,9 +123,9 @@ public class RequestMappingSymbolProviderTest {
File directory = new File(ProjectsHarness.class.getResource("/test-projects/test-request-mapping-symbols/").toURI());
String uriPrefix = "file://" + directory.getAbsolutePath();
List<? extends SymbolInformation> symbols = harness.getServer().getSpringIndexer().getSymbols(uriPrefix + "/src/main/java/org/test/RequestMethodClass.java");
assertTrue(containsSymbol(symbols, "@/putData -- PUT", uriPrefix + "/src/main/java/org/test/RequestMethodClass.java", 16, 1, 16, 24));
String docUri = directory.toPath().resolve("src/main/java/org/test/RequestMethodClass.java").toUri().toString();
List<? extends SymbolInformation> symbols = harness.getServer().getSpringIndexer().getSymbols(docUri);
assertTrue(containsSymbol(symbols, "@/putData -- PUT", docUri, 16, 1, 16, 24));
}
@Test
@@ -134,9 +134,9 @@ public class RequestMappingSymbolProviderTest {
File directory = new File(ProjectsHarness.class.getResource("/test-projects/test-request-mapping-symbols/").toURI());
String uriPrefix = "file://" + directory.getAbsolutePath();
List<? extends SymbolInformation> symbols = harness.getServer().getSpringIndexer().getSymbols(uriPrefix + "/src/main/java/org/test/RequestMethodClass.java");
assertTrue(containsSymbol(symbols, "@/patchData -- PATCH", uriPrefix + "/src/main/java/org/test/RequestMethodClass.java", 28, 1, 28, 28));
String docUri = directory.toPath().resolve("src/main/java/org/test/RequestMethodClass.java").toUri().toString();
List<? extends SymbolInformation> symbols = harness.getServer().getSpringIndexer().getSymbols(docUri);
assertTrue(containsSymbol(symbols, "@/patchData -- PATCH", docUri, 28, 1, 28, 28));
}
@Test
@@ -145,9 +145,9 @@ public class RequestMappingSymbolProviderTest {
File directory = new File(ProjectsHarness.class.getResource("/test-projects/test-request-mapping-symbols/").toURI());
String uriPrefix = "file://" + directory.getAbsolutePath();
List<? extends SymbolInformation> symbols = harness.getServer().getSpringIndexer().getSymbols(uriPrefix + "/src/main/java/org/test/RequestMethodClass.java");
assertTrue(containsSymbol(symbols, "@/getHello -- GET", uriPrefix + "/src/main/java/org/test/RequestMethodClass.java", 32, 1, 32, 61));
String docUri = directory.toPath().resolve("src/main/java/org/test/RequestMethodClass.java").toUri().toString();
List<? extends SymbolInformation> symbols = harness.getServer().getSpringIndexer().getSymbols(docUri);
assertTrue(containsSymbol(symbols, "@/getHello -- GET", docUri, 32, 1, 32, 61));
}
@Test
@@ -156,9 +156,9 @@ public class RequestMappingSymbolProviderTest {
File directory = new File(ProjectsHarness.class.getResource("/test-projects/test-request-mapping-symbols/").toURI());
String uriPrefix = "file://" + directory.getAbsolutePath();
List<? extends SymbolInformation> symbols = harness.getServer().getSpringIndexer().getSymbols(uriPrefix + "/src/main/java/org/test/RequestMethodClass.java");
assertTrue(containsSymbol(symbols, "@/postAndPutHello -- POST,PUT", uriPrefix + "/src/main/java/org/test/RequestMethodClass.java", 36, 1, 36, 76));
String docUri = directory.toPath().resolve("src/main/java/org/test/RequestMethodClass.java").toUri().toString();
List<? extends SymbolInformation> symbols = harness.getServer().getSpringIndexer().getSymbols(docUri);
assertTrue(containsSymbol(symbols, "@/postAndPutHello -- POST,PUT", docUri, 36, 1, 36, 76));
}
private boolean containsSymbol(List<? extends SymbolInformation> symbols, String name, String uri, int startLine, int startCHaracter, int endLine, int endCharacter) {

View File

@@ -155,7 +155,7 @@ public class CompilationUnitCacheTest {
public void cu_cache_invalidated_by_project_change() throws Exception {
File directory = new File(
ProjectsHarness.class.getResource("/test-projects/test-request-mapping-live-hover/").toURI());
String docUri = "file://" +directory.getAbsolutePath() + "/src/main/java/example/HelloWorldController.java";
String docUri = directory.toPath().resolve("src/main/java/example/HelloWorldController.java").toUri().toString();
harness.intialize(directory);
@@ -180,7 +180,7 @@ public class CompilationUnitCacheTest {
public void cu_cache_invalidated_by_project_deletion() throws Exception {
File directory = new File(
ProjectsHarness.class.getResource("/test-projects/test-request-mapping-live-hover/").toURI());
String docUri = "file://" +directory.getAbsolutePath() + "/src/main/java/example/HelloWorldController.java";
String docUri = directory.toPath().resolve("src/main/java/example/HelloWorldController.java").toUri().toString();
harness.intialize(directory);

View File

@@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2017 Pivotal, Inc.
* Copyright (c) 2017, 2018 Pivotal, Inc.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -68,14 +68,17 @@ public class SpringIndexerTest {
assertEquals(6, allSymbols.size());
String uriPrefix = "file://" + directory.getAbsolutePath();
String docUri = directory.toPath().resolve("src/main/java/org/test/MainClass.java").toUri().toString();
assertTrue(containsSymbol(allSymbols, "@+ 'mainClass' (@SpringBootApplication <: @SpringBootConfiguration, @Configuration, @Component) MainClass", docUri, 6, 0, 6, 22));
assertTrue(containsSymbol(allSymbols, "@/embedded-foo-mapping", docUri, 17, 1, 17, 41));
assertTrue(containsSymbol(allSymbols, "@/foo-root-mapping/embedded-foo-mapping-with-root", docUri, 27, 1, 27, 51));
assertTrue(containsSymbol(allSymbols, "@+ 'mainClass' (@SpringBootApplication <: @SpringBootConfiguration, @Configuration, @Component) MainClass", uriPrefix + "/src/main/java/org/test/MainClass.java", 6, 0, 6, 22));
assertTrue(containsSymbol(allSymbols, "@/embedded-foo-mapping", uriPrefix + "/src/main/java/org/test/MainClass.java", 17, 1, 17, 41));
assertTrue(containsSymbol(allSymbols, "@/foo-root-mapping/embedded-foo-mapping-with-root", uriPrefix + "/src/main/java/org/test/MainClass.java", 27, 1, 27, 51));
assertTrue(containsSymbol(allSymbols, "@/mapping1", uriPrefix + "/src/main/java/org/test/SimpleMappingClass.java", 6, 1, 6, 28));
assertTrue(containsSymbol(allSymbols, "@/mapping2", uriPrefix + "/src/main/java/org/test/SimpleMappingClass.java", 11, 1, 11, 28));
assertTrue(containsSymbol(allSymbols, "@/classlevel/mapping-subpackage", uriPrefix + "/src/main/java/org/test/sub/MappingClassSubpackage.java", 7, 1, 7, 38));
docUri = directory.toPath().resolve("src/main/java/org/test/SimpleMappingClass.java").toUri().toString();
assertTrue(containsSymbol(allSymbols, "@/mapping1", docUri, 6, 1, 6, 28));
assertTrue(containsSymbol(allSymbols, "@/mapping2", docUri, 11, 1, 11, 28));
docUri = directory.toPath().resolve("src/main/java/org/test/sub/MappingClassSubpackage.java").toUri().toString();
assertTrue(containsSymbol(allSymbols, "@/classlevel/mapping-subpackage", docUri, 7, 1, 7, 38));
}
@Test
@@ -84,41 +87,46 @@ public class SpringIndexerTest {
File directory = new File(ProjectsHarness.class.getResource("/test-projects/test-annotation-indexing-parent/test-annotation-indexing/").toURI());
String uriPrefix = "file://" + directory.getAbsolutePath();
List<? extends SymbolInformation> symbols = indexer().getSymbols(uriPrefix + "/src/main/java/org/test/MainClass.java");
String docUri = directory.toPath().resolve("src/main/java/org/test/MainClass.java").toUri().toString();
List<? extends SymbolInformation> symbols = indexer().getSymbols(docUri);
assertEquals(3, symbols.size());
assertTrue(containsSymbol(symbols, "@+ 'mainClass' (@SpringBootApplication <: @SpringBootConfiguration, @Configuration, @Component) MainClass", uriPrefix + "/src/main/java/org/test/MainClass.java", 6, 0, 6, 22));
assertTrue(containsSymbol(symbols, "@/embedded-foo-mapping", uriPrefix + "/src/main/java/org/test/MainClass.java", 17, 1, 17, 41));
assertTrue(containsSymbol(symbols, "@/foo-root-mapping/embedded-foo-mapping-with-root", uriPrefix + "/src/main/java/org/test/MainClass.java", 27, 1, 27, 51));
assertTrue(containsSymbol(symbols, "@+ 'mainClass' (@SpringBootApplication <: @SpringBootConfiguration, @Configuration, @Component) MainClass", docUri, 6, 0, 6, 22));
assertTrue(containsSymbol(symbols, "@/embedded-foo-mapping", docUri, 17, 1, 17, 41));
assertTrue(containsSymbol(symbols, "@/foo-root-mapping/embedded-foo-mapping-with-root", docUri, 27, 1, 27, 51));
symbols = indexer().getSymbols(uriPrefix + "/src/main/java/org/test/SimpleMappingClass.java");
docUri = directory.toPath().resolve("src/main/java/org/test/SimpleMappingClass.java").toUri().toString();
symbols = indexer().getSymbols(docUri);
assertEquals(2, symbols.size());
assertTrue(containsSymbol(symbols, "@/mapping1", uriPrefix + "/src/main/java/org/test/SimpleMappingClass.java", 6, 1, 6, 28));
assertTrue(containsSymbol(symbols, "@/mapping2", uriPrefix + "/src/main/java/org/test/SimpleMappingClass.java", 11, 1, 11, 28));
assertTrue(containsSymbol(symbols, "@/mapping1", docUri, 6, 1, 6, 28));
assertTrue(containsSymbol(symbols, "@/mapping2", docUri, 11, 1, 11, 28));
symbols = indexer().getSymbols(uriPrefix + "/src/main/java/org/test/sub/MappingClassSubpackage.java");
docUri = directory.toPath().resolve("src/main/java/org/test/sub/MappingClassSubpackage.java").toUri().toString();
symbols = indexer().getSymbols(docUri);
assertEquals(1, symbols.size());
assertTrue(containsSymbol(symbols, "@/classlevel/mapping-subpackage", uriPrefix + "/src/main/java/org/test/sub/MappingClassSubpackage.java", 7, 1, 7, 38));
assertTrue(containsSymbol(symbols, "@/classlevel/mapping-subpackage", docUri, 7, 1, 7, 38));
}
@Test
public void testScanningAllAnnotationsMultiModuleProjectUpfront() throws Exception {
harness.intialize(new File(ProjectsHarness.class.getResource("/test-projects/test-annotation-indexing-parent/").toURI()));
File directory = new File(ProjectsHarness.class.getResource("/test-projects/test-annotation-indexing-parent/").toURI());
File directory = new File(ProjectsHarness.class.getResource("/test-projects/test-annotation-indexing-parent/test-annotation-indexing").toURI());
List<? extends SymbolInformation> allSymbols = indexer().getAllSymbols("");
assertEquals(6, allSymbols.size());
String uriPrefix = "file://" + directory.getAbsolutePath() + "/test-annotation-indexing";
String docUri = directory.toPath().resolve("src/main/java/org/test/MainClass.java").toUri().toString();
assertTrue(containsSymbol(allSymbols, "@+ 'mainClass' (@SpringBootApplication <: @SpringBootConfiguration, @Configuration, @Component) MainClass", docUri, 6, 0, 6, 22));
assertTrue(containsSymbol(allSymbols, "@/embedded-foo-mapping", docUri, 17, 1, 17, 41));
assertTrue(containsSymbol(allSymbols, "@/foo-root-mapping/embedded-foo-mapping-with-root", docUri, 27, 1, 27, 51));
assertTrue(containsSymbol(allSymbols, "@+ 'mainClass' (@SpringBootApplication <: @SpringBootConfiguration, @Configuration, @Component) MainClass", uriPrefix + "/src/main/java/org/test/MainClass.java", 6, 0, 6, 22));
assertTrue(containsSymbol(allSymbols, "@/embedded-foo-mapping", uriPrefix + "/src/main/java/org/test/MainClass.java", 17, 1, 17, 41));
assertTrue(containsSymbol(allSymbols, "@/foo-root-mapping/embedded-foo-mapping-with-root", uriPrefix + "/src/main/java/org/test/MainClass.java", 27, 1, 27, 51));
assertTrue(containsSymbol(allSymbols, "@/mapping1", uriPrefix + "/src/main/java/org/test/SimpleMappingClass.java", 6, 1, 6, 28));
assertTrue(containsSymbol(allSymbols, "@/mapping2", uriPrefix + "/src/main/java/org/test/SimpleMappingClass.java", 11, 1, 11, 28));
assertTrue(containsSymbol(allSymbols, "@/classlevel/mapping-subpackage", uriPrefix + "/src/main/java/org/test/sub/MappingClassSubpackage.java", 7, 1, 7, 38));
docUri = directory.toPath().resolve("src/main/java/org/test/SimpleMappingClass.java").toUri().toString();
assertTrue(containsSymbol(allSymbols, "@/mapping1", docUri, 6, 1, 6, 28));
assertTrue(containsSymbol(allSymbols, "@/mapping2", docUri, 11, 1, 11, 28));
docUri = directory.toPath().resolve("src/main/java/org/test/sub/MappingClassSubpackage.java").toUri().toString();
assertTrue(containsSymbol(allSymbols, "@/classlevel/mapping-subpackage", docUri, 7, 1, 7, 38));
}
@Test
@@ -128,7 +136,8 @@ public class SpringIndexerTest {
File directory = new File(ProjectsHarness.class.getResource("/test-projects/test-annotation-indexing-parent/test-annotation-indexing/").toURI());
// update document and update index
String changedDocURI = "file://" + directory.getAbsolutePath() + "/src/main/java/org/test/SimpleMappingClass.java";
String changedDocURI = directory.toPath().resolve("src/main/java/org/test/SimpleMappingClass.java").toUri().toString();
String newContent = FileUtils.readFileToString(new File(new URI(changedDocURI))).replace("mapping1", "mapping1-CHANGED");
CompletableFuture<Void> updateFuture = indexer().updateDocument(changedDocURI, newContent);
@@ -144,14 +153,17 @@ public class SpringIndexerTest {
List<? extends SymbolInformation> allSymbols = indexer().getAllSymbols("");
assertEquals(6, allSymbols.size());
String uriPrefix = "file://" + directory.getAbsolutePath();
String docUri = directory.toPath().resolve("src/main/java/org/test/MainClass.java").toUri().toString();
assertTrue(containsSymbol(allSymbols, "@+ 'mainClass' (@SpringBootApplication <: @SpringBootConfiguration, @Configuration, @Component) MainClass", docUri, 6, 0, 6, 22));
assertTrue(containsSymbol(allSymbols, "@/embedded-foo-mapping", docUri, 17, 1, 17, 41));
assertTrue(containsSymbol(allSymbols, "@/foo-root-mapping/embedded-foo-mapping-with-root", docUri, 27, 1, 27, 51));
assertTrue(containsSymbol(allSymbols, "@+ 'mainClass' (@SpringBootApplication <: @SpringBootConfiguration, @Configuration, @Component) MainClass", uriPrefix + "/src/main/java/org/test/MainClass.java", 6, 0, 6, 22));
assertTrue(containsSymbol(allSymbols, "@/embedded-foo-mapping", uriPrefix + "/src/main/java/org/test/MainClass.java", 17, 1, 17, 41));
assertTrue(containsSymbol(allSymbols, "@/foo-root-mapping/embedded-foo-mapping-with-root", uriPrefix + "/src/main/java/org/test/MainClass.java", 27, 1, 27, 51));
assertTrue(containsSymbol(allSymbols, "@/mapping1-CHANGED", uriPrefix + "/src/main/java/org/test/SimpleMappingClass.java", 6, 1, 6, 36));
assertTrue(containsSymbol(allSymbols, "@/mapping2", uriPrefix + "/src/main/java/org/test/SimpleMappingClass.java", 11, 1, 11, 28));
assertTrue(containsSymbol(allSymbols, "@/classlevel/mapping-subpackage", uriPrefix + "/src/main/java/org/test/sub/MappingClassSubpackage.java", 7, 1, 7, 38));
docUri = directory.toPath().resolve("src/main/java/org/test/SimpleMappingClass.java").toUri().toString();
assertTrue(containsSymbol(allSymbols, "@/mapping1-CHANGED", docUri, 6, 1, 6, 36));
assertTrue(containsSymbol(allSymbols, "@/mapping2", docUri, 11, 1, 11, 28));
docUri = directory.toPath().resolve("src/main/java/org/test/sub/MappingClassSubpackage.java").toUri().toString();
assertTrue(containsSymbol(allSymbols, "@/classlevel/mapping-subpackage", docUri, 7, 1, 7, 38));
}
@Test
@@ -159,7 +171,7 @@ public class SpringIndexerTest {
harness.intialize(new File(ProjectsHarness.class.getResource("/test-projects/test-annotation-indexing-parent/test-annotation-indexing/").toURI()));
File directory = new File(ProjectsHarness.class.getResource("/test-projects/test-annotation-indexing-parent/test-annotation-indexing/").toURI());
String createdDocURI = "file://" + directory.getAbsolutePath() + "/src/main/java/org/test/CreatedClass.java";
String createdDocURI = directory.toPath().resolve("src/main/java/org/test/CreatedClass.java").toUri().toString();
// check for document to not be created yet
List<? extends SymbolInformation> symbols = indexer().getSymbols(createdDocURI);
@@ -202,14 +214,17 @@ public class SpringIndexerTest {
allSymbols = indexer().getAllSymbols("");
assertEquals(8, allSymbols.size());
String uriPrefix = "file://" + directory.getAbsolutePath();
String docUri = directory.toPath().resolve("src/main/java/org/test/MainClass.java").toUri().toString();
assertTrue(containsSymbol(allSymbols, "@+ 'mainClass' (@SpringBootApplication <: @SpringBootConfiguration, @Configuration, @Component) MainClass", docUri, 6, 0, 6, 22));
assertTrue(containsSymbol(allSymbols, "@/embedded-foo-mapping", docUri, 17, 1, 17, 41));
assertTrue(containsSymbol(allSymbols, "@/foo-root-mapping/embedded-foo-mapping-with-root", docUri, 27, 1, 27, 51));
assertTrue(containsSymbol(allSymbols, "@+ 'mainClass' (@SpringBootApplication <: @SpringBootConfiguration, @Configuration, @Component) MainClass", uriPrefix + "/src/main/java/org/test/MainClass.java", 6, 0, 6, 22));
assertTrue(containsSymbol(allSymbols, "@/embedded-foo-mapping", uriPrefix + "/src/main/java/org/test/MainClass.java", 17, 1, 17, 41));
assertTrue(containsSymbol(allSymbols, "@/foo-root-mapping/embedded-foo-mapping-with-root", uriPrefix + "/src/main/java/org/test/MainClass.java", 27, 1, 27, 51));
assertTrue(containsSymbol(allSymbols, "@/mapping1", uriPrefix + "/src/main/java/org/test/SimpleMappingClass.java", 6, 1, 6, 28));
assertTrue(containsSymbol(allSymbols, "@/mapping2", uriPrefix + "/src/main/java/org/test/SimpleMappingClass.java", 11, 1, 11, 28));
assertTrue(containsSymbol(allSymbols, "@/classlevel/mapping-subpackage", uriPrefix + "/src/main/java/org/test/sub/MappingClassSubpackage.java", 7, 1, 7, 38));
docUri = directory.toPath().resolve("src/main/java/org/test/SimpleMappingClass.java").toUri().toString();
assertTrue(containsSymbol(allSymbols, "@/mapping1", docUri, 6, 1, 6, 28));
assertTrue(containsSymbol(allSymbols, "@/mapping2", docUri, 11, 1, 11, 28));
docUri = directory.toPath().resolve("src/main/java/org/test/sub/MappingClassSubpackage.java").toUri().toString();
assertTrue(containsSymbol(allSymbols, "@/classlevel/mapping-subpackage", docUri, 7, 1, 7, 38));
assertTrue(containsSymbol(allSymbols, "@/created-mapping1", createdDocURI, 6, 1, 6, 36));
assertTrue(containsSymbol(allSymbols, "@/created-mapping2", createdDocURI, 11, 1, 11, 36));
@@ -225,7 +240,7 @@ public class SpringIndexerTest {
File directory = new File(ProjectsHarness.class.getResource("/test-projects/test-annotation-indexing-parent/test-annotation-indexing/").toURI());
// update document and update index
String deletedDocURI = "file://" + directory.getAbsolutePath() + "/src/main/java/org/test/SimpleMappingClass.java";
String deletedDocURI = directory.toPath().resolve("src/main/java/org/test/SimpleMappingClass.java").toUri().toString();
CompletableFuture<Void> deleteFuture = indexer().deleteDocument(deletedDocURI);
deleteFuture.get(5, TimeUnit.SECONDS);
@@ -237,12 +252,13 @@ public class SpringIndexerTest {
List<? extends SymbolInformation> allSymbols = indexer().getAllSymbols("");
assertEquals(4, allSymbols.size());
String uriPrefix = "file://" + directory.getAbsolutePath();
String docUri = directory.toPath().resolve("src/main/java/org/test/MainClass.java").toUri().toString();
assertTrue(containsSymbol(allSymbols, "@+ 'mainClass' (@SpringBootApplication <: @SpringBootConfiguration, @Configuration, @Component) MainClass", docUri, 6, 0, 6, 22));
assertTrue(containsSymbol(allSymbols, "@/embedded-foo-mapping", docUri, 17, 1, 17, 41));
assertTrue(containsSymbol(allSymbols, "@/foo-root-mapping/embedded-foo-mapping-with-root", docUri, 27, 1, 27, 51));
assertTrue(containsSymbol(allSymbols, "@+ 'mainClass' (@SpringBootApplication <: @SpringBootConfiguration, @Configuration, @Component) MainClass", uriPrefix + "/src/main/java/org/test/MainClass.java", 6, 0, 6, 22));
assertTrue(containsSymbol(allSymbols, "@/embedded-foo-mapping", uriPrefix + "/src/main/java/org/test/MainClass.java", 17, 1, 17, 41));
assertTrue(containsSymbol(allSymbols, "@/foo-root-mapping/embedded-foo-mapping-with-root", uriPrefix + "/src/main/java/org/test/MainClass.java", 27, 1, 27, 51));
assertTrue(containsSymbol(allSymbols, "@/classlevel/mapping-subpackage", uriPrefix + "/src/main/java/org/test/sub/MappingClassSubpackage.java", 7, 1, 7, 38));
docUri = directory.toPath().resolve("src/main/java/org/test/sub/MappingClassSubpackage.java").toUri().toString();
assertTrue(containsSymbol(allSymbols, "@/classlevel/mapping-subpackage", docUri, 7, 1, 7, 38));
}
@Test
@@ -255,13 +271,16 @@ public class SpringIndexerTest {
assertEquals(6, allSymbols.size());
String uriPrefix = "file://" + directory.getAbsolutePath();
String docUri = directory.toPath().resolve("src/main/java/org/test/MainClass.java").toUri().toString();
assertTrue(containsSymbol(allSymbols, "@/embedded-foo-mapping", docUri, 17, 1, 17, 41));
assertTrue(containsSymbol(allSymbols, "@/foo-root-mapping/embedded-foo-mapping-with-root", docUri, 27, 1, 27, 51));
assertTrue(containsSymbol(allSymbols, "@/embedded-foo-mapping", uriPrefix + "/src/main/java/org/test/MainClass.java", 17, 1, 17, 41));
assertTrue(containsSymbol(allSymbols, "@/foo-root-mapping/embedded-foo-mapping-with-root", uriPrefix + "/src/main/java/org/test/MainClass.java", 27, 1, 27, 51));
assertTrue(containsSymbol(allSymbols, "@/mapping1", uriPrefix + "/src/main/java/org/test/SimpleMappingClass.java", 6, 1, 6, 28));
assertTrue(containsSymbol(allSymbols, "@/mapping2", uriPrefix + "/src/main/java/org/test/SimpleMappingClass.java", 11, 1, 11, 28));
assertTrue(containsSymbol(allSymbols, "@/classlevel/mapping-subpackage", uriPrefix + "/src/main/java/org/test/sub/MappingClassSubpackage.java", 7, 1, 7, 38));
docUri = directory.toPath().resolve("src/main/java/org/test/SimpleMappingClass.java").toUri().toString();
assertTrue(containsSymbol(allSymbols, "@/mapping1", docUri, 6, 1, 6, 28));
assertTrue(containsSymbol(allSymbols, "@/mapping2", docUri, 11, 1, 11, 28));
docUri = directory.toPath().resolve("src/main/java/org/test/sub/MappingClassSubpackage.java").toUri().toString();
assertTrue(containsSymbol(allSymbols, "@/classlevel/mapping-subpackage", docUri, 7, 1, 7, 38));
}
@Test
@@ -274,9 +293,9 @@ public class SpringIndexerTest {
assertEquals(1, allSymbols.size());
String uriPrefix = "file://" + directory.getAbsolutePath();
String docUri = directory.toPath().resolve("src/main/java/org/test/MainClass.java").toUri().toString();
assertTrue(containsSymbol(allSymbols, "@/foo-root-mapping/embedded-foo-mapping-with-root", uriPrefix + "/src/main/java/org/test/MainClass.java", 27, 1, 27, 51));
assertTrue(containsSymbol(allSymbols, "@/foo-root-mapping/embedded-foo-mapping-with-root", docUri, 27, 1, 27, 51));
}
@Test
@@ -289,9 +308,9 @@ public class SpringIndexerTest {
assertEquals(1, allSymbols.size());
String uriPrefix = "file://" + directory.getAbsolutePath();
String docUri = directory.toPath().resolve("src/main/java/org/test/MainClass.java").toUri().toString();
assertTrue(containsSymbol(allSymbols, "@/foo-root-mapping/embedded-foo-mapping-with-root", uriPrefix + "/src/main/java/org/test/MainClass.java", 27, 1, 27, 51));
assertTrue(containsSymbol(allSymbols, "@/foo-root-mapping/embedded-foo-mapping-with-root", docUri, 27, 1, 27, 51));
}
private boolean containsSymbol(List<? extends SymbolInformation> symbols, String name, String uri, int startLine, int startCHaracter, int endLine, int endCharacter) {