1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-06-09 18:56:02 +02:00

Fixes linux-specific failures in the automated ui-tests.

This commit is contained in:
Markus Schorn 2007-06-13 12:59:12 +00:00
parent 90c5f04bd5
commit bd08d38101
3 changed files with 26 additions and 12 deletions

View file

@ -28,8 +28,9 @@ import org.eclipse.swt.widgets.Event;
import org.eclipse.swt.widgets.Tree; import org.eclipse.swt.widgets.Tree;
import org.eclipse.swt.widgets.TreeItem; import org.eclipse.swt.widgets.TreeItem;
import org.eclipse.ui.IEditorPart; import org.eclipse.ui.IEditorPart;
import org.eclipse.ui.IEditorReference;
import org.eclipse.ui.IViewPart; import org.eclipse.ui.IViewPart;
import org.eclipse.ui.IWorkbench; import org.eclipse.ui.IViewReference;
import org.eclipse.ui.IWorkbenchPage; import org.eclipse.ui.IWorkbenchPage;
import org.eclipse.ui.IWorkbenchPartSite; import org.eclipse.ui.IWorkbenchPartSite;
import org.eclipse.ui.IWorkbenchWindow; import org.eclipse.ui.IWorkbenchWindow;
@ -46,7 +47,6 @@ import org.eclipse.cdt.core.model.CModelException;
import org.eclipse.cdt.core.model.ICProject; import org.eclipse.cdt.core.model.ICProject;
import org.eclipse.cdt.core.testplugin.util.BaseTestCase; import org.eclipse.cdt.core.testplugin.util.BaseTestCase;
import org.eclipse.cdt.core.testplugin.util.TestSourceReader; import org.eclipse.cdt.core.testplugin.util.TestSourceReader;
import org.eclipse.cdt.ui.CUIPlugin;
import org.eclipse.cdt.ui.testplugin.CTestPlugin; import org.eclipse.cdt.ui.testplugin.CTestPlugin;
public class BaseUITestCase extends BaseTestCase { public class BaseUITestCase extends BaseTestCase {
@ -142,10 +142,10 @@ public class BaseUITestCase extends BaseTestCase {
} }
protected void expandTreeItem(TreeItem item) { protected void expandTreeItem(TreeItem item) {
item.setExpanded(true);
Event event = new Event(); Event event = new Event();
event.item = item; event.item = item;
item.getParent().notifyListeners(SWT.Expand, event); item.getParent().notifyListeners(SWT.Expand, event);
item.setExpanded(true);
runEventQueue(0); runEventQueue(0);
} }
@ -190,9 +190,21 @@ public class BaseUITestCase extends BaseTestCase {
} }
} }
protected void showCDTPerspective() throws WorkbenchException { protected void restoreAllParts() throws WorkbenchException {
final IWorkbench workbench = PlatformUI.getWorkbench(); IWorkbenchPage page= PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
workbench.showPerspective(CUIPlugin.ID_CPERSPECTIVE, workbench.getActiveWorkbenchWindow()); page.zoomOut();
runEventQueue(0);
IViewReference[] viewRefs= page.getViewReferences();
for (int i = 0; i < viewRefs.length; i++) {
IViewReference ref = viewRefs[i];
page.setPartState(ref, IWorkbenchPage.STATE_RESTORED);
}
IEditorReference[] editorRefs= page.getEditorReferences();
for (int i = 0; i < editorRefs.length; i++) {
IEditorReference ref = editorRefs[i];
page.setPartState(ref, IWorkbenchPage.STATE_RESTORED);
}
runEventQueue(0); runEventQueue(0);
} }
@ -214,15 +226,18 @@ public class BaseUITestCase extends BaseTestCase {
} }
protected Control getFocusControl(Class clazz, Control differentTo, int wait) { protected Control getFocusControl(Class clazz, Control differentTo, int wait) {
Control fc= null;
for (int i = 0; i <= wait/10; i++) { for (int i = 0; i <= wait/10; i++) {
Control fc= Display.getCurrent().getFocusControl(); fc= Display.getCurrent().getFocusControl();
if (clazz.isInstance(fc) && fc != differentTo) { if (clazz.isInstance(fc) && fc != differentTo) {
return fc; return fc;
} }
runEventQueue(10); runEventQueue(10);
} }
fail(); assertNotNull(fc);
return null; assertTrue(fc != differentTo);
assertTrue("Unexpected class " + fc.getClass().getName(), clazz.isInstance(fc));
return fc;
} }
final protected TreeItem checkTreeNode(Tree tree, int i0, String label) { final protected TreeItem checkTreeNode(Tree tree, int i0, String label) {
@ -272,5 +287,4 @@ public class BaseUITestCase extends BaseTestCase {
assertEquals(label, item.getText()); assertEquals(label, item.getText());
return item; return item;
} }
} }

View file

@ -42,7 +42,7 @@ public class CallHierarchyBugs extends CallHierarchyBaseTest {
protected void setUp() throws Exception { protected void setUp() throws Exception {
super.setUp(); super.setUp();
showCDTPerspective(); restoreAllParts();
} }
// class SomeClass { // class SomeClass {

View file

@ -20,7 +20,7 @@ public class CallHierarchyTestSuite extends TestSuite {
} }
public CallHierarchyTestSuite() { public CallHierarchyTestSuite() {
super("Tests in package org.eclipse.cdt.ui.tests.callhierarchy"); super(CallHierarchyTestSuite.class.getName());
addTest(BasicCallHierarchyTest.suite()); addTest(BasicCallHierarchyTest.suite());
addTest(BasicCppCallHierarchyTest.suite()); addTest(BasicCppCallHierarchyTest.suite());
addTest(InitializersInCallHierarchyTest.suite()); addTest(InitializersInCallHierarchyTest.suite());