From: Marc-Andre Laperle Date: Wed, 20 Jan 2016 05:43:34 +0000 (-0500) Subject: Print some environment information at the start of SWTBot X-Git-Url: http://git.efficios.com/?a=commitdiff_plain;h=2ad409b3317a1335f85cf3783911fb09da251fbd;p=deliverable%2Ftracecompass.git Print some environment information at the start of SWTBot This will help us investigate failing tests in the case where the environment differs from what is known to work. Change-Id: I4b6cf42355050bf57d420a5a95df4e1b35618fe2 Signed-off-by: Marc-Andre Laperle Reviewed-on: https://git.eclipse.org/r/64723 Reviewed-by: Patrick Tasse Tested-by: Patrick Tasse Reviewed-by: Hudson CI --- diff --git a/tmf/org.eclipse.tracecompass.tmf.ui.swtbot.tests/shared/org/eclipse/tracecompass/tmf/ui/swtbot/tests/shared/SWTBotUtils.java b/tmf/org.eclipse.tracecompass.tmf.ui.swtbot.tests/shared/org/eclipse/tracecompass/tmf/ui/swtbot/tests/shared/SWTBotUtils.java index 71995f8cc0..bb11e1d4d5 100644 --- a/tmf/org.eclipse.tracecompass.tmf.ui.swtbot.tests/shared/org/eclipse/tracecompass/tmf/ui/swtbot/tests/shared/SWTBotUtils.java +++ b/tmf/org.eclipse.tracecompass.tmf.ui.swtbot.tests/shared/org/eclipse/tracecompass/tmf/ui/swtbot/tests/shared/SWTBotUtils.java @@ -77,6 +77,7 @@ public final class SWTBotUtils { private static final String WINDOW_MENU = "Window"; private static final String PREFERENCES_MENU_ITEM = "Preferences"; + private static boolean fPrintedEnvironment = false; private SWTBotUtils() { } @@ -263,6 +264,7 @@ public final class SWTBotUtils { SWTWorkbenchBot bot = new SWTWorkbenchBot(); UIThreadRunnable.syncExec(() -> { + printEnvironment(); // There seems to be problems on some system where the main shell is // not in focus initially. This was seen using Xvfb and Xephyr on some occasions. @@ -277,6 +279,35 @@ public final class SWTBotUtils { }); } + private static void printEnvironment() { + if (fPrintedEnvironment) { + return; + } + + // Print some information about the environment that could affect test outcome + Rectangle bounds = Display.getDefault().getBounds(); + System.out.println("Display size: " + bounds.width + "x" + bounds.height); + + String osVersion = System.getProperty("os.version"); + if (osVersion != null) { + System.out.println("OS version=" + osVersion); + } + String gtkVersion = System.getProperty("org.eclipse.swt.internal.gtk.version"); + if (gtkVersion != null) { + System.out.println("GTK version=" + gtkVersion); + String overlayScrollbar = System.getenv("LIBOVERLAY_SCROLLBAR"); + if (overlayScrollbar != null) { + System.out.println("LIBOVERLAY_SCROLLBAR=" + overlayScrollbar); + } + String ubuntuMenuProxy = System.getenv("UBUNTU_MENUPROXY"); + if (ubuntuMenuProxy != null) { + System.out.println("UBUNTU_MENUPROXY=" + ubuntuMenuProxy); + } + } + + fPrintedEnvironment = true; + } + /** * If the test is running in the UI thread then fail */