Packages

  • package root
    Definition Classes
    root
  • package zio
    Definition Classes
    root
  • package test

    _ZIO Test_ is a featherweight testing library for effectful programs.

    _ZIO Test_ is a featherweight testing library for effectful programs.

    The library imagines every spec as an ordinary immutable value, providing tremendous potential for composition. Thanks to tight integration with ZIO, specs can use resources (including those requiring disposal), have well- defined linear and parallel semantics, and can benefit from a host of ZIO combinators.

    import zio.test._
    import zio.clock.nanoTime
    import Assertion.isGreaterThan
    
    object MyTest extends DefaultRunnableSpec {
      def spec = suite("clock")(
        testM("time is non-zero") {
          assertM(nanoTime)(isGreaterThan(0))
        }
      )
    }
    Definition Classes
    zio
  • package mock
    Definition Classes
    test
  • ArgumentExpectation
  • Expectation
  • Invocation
  • Method
  • Mock
  • MockClock
  • MockConsole
  • MockException
  • MockRandom
  • MockSystem
  • Mockable
  • ReturnExpectation
  • Spyable

trait Spyable[A] extends Mockable[A]

Spyable[A] models the capability to spy on a service of type A. Implementations must define both a method environment to genereate a live environment given a mock and a method mock to generate a mock given a live environment. Given these definitions, it is possible to convert a service to a mock, see and modify state based on method calls, inputs, and outputs, and then convert the mock back to a live environment to spy on the service.

Self Type
Spyable[A]
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Spyable
  2. Mockable
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def environment(mock: Mock): Has[A]

    Provided a mock constructs a mock implementation of service A.

    Provided a mock constructs a mock implementation of service A.

    Definition Classes
    Mockable
  2. abstract def mock(environment: Has[A]): Mock

    Constructs a mock service from a live environment.

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[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  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[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  9. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  10. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  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
    Annotations
    @native()
  14. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  15. final def spy(environment: Has[A])(f: PartialFunction[Invocation[A, _, _], UIO[Unit]]): Has[A]

    Updates a live environment by spying on it using the specified partial function, which has the ability to see method calls, inputs, and outputs and update state based on them.

  16. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  17. def toString(): String
    Definition Classes
    AnyRef → Any
  18. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  19. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  20. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()

Inherited from Mockable[A]

Inherited from AnyRef

Inherited from Any

Ungrouped