public Workflow(List<PageElement> columns, WorkflowStatus status) { if (columns == null || columns.size() < 5) { throw new IllegalArgumentException("Not valid workflow row"); } final PageElement nameElement = columns.get(0); name = nameElement.find(By.tagName("strong")).getText(); description = nameElement.find(By.className("secondary-text")).getText(); boolean isDraft = nameElement.find(By.tagName("img")).isPresent(); numberOfSteps = Integer.parseInt(columns.get(3).getText()); this.status = isDraft ? WorkflowStatus.DRAFT : status; final PageElement operationsElements = columns.get(4); copyElement = operationsElements.find(By.id(String.format("copy_%s", name))); }
@Init public void init() { formElement = locator.find(formLocator); nameElement = formElement.find(By.name("name")); descriptionElement = formElement.find(By.name("description")); addButton = formElement.find(By.name("Add")); issueTypeRadio = formElement.find(By.cssSelector("input.radio[value='']")); subtaskRadio = formElement.find(By.cssSelector("input.radio[value='jira_subtask']")); cancelLink = formElement.find(By.cssSelector("a.cancel")); iconPicker = pageBinder.bind(IconPicker.class, "issue-type-icon-picker"); }
private void toggleModule(PageElement element) { element.find(By.tagName("h3")).click(); }
/** * Clicks the specified operation in the drop down. * * @param operation the link text to click */ public void click(final String operation) { rootMenuElement.find(By.linkText(operation)).click(); }
public DeleteOperation clickDelete() { rootMenuElement.find(By.className("project-config-operations-delete")).click(); return binder.bind(DeleteOperation.class, id); }
/** * Checks if the drop down has the specified operation * * @param operation the link text used to check for operation existence, e.g. "Edit Details" * @return true, if a link with the specified link text exists */ public boolean hasOperation(final String operation) { PageElement menuItem = rootMenuElement.find(By.linkText(operation)); return menuItem.isPresent() && menuItem.isVisible(); }
@Override public TimedCondition isAt() { return Conditions.and( advancedPropertiesTable.timed().isPresent(), advancedPropertiesTable.find(By.cssSelector(".aui-restfultable-row")).timed().isPresent()); }
private PageElement getTriggerElement() { return container.find(By.cssSelector(".shared-item-trigger")); }