Class

org.scalatestplus.play.BrowserFactory

UnavailableDriver

Related Doc: package BrowserFactory

Permalink

case class UnavailableDriver(ex: Option[Throwable], errorMessage: String) extends GrumpyDriver with Product with Serializable

An implementation of WebDriver that provides an optional exception and an error message and throws UnsupportedOperationException from all of its other methods, used when a requested Selenium WebDriver is unavailable on the host platform.

Traits OneBrowserPerSuite, OneBrowserPerTest, AllBrowsersPerTest, and MixedFixtures check if the requested WebDriver is available, and if not, installs this driver (to avoid initializing with null) and cancels the tests.

This is an example of the "Null Object Pattern." We use this pattern to avoid initializing with null instead of making the driver type an Option[WebDriver] for two reasons: 1) the type of the implicit needed by Selenium is WebDriver, not Option[WebDriver], and 2) the Null Object we provide also carries an optional exception and user-friendly error message.

Source
BrowserFactory.scala
Linear Supertypes
Serializable, Serializable, Product, Equals, GrumpyDriver, WebDriver, SearchContext, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. UnavailableDriver
  2. Serializable
  3. Serializable
  4. Product
  5. Equals
  6. GrumpyDriver
  7. WebDriver
  8. SearchContext
  9. AnyRef
  10. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new UnavailableDriver(ex: Option[Throwable], errorMessage: String)

    Permalink

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  5. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. final def close(): Unit

    Permalink

    Throws UnsupportedOperationException.

    Throws UnsupportedOperationException.

    Definition Classes
    GrumpyDriver → WebDriver
  7. def complain(): Nothing

    Permalink

    Throws UnsupportedOperationException with an appropriate error message and, optionally, cause.

    Throws UnsupportedOperationException with an appropriate error message and, optionally, cause.

    Attributes
    protected
    Definition Classes
    UnavailableDriverGrumpyDriver
  8. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  9. val errorMessage: String

    Permalink
  10. val ex: Option[Throwable]

    Permalink
  11. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  12. final def findElement(by: By): WebElement

    Permalink

    Throws UnsupportedOperationException.

    Throws UnsupportedOperationException.

    Definition Classes
    GrumpyDriver → WebDriver → SearchContext
  13. final def findElements(by: By): List[WebElement]

    Permalink

    Throws UnsupportedOperationException.

    Throws UnsupportedOperationException.

    Definition Classes
    GrumpyDriver → WebDriver → SearchContext
  14. final def get(url: String): Unit

    Permalink

    Throws UnsupportedOperationException.

    Throws UnsupportedOperationException.

    Definition Classes
    GrumpyDriver → WebDriver
  15. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  16. final def getCurrentUrl(): String

    Permalink

    Throws UnsupportedOperationException.

    Throws UnsupportedOperationException.

    Definition Classes
    GrumpyDriver → WebDriver
  17. final def getPageSource(): String

    Permalink

    Throws UnsupportedOperationException.

    Throws UnsupportedOperationException.

    Definition Classes
    GrumpyDriver → WebDriver
  18. final def getTitle(): String

    Permalink

    Throws UnsupportedOperationException.

    Throws UnsupportedOperationException.

    Definition Classes
    GrumpyDriver → WebDriver
  19. final def getWindowHandle(): String

    Permalink

    Throws UnsupportedOperationException.

    Throws UnsupportedOperationException.

    Definition Classes
    GrumpyDriver → WebDriver
  20. final def getWindowHandles(): Set[String]

    Permalink

    Throws UnsupportedOperationException.

    Throws UnsupportedOperationException.

    Definition Classes
    GrumpyDriver → WebDriver
  21. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  22. final def manage(): Options

    Permalink

    Throws UnsupportedOperationException.

    Throws UnsupportedOperationException.

    Definition Classes
    GrumpyDriver → WebDriver
  23. final def navigate(): Navigation

    Permalink

    Throws UnsupportedOperationException.

    Throws UnsupportedOperationException.

    Definition Classes
    GrumpyDriver → WebDriver
  24. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  25. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  26. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  27. final def quit(): Unit

    Permalink

    Throws UnsupportedOperationException.

    Throws UnsupportedOperationException.

    Definition Classes
    GrumpyDriver → WebDriver
  28. final def switchTo(): TargetLocator

    Permalink

    Throws UnsupportedOperationException.

    Throws UnsupportedOperationException.

    Definition Classes
    GrumpyDriver → WebDriver
  29. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  30. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  31. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  32. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from Serializable

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from GrumpyDriver

Inherited from WebDriver

Inherited from SearchContext

Inherited from AnyRef

Inherited from Any

Ungrouped