// DONE! public SWTBotGefEditPart addValidate(SWTBotGefEditPart toPart, String name, String... variables) { appendActivity(toPart, "Validate", name); SWTBot propsBot = propsView.bot(); propsView.selectTab(1); propsBot.button("Add").click(); SWTBotShell shell = bot.shell("Select Variable").activate(); SWTBot viewBot = shell.bot(); SWTBotTable table = viewBot.table(); table.select(variables); viewBot.button("OK").click(); save(); SWTBotGefEditPart added = getEditPart(toPart, name); // log.info("Added [part=" + added + ", name=" + name + "]"); return added; }
/** Test color by making all events yellow */ @Test public void testYellow() { SWTBotView viewBot = fBot.viewById(ColorsView.ID); viewBot.setFocus(); final String insert = "Insert new color setting"; final String increasePriority = "Increase priority"; final String decreasePriority = "Decrease priority"; final String delete = "Delete color setting"; viewBot.toolbarButton(insert).click(); viewBot.toolbarButton(insert).click(); viewBot.toolbarButton(insert).click(); viewBot.toolbarButton(insert).click(); viewBot.toolbarButton(increasePriority).click(); viewBot.toolbarButton(decreasePriority).click(); viewBot.toolbarButton(delete).click(); viewBot.bot().label(0).setFocus(); viewBot.toolbarButton(delete).click(); viewBot.bot().label(0).setFocus(); viewBot.toolbarButton(delete).click(); final RGB foreground = new RGB(0, 0, 0); final RGB background = new RGB(255, 255, 0); // Simulate the side effects of picking a color because we cannot // control native Color picker dialog in SWTBot. final ColorSetting[] cs = new ColorSetting[1]; UIThreadRunnable.syncExec( new VoidResult() { @Override public void run() { cs[0] = new ColorSetting(foreground, background, foreground, new PassAll()); ColorSettingsManager.setColorSettings(cs); } }); final SWTBotTable eventsEditor = SWTBotUtils.activeEventsEditor(fBot).bot().table(); // should fix race condition of loading the trace SWTBotUtils.waitForJobs(); eventsEditor.select(2); final SWTBotTableItem tableItem = eventsEditor.getTableItem(2); RGB fgc = UIThreadRunnable.syncExec( new Result<RGB>() { @Override public RGB run() { return tableItem.widget.getForeground().getRGB(); } }); RGB bgc = UIThreadRunnable.syncExec( new Result<RGB>() { @Override public RGB run() { return tableItem.widget.getBackground().getRGB(); } }); assertEquals("Fg", foreground, fgc); assertEquals("Bg", background, bgc); // reset color settings UIThreadRunnable.syncExec( new VoidResult() { @Override public void run() { ColorSettingsManager.setColorSettings(new ColorSetting[0]); } }); }