public WebElementFacade waitUntilPresent() { try { waitForCondition().until(elementIsPresent()); } catch (TimeoutException timeout) { throwErrorWithCauseIfPresent(timeout, timeout.getMessage()); } return this; }
@Override public WebElementFacade waitUntilPresent() { try { if (!driverIsDisabled()) { waitForCondition().until(elementIsPresent()); } } catch (TimeoutException timeout) { throwShouldBePresentErrorWithCauseIfPresent(timeout, timeout.getMessage()); } return this; }
// Given the user is logged in // When the user selects the night mode toggle link, // Then the page will assume the opposite theme as what they had. @Test public void testToggleDarkMode() throws InterruptedException { login(); WebElement body = driver.findElement(By.tagName("body")); String className = body.getAttribute("class"); String colorOriginal = body.getCssValue("background-color"); String expect; if (className.equals("dark")) { expect = "light"; } else { expect = "dark"; } WebElement toggle = driver.findElement(By.id("nightmodetoggle")); toggle.click(); try { wait.until(ExpectedConditions.visibilityOfAllElementsLocatedBy(By.className(expect))); } catch (TimeoutException e) { fail(e.getMessage()); } WebElement body2 = driver.findElement(By.tagName("body")); String colorToggled = body2.getCssValue("background-color"); assertNotEquals(colorOriginal, colorToggled); }