@Override public <P> P bind(Class<P> pageClass, Object... args) { checkNotNull(pageClass); return delayedBind(pageClass, args).bind(); }
public RestoreCompleted waitForRestoreCompleted() { final long restoreStartTime = System.currentTimeMillis(); final DelayedBinder<RestoreCompleted> delayed = pageBinder.delayedBind(RestoreCompleted.class); while (!delayed.canBind()) { final long waitingTime = System.currentTimeMillis() - restoreStartTime; if (waitingTime > MAX_TIMEOUT_FOR_RESTORE) { // Don't allow test to take forever if the restore has trashed JIRA throw new AssertionError("The restore is taking too long!"); } } return delayed.bind(); } }
@Init public void init() { form = getDeplayed().bind(); }
@Init public void init() { form = getDeplayed().bind(); }
@Override public <P extends Page> P navigateToAndBind(Class<P> pageClass, Object... args) { checkNotNull(pageClass); DelayedBinder<P> binder = delayedBind(pageClass, args); P p = binder.get(); visitUrl(p); return binder.bind(); }
/** * Faster way of login when in testing environment by embedding the credentials in the url, * so we don't have to visit the login page every single time. */ public <M extends Page> M autoLoginEmbeddingCredentialsInUrl(UserWithDetails user, Class<M> destinationClass, Object... args) { checkNotNull(destinationClass); DelayedBinder<M> binder = pageBinder.delayedBind(destinationClass, args); M p = binder.get(); checkNotNull(p); URI uriBuilder = UriBuilder.fromUri(productInstance.getBaseUrl() + p.getUrl()) .queryParam("os_username", user.getUsername()) .queryParam("os_password", user.getPassword()) .build(); webDriverTester.gotoUrl(uriBuilder.toString()); return binder.bind(); }
public boolean isLoggedIn() { DelayedBinder<JiraHeader> header = pageBinder.delayedBind(JiraHeader.class); return header.canBind() && header.bind().isLoggedIn(); }
public boolean isAdmin() { DelayedBinder<JiraHeader> header = pageBinder.delayedBind(JiraHeader.class); return header.canBind() && header.bind().isAdmin(); }
public boolean isAdmin() { DelayedBinder<JiraHeader> header = pageBinder.delayedBind(JiraHeader.class); return header.canBind() ? header.bind().isAdmin() : false; } }
public boolean isLoggedIn() { DelayedBinder<JiraHeader> header = pageBinder.delayedBind(JiraHeader.class); return header.canBind() ? header.bind().isLoggedIn() : false; }
public boolean isLoggedIn() { DelayedBinder<ConfluenceHeader> header = pageBinder.delayedBind(ConfluenceHeader.class); return header.canBind() && header.bind().isLoggedIn(); }
public <P extends Page> P visitExternal(Class<P> pageClass, Object... args) { checkNotNull(pageClass); DelayedBinder<P> binder = pageBinder.delayedBind(pageClass, args); P p = binder.get(); checkNotNull(p); String pageUrl = p.getUrl(); try { getTester().gotoUrl(pageUrl); } catch (WebDriverException e) { throw new WebDriverException("Failed to load URL '" + pageUrl + "'", e); } return binder.bind(); }
public <P extends Page> P visit(Class<P> pageClass) { return visit(jira.getPageBinder().delayedBind(pageClass).bind().getUrl(), pageClass); }
public <P extends Page> P visit(Class<P> pageClass, Object... args) { return visit(jira.getPageBinder().delayedBind(pageClass, args).bind().getUrl(), pageClass, args); }
public ViewSpaceSummaryPage clickSpaceSummaryLink(Space space) { PageElement spaceDetailsLink = pageElementFinder.find(By.cssSelector(getSpaceRowSelector(space) + " a[href*='viewspacesummary']")); DelayedBinder<ViewSpaceSummaryPage> viewSpaceSummaryPageBinder = pageBinder.delayedBind( ViewSpaceSummaryPage.class, space); spaceDetailsLink.click(); return viewSpaceSummaryPageBinder.bind(); }
<TT extends T> TT openTab(Class<TT> tabClass, Object... args) { final DelayedBinder<TT> tab = pageBinder.delayedBind(tabClass, args); final PageElement link = tabLinkContainer.find(By.id(tab.inject().get().linkId())); stateTrue("Link " + link + " for tab " + tabClass.getName() + " not found", link.isPresent()); link.click(); final TT realTab = tab.bind(); waitUntilTrue(realTab.isOpen()); return realTab; }
public <M extends Page> M login(UserWithDetails user, Class<M> destinationClass, Object... args) { DelayedBinder<M> destination = pageBinder.delayedBind(destinationClass, args); String destUrl = TestProperties.getTestProperty("webappContext") + destination.get().getUrl(); if (destUrl.charAt(0) != '/') { destUrl = "/" + destUrl; } driver.executeScript("AJS.$('input[name=\\'dest-url\\']').val('" + destUrl + "')"); login(user.getUsername(), user.getPassword(), false); return destination.bind(); }
public <M extends Page> M login(UserWithDetails user, Class<M> destinationClass, Object... args) { DelayedBinder<M> destination = pageBinder.delayedBind(destinationClass, args); driver.executeScript("AJS.$('input[name=\\'os_destination\\']').val('" + destination.get().getUrl() + "')"); login(user.getUsername(), user.getPassword(), false); return destination.bind(); }
public <M extends Page> M login(UserWithDetails user, Class<M> destinationClass, Object... args) { DelayedBinder<M> destination = pageBinder.delayedBind(destinationClass, args); driver.executeScript("AJS.$('input[name=\\'os_destination\\']').val(" + "'/" + TestProperties.getTestProperty("webappContext") + destination.get().getUrl() + "')"); login(user.getUsername(), user.getPassword(), false); return destination.bind(); }
public <M extends Page> M loginWithRedirect(String username, String password, boolean rememberMe, boolean followRedirect, Class<M> nextPage, Object... args) { performLoginSteps(username, password, rememberMe); final PageElement redirect = getRedirect(); followRedirect = followRedirect && redirect.isPresent() && stripToNull(redirect.getValue()) != null; if (HomePage.class.isAssignableFrom(nextPage) || followRedirect) { return pageBinder.bind(nextPage, args); } else { final DelayedBinder<M> delayedPage = pageBinder.delayedBind(nextPage, args); if (delayedPage.canBind()) { return delayedPage.bind(); } else { return pageBinder.navigateToAndBind(nextPage, args); } } }