com.atlassian.jira.webtest.framework.impl.selenium.page.admin.plugins
Class AbstractSeleniumPluginsTab<T extends PluginsTab<T>>

java.lang.Object
  extended by com.atlassian.jira.webtest.framework.impl.selenium.core.SeleniumContextAware
      extended by com.atlassian.jira.webtest.framework.impl.selenium.core.AbstractSeleniumPageObject
          extended by com.atlassian.jira.webtest.framework.impl.selenium.core.AbstractLocatorBasedPageObject
              extended by com.atlassian.jira.webtest.framework.impl.selenium.page.AbstractSeleniumPageSection<Plugins>
                  extended by com.atlassian.jira.webtest.framework.impl.selenium.page.admin.plugins.AbstractSeleniumPluginsTab<T>
All Implemented Interfaces:
Component<Plugins>, Openable<T>, PageObject, PluginsTab<T>, PageSection<Plugins>
Direct Known Subclasses:
SeleniumAuditLogTab, SeleniumDeveloperTab, SeleniumInstallPlugins, SeleniumJIRAUpgradeCheckPlugins, SeleniumManageExistingPlugins

public abstract class AbstractSeleniumPluginsTab<T extends PluginsTab<T>>
extends AbstractSeleniumPageSection<Plugins>
implements PluginsTab<T>

TODO: Document this class / interface here

Since:
v4.3

Field Summary
protected  Locator openLinkLocator
           
protected  SeleniumLocator openTabLocator
           
protected  String tabId
           
 
Fields inherited from class com.atlassian.jira.webtest.framework.impl.selenium.core.SeleniumContextAware
assertThat, client, context, timeouts
 
Constructor Summary
protected AbstractSeleniumPluginsTab(SeleniumContext context, Plugins plugins, String tabId, String linkId)
           
 
Method Summary
protected  SeleniumLocator detector()
          Main locator of this page object.
 TimedCondition isClosed()
          A timed condition that queries, whether this component is currently closed.
 TimedCondition isOpen()
          Checks if this component is open.
 TimedCondition isOpenable()
           Represents a question: is this component capable of being opened in the current test context?
 T open()
           Open this component and return this instance.
 
Methods inherited from class com.atlassian.jira.webtest.framework.impl.selenium.page.AbstractSeleniumPageSection
page, parent
 
Methods inherited from class com.atlassian.jira.webtest.framework.impl.selenium.core.AbstractLocatorBasedPageObject
isReady
 
Methods inherited from class com.atlassian.jira.webtest.framework.impl.selenium.core.AbstractSeleniumPageObject
body, conditions, css, forClass, id, jQuery, locatorFor, name, queries, waitFor, xpath
 
Methods inherited from class com.atlassian.jira.webtest.framework.impl.selenium.core.SeleniumContextAware
context
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.atlassian.jira.webtest.framework.page.PageSection
page
 
Methods inherited from interface com.atlassian.jira.webtest.framework.core.component.Component
parent
 
Methods inherited from interface com.atlassian.jira.webtest.framework.core.PageObject
context, isReady
 

Field Detail

tabId

protected final String tabId

openLinkLocator

protected final Locator openLinkLocator

openTabLocator

protected final SeleniumLocator openTabLocator
Constructor Detail

AbstractSeleniumPluginsTab

protected AbstractSeleniumPluginsTab(SeleniumContext context,
                                     Plugins plugins,
                                     String tabId,
                                     String linkId)
Method Detail

isOpen

public TimedCondition isOpen()
Description copied from interface: Openable
Checks if this component is open.

Specified by:
isOpen in interface Openable<T extends PluginsTab<T>>
Returns:
timed condition representing a query if this component is open
See Also:
TimedCondition

isClosed

public TimedCondition isClosed()
Description copied from interface: Openable
A timed condition that queries, whether this component is currently closed.

Specified by:
isClosed in interface Openable<T extends PluginsTab<T>>
Returns:
timed condition: is this component closed?
See Also:
TimedCondition

isOpenable

public TimedCondition isOpenable()
Description copied from interface: Openable

Represents a question: is this component capable of being opened in the current test context?

If the returned condition evaluates to true, this component may be safely opened by means of Openable.open().

NOTE: if Openable.isOpen() evaluates to true, this condition will automatically evaluate to false, as it is not possible to open a component that is already open.

Specified by:
isOpenable in interface Openable<T extends PluginsTab<T>>
Returns:
timed condition: is this component openable in the current context?

open

public T open()
Description copied from interface: Openable

Open this component and return this instance.

A pre-condition for this action is that the Openable.isClosed() and Openable.isOpenable() condition is met.

NOTE: this method, like most action methods in the framework, does not verify its results (as opposed to pre-conditions), as in some cases it might be legitimate to attempt to open a component given the test context state deliberately set up to make this attempt fail and then verify that the failure did happen. Thus, invoking clients are responsible for validation results of this action, which may be done by calling Openable.isOpen().

Specified by:
open in interface Openable<T extends PluginsTab<T>>
Returns:
timed query for this component's instance

detector

protected SeleniumLocator detector()
Description copied from class: AbstractLocatorBasedPageObject
Main locator of this page object. Its presence means that this object is ready to be manipulated in the test.

Specified by:
detector in class AbstractLocatorBasedPageObject
Returns:
main locator of this page object


Copyright © 2002-2012 Atlassian. All Rights Reserved.