TestLensAnyOps

zio.test.`package`.TestLensAnyOps
final implicit class TestLensAnyOps[A](self: TestLens[A]) extends AnyVal

Attributes

Graph
Supertypes
class AnyVal
trait Matchable
class Any

Members list

Value members

Concrete methods

Always returns true as long the chain of preceding transformations has succeeded.

Always returns true as long the chain of preceding transformations has succeeded.

 val option: Either[Int, Option[String]] = Right(Some("Cool"))
 assertTrue(option.is(_.right.some.anything)) // returns true
 assertTrue(option.is(_.left.anything)) // will fail because of `.left`.

Attributes

def custom[B](customAssertion: CustomAssertion[A, B]): TestLens[B]

Transforms a value with the given CustomAssertion

Transforms a value with the given CustomAssertion

Attributes

def subtype[Subtype <: A]: TestLens[Subtype]

Transforms a value of some type into the given Subtype if possible, otherwise fails.

Transforms a value of some type into the given Subtype if possible, otherwise fails.

 sealed trait CustomError
 case class Explosion(blastRadius: Int) extends CustomError
 case class Melting(degrees: Double) extends CustomError
 case class Fulminating(wow: Boolean) extends CustomError

 val error: CustomError = Melting(100)
 assertTrue(option.is(_.subtype[Melting]).degrees > 10) // succeeds
 assertTrue(option.is(_.subtype[Explosion]).blastRadius == 12) // fails

Attributes