package scalatest
- Alphabetic
- By Inheritance
- scalatest
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Type Members
- trait AssertCIO extends AnyRef
scalatest assertion macro for cats.effect.IO
- trait AssertIO2[F[+_, +_]] extends AnyRef
scalatest assertion macro for any izumi.functional.bio.IO2
- trait AssertIO3[F[-_, +_, +_]] extends AnyRef
scalatest assertion macro for any izumi.functional.bio.IO3
- trait AssertMonix extends AnyRef
scalatest assertion macro for monix.eval.Task
- trait AssertMonixBIO extends AnyRef
scalatest assertion macro for monix.bio.IO
- trait AssertSync[F[_]] extends AnyRef
scalatest assertion macro for any cats.effect.Sync
- trait AssertZIO extends AnyRef
scalatest assertion macro for zio.ZIO
- abstract class Spec1[F[_]] extends DistageScalatestTestSuiteRunner[F] with DistageAbstractScalatestSpec[F]
- abstract class Spec2[F[+_, +_]] extends DistageScalatestTestSuiteRunner[[β$0$]F[Throwable, β$0$]] with DistageAbstractScalatestSpec[[β$1$]F[Throwable, β$1$]]
- abstract class Spec3[FR[-_, +_, +_]] extends DistageScalatestTestSuiteRunner[[γ$0$]FR[Any, Throwable, γ$0$]] with DistageAbstractScalatestSpec[[γ$1$]FR[Any, Throwable, γ$1$]]
Allows summoning objects from DI in tests via ZIO environment intersection types
Allows summoning objects from DI in tests via ZIO environment intersection types
trait PetStore[F[_, _]] { def purchasePet(name: String, cost: Int): F[Throwable, Boolean] } trait Pets[F[_, _]] def myPets: F[Throwable, List[String]] } type PetStoreEnv = Has[PetStore[IO]] type PetsEnv = Has[Pets[IO]] val store = new PetStore[ZIO[PetStoreEnv, ?, ?]] { def purchasePet(name: String, cost: Int): RIO[PetStoreEnv, Boolean] = ZIO.accessM(_.get.purchasePet(name, cost)) } val pets = new Pets[ZIO[PetsEnv, ?, ?]] { def myPets: RIO[PetsEnv, List[String]] = ZIO.accessM(_.get.myPets) } "test purchase pets" in { for { _ <- store.purchasePet("Zab", 213) pets <- pets.myPets _ <- assertIO(pets.contains("Zab")) } yield () // : ZIO[PetStoreEnv with PetsEnv, Throwable, Unit] }
Lambda parameters and environment may both be used at the same time to define dependencies:
"test purchase pets" in { (store: PetStore[IO]) => for { _ <- store.purchasePet("Zab", 213) pets <- pets.myPets _ <- assertIO(pets.contains("Zab")) } yield () // : ZIO[PetsEnv, Throwable, Unit] }
- abstract class SpecIdentity extends Spec1[Identity]
- abstract class SpecWiring[AppMain <: CheckableApp, Cfg <: Any] extends Spec1[scalatest.SpecWiring.AppMain.AppEffectType] with WiringAssertions
- trait WiringAssertions extends AnyRef
Deprecated Type Members
- type AssertBIO[F[+_, +_]] = AssertIO2[F]
- Annotations
- @deprecated
- Deprecated
(Since version 1.0) Renamed to AssertIO2
- type AssertIO = AssertZIO
- Annotations
- @deprecated
- Deprecated
(Since version 1.0) Renamed to AssertZIO
- type DistageBIOEnvSpecScalatest[F[-_, +_, +_]] = Spec3[F]
- Annotations
- @deprecated
- Deprecated
(Since version 1.0) Renamed to Spec3
- type DistageBIOSpecScalatest[F[+_, +_]] = Spec2[F]
- Annotations
- @deprecated
- Deprecated
(Since version 1.0) Renamed to Spec2
- type DistageSpecScalatest[F[_]] = Spec1[F]
- Annotations
- @deprecated
- Deprecated
(Since version 1.0) Renamed to Spec1
Value Members
- object AssertCIO extends AssertCIO
- object AssertIO2
- object AssertIO3
- object AssertMonix extends AssertMonix
- object AssertMonixBIO extends AssertMonixBIO
- object AssertSync
- object AssertZIO extends AssertZIO