org.iainhull.resttest

TestDriver

Related Doc: package resttest

trait TestDriver extends AnyRef

The test driver defines the Api.HttpClient and initial Api.RequestBuilder used to execute Rest Tests.

Users mix-in their preferred TestDriver implementation, to execute their tests.

class PersonSpec extends FlatSpec {
  this: TestDriver =>

  val EmptyList = Seq[Person]()

  "/person (collection)" should "be empty" in {
    GET / "person" asserting (StatusCode === Status.OK, BodyAsPersonList === EmptyList)
  }
}

class PersonUnitSpec extends PersonSpec with SprayUnitTestDriver with MyService

class PersonSystemSpec extends PersonSpec with JerseySystemTestDriver {
  override val baseUrl = "http://localhost:9000"
}

Subclasses implement the interface supplying a httpClient to execute the Requests and a defBuilder which provides the base configuration for all tests. All tests should support relative paths, this enables the same test code to be executed as a unit test and a system test. To support this the defBuilder for system test drivers should supply the baseUrl some how.

Linear Supertypes
AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. TestDriver
  2. AnyRef
  3. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Abstract Value Members

  1. implicit abstract def defBuilder: RequestBuilder

    The default RequestBuilder, common to all tests

  2. implicit abstract def httpClient: HttpClient

    The httpClient to execute Requests

Concrete Value Members

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

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

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

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

    Definition Classes
    Any
  5. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  7. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  8. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  9. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  10. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  11. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  12. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  13. final def notify(): Unit

    Definition Classes
    AnyRef
  14. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  15. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  16. def toString(): String

    Definition Classes
    AnyRef → Any
  17. final def wait(): Unit

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped