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`.
Transforms a value with the given CustomAssertion
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