diff --git a/tests/org.eclipse.jface.text.tests/META-INF/MANIFEST.MF b/tests/org.eclipse.jface.text.tests/META-INF/MANIFEST.MF index 7cc57c18bfb..0c0524f3ebc 100644 --- a/tests/org.eclipse.jface.text.tests/META-INF/MANIFEST.MF +++ b/tests/org.eclipse.jface.text.tests/META-INF/MANIFEST.MF @@ -2,7 +2,7 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: %Plugin.name Bundle-SymbolicName: org.eclipse.jface.text.tests -Bundle-Version: 3.14.0.qualifier +Bundle-Version: 3.14.100.qualifier Bundle-Vendor: %Plugin.providerName Bundle-Localization: plugin Export-Package: diff --git a/tests/org.eclipse.jface.text.tests/src/org/eclipse/jface/text/tests/contentassist/AbstractContentAssistTest.java b/tests/org.eclipse.jface.text.tests/src/org/eclipse/jface/text/tests/contentassist/AbstractContentAssistTest.java index e618cb9eb16..96cc97f7f4e 100644 --- a/tests/org.eclipse.jface.text.tests/src/org/eclipse/jface/text/tests/contentassist/AbstractContentAssistTest.java +++ b/tests/org.eclipse.jface.text.tests/src/org/eclipse/jface/text/tests/contentassist/AbstractContentAssistTest.java @@ -229,7 +229,7 @@ protected static List findNewShells(Collection beforeShells) { protected static Shell findNewShell(Collection beforeShells) { List afterShells= findNewShells(beforeShells); - for (int attempt= 0; afterShells.size() != 1 && attempt < 10; attempt++) { + for (int attempt= 0; afterShells.size() != 1 && attempt < 50; attempt++) { DisplayHelper.sleep(getDisplay(), 100); afterShells= findNewShells(beforeShells); } diff --git a/tests/org.eclipse.jface.text.tests/src/org/eclipse/jface/text/tests/contentassist/AsyncContentAssistTest.java b/tests/org.eclipse.jface.text.tests/src/org/eclipse/jface/text/tests/contentassist/AsyncContentAssistTest.java index 0526cb3aa51..c09a25e1858 100644 --- a/tests/org.eclipse.jface.text.tests/src/org/eclipse/jface/text/tests/contentassist/AsyncContentAssistTest.java +++ b/tests/org.eclipse.jface.text.tests/src/org/eclipse/jface/text/tests/contentassist/AsyncContentAssistTest.java @@ -17,7 +17,6 @@ import static org.junit.jupiter.api.Assertions.assertNotNull; import static org.junit.jupiter.api.Assertions.assertNull; import static org.junit.jupiter.api.Assertions.assertTrue; -import static org.junit.jupiter.api.Assumptions.assumeFalse; import java.util.Arrays; import java.util.Collection; @@ -41,8 +40,6 @@ import org.eclipse.core.runtime.IStatus; import org.eclipse.core.runtime.Platform; -import org.eclipse.jface.util.Util; - import org.eclipse.jface.text.Document; import org.eclipse.jface.text.IDocument; import org.eclipse.jface.text.contentassist.ContentAssistant; @@ -134,7 +131,6 @@ protected boolean condition() { @Test public void testCompleteActivationChar() { - assumeFalse(Util.isWindows(), "test fails on Windows, see https://github.com/eclipse-platform/eclipse.platform.ui/issues/890"); shell.setLayout(new FillLayout()); shell.setSize(500, 300); SourceViewer viewer= new SourceViewer(shell, null, SWT.NONE); @@ -151,17 +147,20 @@ public void testCompleteActivationChar() { contentAssistant.install(viewer); shell.open(); Display display= shell.getDisplay(); - Event keyEvent= new Event(); + DisplayHelper.runEventLoop(display, 0); Control control= viewer.getTextWidget(); + control.forceFocus(); + DisplayHelper.runEventLoop(display, 0); + final Collection beforeShells= AbstractContentAssistTest.getCurrentShells(); + // Use notifyListeners instead of Display.post() for reliable event delivery + // Display.post() sends native OS events that may not be processed reliably + // in headless CI environments + Event keyEvent= new Event(); keyEvent.widget= control; keyEvent.type= SWT.KeyDown; keyEvent.character= 'b'; keyEvent.keyCode= 'b'; - control.getShell().forceActive(); - control.getDisplay().post(keyEvent); - keyEvent.type= SWT.KeyUp; - control.getDisplay().post(keyEvent); - final Collection beforeShells= AbstractContentAssistTest.getCurrentShells(); + control.notifyListeners(SWT.KeyDown, keyEvent); AbstractContentAssistTest.processEvents(); Shell newShell= AbstractContentAssistTest.findNewShell(beforeShells); assertTrue(new DisplayHelper() {