Selenium: remove project state checking after workspace restarting from ProjectStateAfterRefreshTest test (#8930)
parent
188bd5be2c
commit
17d840e993
|
|
@ -10,8 +10,7 @@
|
|||
*/
|
||||
package org.eclipse.che.selenium.workspaces;
|
||||
|
||||
import static org.eclipse.che.selenium.core.constant.TestMenuCommandsConstants.Workspace.STOP_WORKSPACE;
|
||||
import static org.eclipse.che.selenium.core.constant.TestMenuCommandsConstants.Workspace.WORKSPACE;
|
||||
import static org.eclipse.che.selenium.core.project.ProjectTemplates.MAVEN_SPRING;
|
||||
import static org.testng.Assert.fail;
|
||||
|
||||
import com.google.inject.Inject;
|
||||
|
|
@ -20,14 +19,11 @@ import java.nio.file.Paths;
|
|||
import org.eclipse.che.commons.lang.NameGenerator;
|
||||
import org.eclipse.che.selenium.core.SeleniumWebDriver;
|
||||
import org.eclipse.che.selenium.core.client.TestProjectServiceClient;
|
||||
import org.eclipse.che.selenium.core.project.ProjectTemplates;
|
||||
import org.eclipse.che.selenium.core.workspace.TestWorkspace;
|
||||
import org.eclipse.che.selenium.pageobject.CodenvyEditor;
|
||||
import org.eclipse.che.selenium.pageobject.Consoles;
|
||||
import org.eclipse.che.selenium.pageobject.Ide;
|
||||
import org.eclipse.che.selenium.pageobject.Menu;
|
||||
import org.eclipse.che.selenium.pageobject.ProjectExplorer;
|
||||
import org.eclipse.che.selenium.pageobject.ToastLoader;
|
||||
import org.openqa.selenium.TimeoutException;
|
||||
import org.testng.annotations.BeforeClass;
|
||||
import org.testng.annotations.Test;
|
||||
|
|
@ -42,8 +38,6 @@ public class ProjectStateAfterRefreshTest {
|
|||
@Inject private Consoles consoles;
|
||||
@Inject private CodenvyEditor editor;
|
||||
@Inject private TestProjectServiceClient testProjectServiceClient;
|
||||
@Inject private Menu menu;
|
||||
@Inject private ToastLoader toastLoader;
|
||||
@Inject private SeleniumWebDriver seleniumWebDriver;
|
||||
|
||||
@BeforeClass
|
||||
|
|
@ -51,42 +45,22 @@ public class ProjectStateAfterRefreshTest {
|
|||
URL resource =
|
||||
ProjectStateAfterRefreshTest.this.getClass().getResource("/projects/guess-project");
|
||||
testProjectServiceClient.importProject(
|
||||
workspace.getId(),
|
||||
Paths.get(resource.toURI()),
|
||||
PROJECT_NAME,
|
||||
ProjectTemplates.MAVEN_SPRING);
|
||||
workspace.getId(), Paths.get(resource.toURI()), PROJECT_NAME, MAVEN_SPRING);
|
||||
ide.open(workspace);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void checkRestoreStateOfProjectAfterRefreshTest() throws Exception {
|
||||
public void checkRestoreStateOfProjectAfterRefreshTest() {
|
||||
ide.waitOpenedWorkspaceIsReadyToUse();
|
||||
projectExplorer.waitItem(PROJECT_NAME);
|
||||
projectExplorer.quickExpandWithJavaScript();
|
||||
consoles.closeProcessesArea();
|
||||
|
||||
openFilesInEditor();
|
||||
checkFilesAreOpened();
|
||||
|
||||
seleniumWebDriver.navigate().refresh();
|
||||
try {
|
||||
checkFilesAreOpened();
|
||||
} catch (TimeoutException ex) {
|
||||
// Remove try-catch block after issue has been resolved
|
||||
fail("Known issue https://github.com/eclipse/che/issues/7551");
|
||||
}
|
||||
editor.closeAllTabsByContextMenu();
|
||||
}
|
||||
|
||||
@Test(priority = 1)
|
||||
public void checkRestoreStateAfterStoppingWorkspaceTest() throws Exception {
|
||||
// check state project without snapshot
|
||||
projectExplorer.waitProjectExplorer();
|
||||
projectExplorer.quickExpandWithJavaScript();
|
||||
openFilesInEditor();
|
||||
menu.runCommand(WORKSPACE, STOP_WORKSPACE);
|
||||
toastLoader.waitToastLoaderIsOpen();
|
||||
toastLoader.waitExpectedTextInToastLoader("Workspace is not running");
|
||||
toastLoader.clickOnStartButton();
|
||||
projectExplorer.waitProjectExplorer();
|
||||
ide.waitOpenedWorkspaceIsReadyToUse();
|
||||
projectExplorer.waitItem(PROJECT_NAME);
|
||||
|
||||
try {
|
||||
checkFilesAreOpened();
|
||||
|
|
@ -98,23 +72,23 @@ public class ProjectStateAfterRefreshTest {
|
|||
editor.closeAllTabsByContextMenu();
|
||||
}
|
||||
|
||||
@Test(priority = 2)
|
||||
public void checkRestoreStateOfProjectIfPomXmlFileOpened() throws Exception {
|
||||
projectExplorer.waitProjectExplorer();
|
||||
@Test
|
||||
public void checkRestoreStateOfProjectIfPomXmlFileOpened() {
|
||||
ide.waitOpenedWorkspaceIsReadyToUse();
|
||||
projectExplorer.waitItem(PROJECT_NAME);
|
||||
projectExplorer.selectItem(PROJECT_NAME);
|
||||
projectExplorer.quickExpandWithJavaScript();
|
||||
|
||||
projectExplorer.waitItem(PROJECT_NAME + "/pom.xml");
|
||||
projectExplorer.waitItem(PROJECT_NAME + "/src/main/webapp/WEB-INF");
|
||||
projectExplorer.waitItem(PROJECT_NAME + "/src/main/webapp/WEB-INF/jsp");
|
||||
projectExplorer.openItemByPath(PROJECT_NAME + "/pom.xml");
|
||||
editor.waitActive();
|
||||
projectExplorer.waitProjectExplorer();
|
||||
|
||||
seleniumWebDriver.navigate().refresh();
|
||||
|
||||
projectExplorer.waitProjectExplorer();
|
||||
ide.waitOpenedWorkspaceIsReadyToUse();
|
||||
projectExplorer.waitItem(PROJECT_NAME);
|
||||
|
||||
try {
|
||||
editor.waitTabIsPresent("qa-spring-sample");
|
||||
} catch (TimeoutException ex) {
|
||||
|
|
@ -124,6 +98,7 @@ public class ProjectStateAfterRefreshTest {
|
|||
projectExplorer.waitItem(PROJECT_NAME + "/pom.xml");
|
||||
projectExplorer.waitItem(PROJECT_NAME + "/src/main/webapp/WEB-INF");
|
||||
projectExplorer.waitItem(PROJECT_NAME + "/src/main/webapp/WEB-INF/jsp");
|
||||
|
||||
editor.closeAllTabsByContextMenu();
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -13,6 +13,7 @@ package org.eclipse.che.selenium.workspaces;
|
|||
import static org.eclipse.che.selenium.core.constant.TestMenuCommandsConstants.Workspace.STOP_WORKSPACE;
|
||||
import static org.eclipse.che.selenium.core.constant.TestMenuCommandsConstants.Workspace.WORKSPACE;
|
||||
import static org.eclipse.che.selenium.core.project.ProjectTemplates.MAVEN_SPRING;
|
||||
import static org.testng.Assert.fail;
|
||||
|
||||
import com.google.inject.Inject;
|
||||
import java.net.URL;
|
||||
|
|
@ -23,10 +24,10 @@ import org.eclipse.che.selenium.core.workspace.TestWorkspace;
|
|||
import org.eclipse.che.selenium.pageobject.CodenvyEditor;
|
||||
import org.eclipse.che.selenium.pageobject.Consoles;
|
||||
import org.eclipse.che.selenium.pageobject.Ide;
|
||||
import org.eclipse.che.selenium.pageobject.Loader;
|
||||
import org.eclipse.che.selenium.pageobject.Menu;
|
||||
import org.eclipse.che.selenium.pageobject.ProjectExplorer;
|
||||
import org.eclipse.che.selenium.pageobject.ToastLoader;
|
||||
import org.openqa.selenium.TimeoutException;
|
||||
import org.testng.annotations.BeforeClass;
|
||||
import org.testng.annotations.Test;
|
||||
|
||||
|
|
@ -35,12 +36,10 @@ public class ProjectStateAfterWorkspaceRestartTest {
|
|||
private static final String PROJECT_NAME = NameGenerator.generate("project", 4);
|
||||
private static final String EXP_TEXT_NOT_PRESENT =
|
||||
"@Override\n" + " public ModelAndView handleRequest";
|
||||
private boolean passedState = false;
|
||||
|
||||
@Inject private TestWorkspace workspace;
|
||||
@Inject private Ide ide;
|
||||
@Inject private ProjectExplorer projectExplorer;
|
||||
@Inject private Loader loader;
|
||||
@Inject private Consoles consoles;
|
||||
@Inject private ToastLoader toastLoader;
|
||||
@Inject private Menu menu;
|
||||
|
|
@ -60,46 +59,55 @@ public class ProjectStateAfterWorkspaceRestartTest {
|
|||
|
||||
@Test
|
||||
public void checkProjectAfterStopStartWs() {
|
||||
// create workspace from dashboard
|
||||
ide.waitOpenedWorkspaceIsReadyToUse();
|
||||
projectExplorer.waitItem(PROJECT_NAME);
|
||||
projectExplorer.selectItem(PROJECT_NAME);
|
||||
projectExplorer.quickExpandWithJavaScript();
|
||||
projectExplorer.openItemByPath(PROJECT_NAME + "/src/main/webapp/index.jsp");
|
||||
editor.waitActive();
|
||||
projectExplorer.openItemByPath(
|
||||
PROJECT_NAME + "/src/main/java/org/eclipse/qa/examples/AppController.java");
|
||||
editor.waitActive();
|
||||
loader.waitOnClosed();
|
||||
|
||||
openFilesInEditor();
|
||||
|
||||
// stop and start workspace
|
||||
menu.runCommand(WORKSPACE, STOP_WORKSPACE);
|
||||
loader.waitOnClosed();
|
||||
toastLoader.waitToastLoaderIsOpen();
|
||||
toastLoader.waitExpectedTextInToastLoader("Workspace is not running");
|
||||
loader.waitOnClosed();
|
||||
consoles.closeProcessesArea();
|
||||
editor.waitTabIsNotPresent("AppController");
|
||||
editor.waitTabIsNotPresent("index.jsp");
|
||||
projectExplorer.waitProjectExplorer();
|
||||
projectExplorer.waitDisappearItemByPath(PROJECT_NAME);
|
||||
toastLoader.waitExpectedTextInToastLoader("Workspace is not running");
|
||||
toastLoader.clickOnStartButton();
|
||||
|
||||
// check state of the project
|
||||
toastLoader.clickOnStartButton();
|
||||
ide.waitOpenedWorkspaceIsReadyToUse();
|
||||
toastLoader.waitToastLoaderIsClosed();
|
||||
loader.waitOnClosed();
|
||||
projectExplorer.waitItem(PROJECT_NAME);
|
||||
projectExplorer.waitItem(PROJECT_NAME + "/src/main/java/org/eclipse/qa/examples");
|
||||
editor.waitTabIsPresent("AppController");
|
||||
editor.waitTabIsPresent("index.jsp");
|
||||
projectExplorer.waitItem(
|
||||
PROJECT_NAME + "/src/main/java/org/eclipse/qa/examples/AppController.java");
|
||||
projectExplorer.waitItem(PROJECT_NAME + "/src/main/webapp/index.jsp");
|
||||
|
||||
try {
|
||||
// check state of the project
|
||||
checkFilesAreOpened();
|
||||
} catch (TimeoutException ex) {
|
||||
// Remove try-catch block after issue has been resolved
|
||||
fail("Known issue https://github.com/eclipse/che/issues/7551");
|
||||
}
|
||||
|
||||
projectExplorer.openItemByPath(PROJECT_NAME + "/README.md");
|
||||
editor.waitActive();
|
||||
editor.waitTextNotPresentIntoEditor(EXP_TEXT_NOT_PRESENT);
|
||||
editor.waitTextIntoEditor("Developer Workspace");
|
||||
}
|
||||
|
||||
private void openFilesInEditor() {
|
||||
projectExplorer.openItemByPath(PROJECT_NAME + "/src/main/webapp/index.jsp");
|
||||
editor.waitActive();
|
||||
projectExplorer.openItemByPath(
|
||||
PROJECT_NAME + "/src/main/java/org/eclipse/qa/examples/AppController.java");
|
||||
editor.waitActive();
|
||||
projectExplorer.openItemByPath(PROJECT_NAME + "/pom.xml");
|
||||
editor.waitActive();
|
||||
}
|
||||
|
||||
private void checkFilesAreOpened() {
|
||||
projectExplorer.waitItem(PROJECT_NAME + "/src/main/webapp/WEB-INF");
|
||||
projectExplorer.waitItem(PROJECT_NAME + "/src/main/webapp/WEB-INF/jsp");
|
||||
projectExplorer.waitItem(PROJECT_NAME + "/src/main/webapp/index.jsp");
|
||||
projectExplorer.waitItem(
|
||||
PROJECT_NAME + "/src/main/java/org/eclipse/qa/examples/AppController.java");
|
||||
editor.waitTabIsPresent("index.jsp");
|
||||
editor.waitTabIsPresent("AppController");
|
||||
editor.waitTabIsPresent("qa-spring-sample");
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue