Skip to content

Commit 6a9e0a4

Browse files
HannesWelllaeubi
authored andcommitted
Clean-up, unify and format LemMinX-Maven EditorTest
1 parent 93f9495 commit 6a9e0a4

File tree

2 files changed

+39
-41
lines changed

2 files changed

+39
-41
lines changed

org.eclipse.m2e.editor.lemminx.tests/META-INF/MANIFEST.MF

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
22
Bundle-ManifestVersion: 2
33
Bundle-Name: M2E Maven POM File Editor using Wild Web Developer, Lemminx and Maven LS extension Tests
44
Bundle-SymbolicName: org.eclipse.m2e.editor.lemminx.tests
5-
Bundle-Version: 2.0.1.qualifier
5+
Bundle-Version: 2.0.2.qualifier
66
Automatic-Module-Name: org.eclipse.m2e.editor.lemminx.tests
77
Bundle-RequiredExecutionEnvironment: JavaSE-17
88
Bundle-Vendor: Eclipse.org - m2e

org.eclipse.m2e.editor.lemminx.tests/src/org/eclipse/m2e/editor/lemminx/tests/EditorTest.java

Lines changed: 38 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212

1313
import static org.junit.Assert.assertTrue;
1414

15+
import java.io.IOException;
1516
import java.io.InputStream;
1617
import java.util.Arrays;
1718
import java.util.Set;
@@ -21,7 +22,7 @@
2122
import org.eclipse.core.resources.IMarker;
2223
import org.eclipse.core.resources.IProject;
2324
import org.eclipse.core.resources.IResource;
24-
import org.eclipse.core.resources.ResourcesPlugin;
25+
import org.eclipse.core.resources.IncrementalProjectBuilder;
2526
import org.eclipse.core.runtime.CoreException;
2627
import org.eclipse.jface.preference.IPreferenceStore;
2728
import org.eclipse.jface.text.TextSelection;
@@ -36,7 +37,6 @@
3637
import org.eclipse.ui.IWorkbenchPage;
3738
import org.eclipse.ui.PlatformUI;
3839
import org.eclipse.ui.ide.IDE;
39-
import org.eclipse.ui.part.FileEditorInput;
4040
import org.eclipse.ui.tests.harness.util.DisplayHelper;
4141
import org.eclipse.ui.texteditor.ITextEditor;
4242
import org.eclipse.ui.texteditor.ITextEditorActionConstants;
@@ -74,66 +74,57 @@ public void closeAndDeleteAll() throws CoreException {
7474

7575
@Test
7676
public void testGenericEditorHasMavenExtensionEnabled() throws Exception {
77-
project = ResourcesPlugin.getWorkspace().getRoot().getProject("test" + System.currentTimeMillis());
78-
project.create(null);
79-
project.open(null);
77+
project = createMavenProject("test" + System.currentTimeMillis(), "pom.xml");
8078
IFile pomFile = project.getFile("pom.xml");
81-
pomFile.create(getClass().getResourceAsStream("pom.xml"), true, null);
82-
ITextEditor editorPart = (ITextEditor)IDE.openEditor(page, pomFile, GENERIC_EDITOR);
79+
80+
ITextEditor editorPart = (ITextEditor) IDE.openEditor(page, pomFile, GENERIC_EDITOR);
8381
Display display = page.getWorkbenchWindow().getShell().getDisplay();
8482
assertTrue("Missing diagnostic report", DisplayHelper.waitForCondition(display, WAIT_TIMEOUT, () -> {
85-
try {
86-
return Arrays.stream(pomFile.findMarkers(IMarker.PROBLEM, true, IResource.DEPTH_ZERO)).anyMatch(marker ->
87-
marker.getAttribute(IMarker.SEVERITY, -1) == IMarker.SEVERITY_ERROR &&
88-
marker.getAttribute(IMarker.MESSAGE, "").contains("artifactId")
89-
);
90-
} catch (CoreException e) {
91-
return false;
92-
}
83+
try {
84+
project.build(IncrementalProjectBuilder.INCREMENTAL_BUILD, monitor);
85+
return Arrays.stream(pomFile.findMarkers(IMarker.PROBLEM, true, IResource.DEPTH_INFINITE))
86+
.anyMatch(marker -> marker.getAttribute(IMarker.SEVERITY, -1) == IMarker.SEVERITY_ERROR
87+
&& marker.getAttribute(IMarker.MESSAGE, "").contains("artifactId"));
88+
} catch (CoreException e) {
89+
return false;
9390
}
94-
));
95-
int offset = editorPart.getDocumentProvider().getDocument(editorPart.getEditorInput()).get().indexOf("</scope>");
96-
Set<Shell> beforeShells = Arrays.stream(display.getShells()).filter(Shell::isVisible).collect(Collectors.toSet());
91+
}));
92+
int offset = editorPart.getDocumentProvider().getDocument(editorPart.getEditorInput()).get()
93+
.indexOf("</scope>");
94+
Set<Shell> beforeShells = Arrays.stream(display.getShells()).filter(Shell::isVisible)
95+
.collect(Collectors.toSet());
9796
editorPart.getSelectionProvider().setSelection(new TextSelection(offset, 0));
9897
editorPart.getAction(ITextEditorActionConstants.CONTENT_ASSIST).run();
9998
assertTrue("Missing completion proposals", DisplayHelper.waitForCondition(display, WAIT_TIMEOUT, () -> {
100-
Set<Shell> afterShells = Arrays.stream(display.getShells()).filter(Shell::isVisible).collect(Collectors.toSet());
99+
Set<Shell> afterShells = Arrays.stream(display.getShells()).filter(Shell::isVisible)
100+
.collect(Collectors.toSet());
101101
afterShells.removeAll(beforeShells);
102-
return afterShells.stream()
103-
.flatMap(shell -> Arrays.stream(shell.getChildren()))
104-
.filter(Table.class::isInstance)
105-
.map(Table.class::cast)
106-
.findFirst()
107-
.map(table -> Boolean.valueOf(Arrays.stream(table.getItems()).map(TableItem::getText).anyMatch("compile"::equals)))
108-
.orElse(Boolean.FALSE).booleanValue();
102+
return afterShells.stream().flatMap(shell -> Arrays.stream(shell.getChildren()))
103+
.filter(Table.class::isInstance).map(Table.class::cast).findFirst()
104+
.map(table -> Arrays.stream(table.getItems()).map(TableItem::getText).anyMatch("compile"::equals))
105+
.orElse(Boolean.FALSE).booleanValue();
109106
}));
110107
}
111108

112109
@Test
113-
public void testEditorOpenOnSourcePage() throws CoreException {
110+
public void testEditorOpenOnSourcePage() throws Exception {
114111
IPreferenceStore preferenceStore = M2EUIPluginActivator.getDefault().getPreferenceStore();
115112
preferenceStore.setValue(MavenPreferenceConstants.P_DEFAULT_POM_EDITOR_PAGE, true);
116-
project = ResourcesPlugin.getWorkspace().getRoot().getProject("test" + System.currentTimeMillis());
117-
project.create(null);
118-
project.open(null);
113+
114+
project = createMavenProject("test" + System.currentTimeMillis(), "pom.xml");
119115
IFile pomFile = project.getFile("pom.xml");
120-
pomFile.create(getClass().getResourceAsStream("pom.xml"), true, null);
121-
MavenPomEditor editor = (MavenPomEditor)page.openEditor(new FileEditorInput(pomFile), MavenPomEditor.EDITOR_ID);
116+
117+
MavenPomEditor editor = (MavenPomEditor) IDE.openEditor(page, pomFile, MavenPomEditor.EDITOR_ID);
122118
Assert.assertNotNull(editor.getSourcePage());
123119
Assert.assertEquals(editor.getSourcePage(), editor.getActiveEditor());
124120
}
125121

126122
@Test
127123
public void testOpenChildThenParentResolvesParent() throws Exception {
128-
try (InputStream content = getClass().getResourceAsStream("pom-parent.xml")) {
129-
createProject("parent", content);
130-
}
131-
IProject child = null;
132-
try (InputStream content = getClass().getResourceAsStream("pom-child.xml")) {
133-
child = createProject("child", content);
134-
}
124+
createMavenProject("parent", "pom-parent.xml");
125+
IProject child = createMavenProject("child", "pom-child.xml");
135126
IFile pomFile = child.getFile("pom.xml");
136-
page.openEditor(new FileEditorInput(pomFile), GENERIC_EDITOR);
127+
IDE.openEditor(page, pomFile, GENERIC_EDITOR);
137128
Display display = page.getWorkbenchWindow().getShell().getDisplay();
138129
assertTrue("Expected marker not published", DisplayHelper.waitForCondition(display, WAIT_TIMEOUT, () -> {
139130
try {
@@ -147,4 +138,11 @@ public void testOpenChildThenParentResolvesParent() throws Exception {
147138
}
148139
}));
149140
}
141+
142+
private IProject createMavenProject(String projectName, String pomFileName) throws CoreException, IOException {
143+
try (InputStream pomContent = getClass().getResourceAsStream(pomFileName)) {
144+
return createProject(projectName, pomContent);
145+
}
146+
}
147+
150148
}

0 commit comments

Comments
 (0)