/* * Deploy and undeploy quickstart on running server */ protected void deployUndeployQuickstart(Quickstart qstart, String serverName) { new ConsoleView().clearConsole(); ProjectExplorer explorer = new ProjectExplorer(); findDeployableProjects(qstart, explorer); ServersView serversView = new ServersView(); serversView.open(); String fullServerName = getServerFullName(serversView.getServers(), serverName); Server server = serversView.getServer(fullServerName); for (String deployableProjectName : qstart.getDeployableProjectNames()) { try { // deploy deployProject(deployableProjectName, explorer); // check deploy status checkDeployedProject(qstart, fullServerName); // undeploy unDeployModule( qstart.getName().equals("template") ? "QUICKSTART_NAME" : qstart.getName(), server); } catch (CoreLayerException ex) { new DefaultShell("Server Error"); new OkButton().click(); } } }
/** * Checks whether is project deployed properly. * * @param projectName * @param serverNameLabel */ public void checkDeployedProject(Quickstart qstart, String serverNameLabel) { if (!qstart.getName().contains("ejb-timer") && !qstart.getName().contains("cluster-ha-singleton")) { new WaitWhile(new JobIsRunning()); new WaitUntil(new ConsoleHasNoChange(TimePeriod.LONG), TimePeriod.VERY_LONG); } JBossServerView serversView = new JBossServerView(); serversView.open(); String moduleName = qstart.getName().equals("template") ? "QUICKSTART_NAME" : qstart.getName(); JBossServerModule module = (JBossServerModule) serversView .getServer(serverNameLabel) .getModule(new RegexMatcher(".*" + moduleName + ".*")); // cannot // be // used // projectName // - // issues // with // parent // projects if (new ContextMenu("Show In", "Web Browser").isEnabled()) { module.openWebPage(); final BrowserEditor browser = new BrowserEditor(new RegexMatcher(".*")); try { new WaitUntil(new BrowserIsnotEmpty(browser)); } catch (WaitTimeoutExpiredException e) { // try to refresh browser and wait one more time. browser.refreshPage(); new WaitUntil(new BrowserIsnotEmpty(browser)); } // Now the browser should not be empty. Let's check for error // messages // (strings like "404") checkBrowserForErrorPage(browser); assertNotEquals("", browser.getText()); new DefaultEditor().close(); } checkConsoleForException(); checkServerViewForStatus(moduleName, serverNameLabel); }
private void importTestUtilsIfNeeded(Quickstart qstart) { for (String error : ExamplesOperator.getInstance().getAllErrors()) { if (error.contains("Missing artifact org.javaee7:test-utils")) { Quickstart testUtils = new Quickstart( "test-utils", qstart.getPath().getAbsolutePath().replace(qstart.getName(), "test-utils")); importQuickstart(testUtils); break; } if (error.contains("Missing artifact org.javaee7:util")) { Quickstart testUtils = new Quickstart( "util", qstart.getPath().getAbsolutePath().replace(qstart.getName(), "test-utils")); importQuickstart(testUtils); break; } } }
private void findDeployableProjects(Quickstart qstart, ProjectExplorer explorer) { explorer.activate(); for (Project project : explorer.getProjects()) { explorer.getProject(project.getName()).select(); try { if (new ContextMenu("Run As", "1 Run on Server").isEnabled()) { qstart.addDeployableProjectName(project.getName()); } new WizardDialog().finish(); } catch (CoreLayerException ex) { continue; // non deployable project } } }
protected void importQuickstart(Quickstart quickstart) throws NoProjectException { ExtendedMavenImportWizard mavenImportWizard = new ExtendedMavenImportWizard(); mavenImportWizard.open(); MavenImportWizardFirstPage wizPage = new MavenImportWizardFirstPage(); try { wizPage.setRootDirectory(quickstart.getPath().getAbsolutePath()); } catch (WaitTimeoutExpiredException e) { cleanupShells(); throw new NoProjectException(); } try { mavenImportWizard.finish(); } catch (MavenImportWizardException e) { for (String error : e.getErrors()) { reporter.addError(quickstart, error); } } }