From 7be040c3ecface45e8143580f19ea45d4643ee5b Mon Sep 17 00:00:00 2001 From: anttil <anttil> Date: Wed, 26 Sep 2012 15:16:05 +0000 Subject: [PATCH] SWE-2 / SP-263: Fix Hudson run SVN: 26826 --- .../uitest/infra/webdriver/WidgetContext.java | 5 +++++ .../cisd/openbis/uitest/suite/SampleTypeTest.java | 2 +- .../cisd/openbis/uitest/suite/SeleniumTest.java | 13 +++++++++++-- .../cisd/openbis/uitest/widget/DropDown.java | 9 ++++++++- .../systemsx/cisd/openbis/uitest/widget/Text.java | 15 ++++++++++++++- 5 files changed, 39 insertions(+), 5 deletions(-) diff --git a/ui-test/source/java/ch/systemsx/cisd/openbis/uitest/infra/webdriver/WidgetContext.java b/ui-test/source/java/ch/systemsx/cisd/openbis/uitest/infra/webdriver/WidgetContext.java index f520d771c13..50da9ad351a 100644 --- a/ui-test/source/java/ch/systemsx/cisd/openbis/uitest/infra/webdriver/WidgetContext.java +++ b/ui-test/source/java/ch/systemsx/cisd/openbis/uitest/infra/webdriver/WidgetContext.java @@ -43,6 +43,11 @@ public class WidgetContext element.click(); } + public boolean isInteractable() + { + return element.isDisplayed() && element.isEnabled(); + } + public String getAttribute(String key) { return element.getAttribute(key); diff --git a/ui-test/source/java/ch/systemsx/cisd/openbis/uitest/suite/SampleTypeTest.java b/ui-test/source/java/ch/systemsx/cisd/openbis/uitest/suite/SampleTypeTest.java index b6718c197f4..0a1cae21676 100644 --- a/ui-test/source/java/ch/systemsx/cisd/openbis/uitest/suite/SampleTypeTest.java +++ b/ui-test/source/java/ch/systemsx/cisd/openbis/uitest/suite/SampleTypeTest.java @@ -57,7 +57,7 @@ public class SampleTypeTest extends SeleniumTest assertThat(sampleBrowser(), doesNotShowInToolBar(sampleType)); } - @Test(enabled = false) + @Test public void changingSampleTypeToBeListableMakesItVisibleInSampleBrowserDropDownMenu() { SampleType sampleType = create(aSampleType().thatIsNotListable()); diff --git a/ui-test/source/java/ch/systemsx/cisd/openbis/uitest/suite/SeleniumTest.java b/ui-test/source/java/ch/systemsx/cisd/openbis/uitest/suite/SeleniumTest.java index 53f00be5167..c4e56016f36 100644 --- a/ui-test/source/java/ch/systemsx/cisd/openbis/uitest/suite/SeleniumTest.java +++ b/ui-test/source/java/ch/systemsx/cisd/openbis/uitest/suite/SeleniumTest.java @@ -18,12 +18,14 @@ package ch.systemsx.cisd.openbis.uitest.suite; import static org.hamcrest.CoreMatchers.not; +import java.awt.Toolkit; import java.io.File; import java.io.IOException; import java.lang.reflect.Method; import java.util.concurrent.TimeUnit; import org.hamcrest.Matcher; +import org.openqa.selenium.Dimension; import org.openqa.selenium.TakesScreenshot; import org.openqa.selenium.WebDriver; import org.openqa.selenium.firefox.FirefoxDriver; @@ -89,7 +91,7 @@ import ch.systemsx.cisd.openbis.uitest.type.VocabularyBuilder; public abstract class SeleniumTest { - public static int IMPLICIT_WAIT = 20; + public static int IMPLICIT_WAIT = 30; public static String ADMIN_USER = "selenium"; @@ -105,7 +107,7 @@ public abstract class SeleniumTest protected GuiApplicationRunner openbis; - private ApplicationRunner openbisApi; + private static ApplicationRunner openbisApi; @BeforeSuite public void initWebDriver() throws Exception @@ -144,6 +146,13 @@ public abstract class SeleniumTest setImplicitWaitToDefault(); delete(new File("targets/dist")); driver.manage().deleteAllCookies(); + + Toolkit toolkit = Toolkit.getDefaultToolkit(); + Dimension screenResolution = + new Dimension((int) toolkit.getScreenSize().getWidth(), (int) toolkit + .getScreenSize().getHeight()); + driver.manage().window().setSize(screenResolution); + driver.get(startPage); uid = new DictionaryUidGenerator(new File("resource/corncob_lowercase.txt")); diff --git a/ui-test/source/java/ch/systemsx/cisd/openbis/uitest/widget/DropDown.java b/ui-test/source/java/ch/systemsx/cisd/openbis/uitest/widget/DropDown.java index 72fd3dbaa96..e777021d776 100644 --- a/ui-test/source/java/ch/systemsx/cisd/openbis/uitest/widget/DropDown.java +++ b/ui-test/source/java/ch/systemsx/cisd/openbis/uitest/widget/DropDown.java @@ -74,7 +74,14 @@ public class DropDown implements AtomicWidget, Fillable private List<WebElement> getChoiceElements() { context.click(); - return SeleniumTest.driver.findElements(By.className("x-combo-list-item")); + List<WebElement> wlist = + SeleniumTest.driver.findElements(By.className("x-combo-list-item")); + if (wlist.size() == 0) + { + System.out.println("dropdown retry"); + return getChoiceElements(); + } + return wlist; } @Override diff --git a/ui-test/source/java/ch/systemsx/cisd/openbis/uitest/widget/Text.java b/ui-test/source/java/ch/systemsx/cisd/openbis/uitest/widget/Text.java index 625a3d5e6bb..b707344d499 100644 --- a/ui-test/source/java/ch/systemsx/cisd/openbis/uitest/widget/Text.java +++ b/ui-test/source/java/ch/systemsx/cisd/openbis/uitest/widget/Text.java @@ -18,7 +18,6 @@ package ch.systemsx.cisd.openbis.uitest.widget; import ch.systemsx.cisd.openbis.uitest.infra.webdriver.WidgetContext; - /** * @author anttil */ @@ -39,6 +38,20 @@ public class Text implements AtomicWidget, Fillable public void append(String text) { + if (context.isInteractable() == false) + { + System.out.println("text retry"); + try + { + Thread.sleep(500); + } catch (InterruptedException ex) + { + // TODO Auto-generated catch block + ex.printStackTrace(); + } + append(text); + return; + } context.sendKeys(text); } -- GitLab