Object

zio.test.environment

TestSystem

Related Doc: package environment

Permalink

object TestSystem extends Serializable

TestSystem supports deterministic testing of effects involving system properties. Internally, TestSystem maintains mappings of environment variables and system properties that can be set and accessed. No actual environment variables or system properties will be accessed or set as a result of these actions.

import zio.system
import zio.test.environment.TestSystem

for {
  _      <- TestSystem.putProperty("java.vm.name", "VM")
  result <- system.property("java.vm.name")
} yield result == Some("VM")
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. TestSystem
  2. Serializable
  3. Serializable
  4. AnyRef
  5. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. final case class Data(properties: Map[String, String] = Map.empty, envs: Map[String, String] = Map.empty, lineSeparator: String = "\n") extends Product with Serializable

    Permalink

    The state of the TestSystem.

  2. trait Service extends Restorable

    Permalink
  3. final case class Test(systemState: Ref[Data]) extends system.System.Service with Service with Product with Serializable

    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. val DefaultData: Data

    Permalink

    The default initial state of the TestSystem with no environment variable or system property mappings and the system line separator set to the new line character.

  5. val any: ZLayer[System with TestSystem, Nothing, System with TestSystem]

    Permalink
  6. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  7. def clearEnv(variable: ⇒ String): ZIO[TestSystem, Nothing, Unit]

    Permalink

    Accesses a TestSystem instance in the environment and clears the mapping of environment variables.

  8. def clearProperty(prop: ⇒ String): ZIO[TestSystem, Nothing, Unit]

    Permalink

    Accesses a TestSystem instance in the environment and clears the mapping of system properties.

  9. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  10. val default: Layer[Nothing, System with TestSystem]

    Permalink
  11. final def eq(arg0: AnyRef): Boolean

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

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

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

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

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

    Permalink
    Definition Classes
    Any
  17. def live(data: Data): Layer[Nothing, System with TestSystem]

    Permalink

    Constructs a new TestSystem with the specified initial state.

    Constructs a new TestSystem with the specified initial state. This can be useful for providing the required environment to an effect that requires a Console, such as with ZIO#provide.

  18. final def ne(arg0: AnyRef): Boolean

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

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

    Permalink
    Definition Classes
    AnyRef
  21. def putEnv(name: ⇒ String, value: ⇒ String): ZIO[TestSystem, Nothing, Unit]

    Permalink

    Accesses a TestSystem instance in the environment and adds the specified name and value to the mapping of environment variables.

  22. def putProperty(name: ⇒ String, value: ⇒ String): ZIO[TestSystem, Nothing, Unit]

    Permalink

    Accesses a TestSystem instance in the environment and adds the specified name and value to the mapping of system properties.

  23. val save: ZIO[TestSystem, Nothing, UIO[Unit]]

    Permalink

    Accesses a TestSystem instance in the environment and saves the system state in an effect which, when run, will restore the TestSystem to the saved state

  24. def setLineSeparator(lineSep: ⇒ String): ZIO[TestSystem, Nothing, Unit]

    Permalink

    Accesses a TestSystem instance in the environment and sets the line separator to the specified value.

  25. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  26. def toString(): String

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

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

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

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

Inherited from Serializable

Inherited from Serializable

Inherited from AnyRef

Inherited from Any

Ungrouped