object
PageHolder
Value Members
-
final
def
!=(arg0: AnyRef): Boolean
-
final
def
!=(arg0: Any): Boolean
-
final
def
##(): Int
-
final
def
==(arg0: AnyRef): Boolean
-
final
def
==(arg0: Any): Boolean
-
-
final
def
asInstanceOf[T0]: T0
-
def
clone(): AnyRef
-
final
def
eq(arg0: AnyRef): Boolean
-
def
equals(arg0: Any): Boolean
-
def
finalize(): Unit
-
final
def
getClass(): Class[_]
-
def
hashCode(): Int
-
final
def
isInstanceOf[T0]: Boolean
-
final
def
ne(arg0: AnyRef): Boolean
-
final
def
notify(): Unit
-
final
def
notifyAll(): Unit
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
-
def
toString(): String
-
final
def
wait(): Unit
-
final
def
wait(arg0: Long, arg1: Int): Unit
-
final
def
wait(arg0: Long): Unit
-
def
withPageHolder[S](pageHolder: PageHolder)(thunk: ⇒ S): S
Inherited from AnyRef
Inherited from Any
While instantiating a Page the PageHolder will be stored here.
This allowes a cleaner syntax for PageObjects without passing the PageHolder around.
Because of this it is only allowed to create PageObjects for arguments passed to
PageBrowser.to(page)
,PageBrowser.via(page)
,PageBrowser.at(page)
,PageBrowser.isAt(page)
orUnexpectedPages
This allows the PageObject to be completely stateless, only the PageHolder owns a state (the active Page). Because a PageObject needs a reference to the PageHolder to ask for the WebDriver, and this should not be mutable, this information needs to be passed at creation time. Because we do not want to write boilerplate code for PageObjects, this PageHolder object is used.