TestAspect

Companion:
class
class Object
trait Matchable
class Any

Type members

Classlikes

abstract class PerTest[+LowerR, -UpperR, +LowerE, -UpperE] extends TestAspect[LowerR, UpperR, LowerE, UpperE]
Companion:
object
object PerTest
Companion:
class

Value members

Concrete methods

def after[R0, E0](effect: ZIO[R0, E0, Any]): TestAspect[Nothing, R0, E0, Any]

Constructs an aspect that runs the specified effect after every test.

Constructs an aspect that runs the specified effect after every test.

def afterAll[R0](effect: ZIO[R0, Nothing, Any]): TestAspect[Nothing, R0, Nothing, Any]

Constructs an aspect that runs the specified effect after all tests.

Constructs an aspect that runs the specified effect after all tests.

def annotate[V](key: TestAnnotation[V], value: V): TestAspectPoly

Annotates tests with the specified test annotation.

Annotates tests with the specified test annotation.

def around[R0, E0](before: ZIO[R0, E0, Any], after: ZIO[R0, Nothing, Any]): TestAspect[Nothing, R0, E0, Any]

A less powerful variant of around where the result of before is not required by after.

A less powerful variant of around where the result of before is not required by after.

def aroundAll[R0, E0](before: ZIO[R0, E0, Any], after: ZIO[R0, Nothing, Any]): TestAspect[Nothing, R0, E0, Any]

A less powerful variant of aroundAll where the result of before is not required by after.

A less powerful variant of aroundAll where the result of before is not required by after.

def aroundAllWith[R0, E0, A0](before: ZIO[R0, E0, A0])(after: A0 => ZIO[R0, Nothing, Any]): TestAspect[Nothing, R0, E0, Any]

Constructs an aspect that evaluates all tests between two effects, before and after, where the result of before can be used in after.

Constructs an aspect that evaluates all tests between two effects, before and after, where the result of before can be used in after.

def aroundTest[R0, E0](scoped: ZIO[Scope & R0, TestFailure[E0], TestSuccess => ZIO[R0, TestFailure[E0], TestSuccess]]): TestAspect[Nothing, R0, E0, Any]

Constructs an aspect that evaluates every test inside the context of the scoped function.

Constructs an aspect that evaluates every test inside the context of the scoped function.

def aroundWith[R0, E0, A0](before: ZIO[R0, E0, A0])(after: A0 => ZIO[R0, Nothing, Any]): TestAspect[Nothing, R0, E0, Any]

Constructs an aspect that evaluates every test between two effects, before and after, where the result of before can be used in after.

Constructs an aspect that evaluates every test between two effects, before and after, where the result of before can be used in after.

def aspect[R0, E0](f: ZIO[R0, TestFailure[E0], TestSuccess] => ZIO[R0, TestFailure[E0], TestSuccess]): TestAspect[R0, R0, E0, E0]

Constructs a simple monomorphic aspect that only works with the specified environment and error type.

Constructs a simple monomorphic aspect that only works with the specified environment and error type.

def before[R0, E0](effect: ZIO[R0, E0, Any]): TestAspect[Nothing, R0, E0, Any]

Constructs an aspect that runs the specified effect before every test.

Constructs an aspect that runs the specified effect before every test.

def beforeAll[R0, E0](effect: ZIO[R0, E0, Any]): TestAspect[Nothing, R0, E0, Any]

Constructs an aspect that runs the specified effect a single time before all tests.

Constructs an aspect that runs the specified effect a single time before all tests.

An aspect that runs each test on a separate fiber and prints a fiber dump if the test fails or has not terminated within the specified duration.

An aspect that runs each test on a separate fiber and prints a fiber dump if the test fails or has not terminated within the specified duration.

An aspect that sets suites to the specified execution strategy, but only if their current strategy is inherited (undefined).

An aspect that sets suites to the specified execution strategy, but only if their current strategy is inherited (undefined).

def failing[E0](assertion: TestFailure[E0] => Boolean): TestAspect[Nothing, Any, Nothing, E0]

An aspect that makes a test that failed for the specified failure pass. Note that the test will fail for other failures and also if it passes correctly.

An aspect that makes a test that failed for the specified failure pass. Note that the test will fail for other failures and also if it passes correctly.

def flaky(n: Int): TestAspectPoly

An aspect that retries a test until success, with the specified limit, for use with flaky tests.

An aspect that retries a test until success, with the specified limit, for use with flaky tests.

def fromLayer[R0, E0](layer: ZLayer[R0, E0, Any]): TestAspect[Nothing, R0, E0, Any]

Constructs an aspect from a layer that does not produce any services.

Constructs an aspect from a layer that does not produce any services.

def fromZIOAspect[LowerR, UpperR, LowerE, UpperE](zioAspect: ZIOAspect[LowerR, UpperR, TestFailure[LowerE], TestFailure[UpperE], TestSuccess, TestSuccess]): TestAspect[LowerR, UpperR, LowerE, UpperE]

As aspect that runs each test with the specified ZIOAspect.

As aspect that runs each test with the specified ZIOAspect.

def ifEnv(env: String)(assertion: String => Boolean): TestAspectPoly

An aspect that only runs a test if the specified environment variable satisfies the specified assertion.

An aspect that only runs a test if the specified environment variable satisfies the specified assertion.

def ifEnvNotSet(env: String): TestAspectPoly

An aspect that only runs a test if the specified environment variable is not set.

An aspect that only runs a test if the specified environment variable is not set.

def ifEnvOption(env: String)(assertion: Option[String] => Boolean): TestAspectPoly

An aspect that only runs a test if the specified optional environment variable satisfies the specified assertion.

An aspect that only runs a test if the specified optional environment variable satisfies the specified assertion.

def ifEnvSet(env: String): TestAspectPoly

An aspect that only runs a test if the specified environment variable is set.

An aspect that only runs a test if the specified environment variable is set.

def ifProp(prop: String)(assertion: String => Boolean): TestAspectPoly

An aspect that only runs a test if the specified Java property satisfies the specified assertion.

An aspect that only runs a test if the specified Java property satisfies the specified assertion.

def ifPropNotSet(env: String): TestAspectPoly

An aspect that only runs a test if the specified Java property is not set.

An aspect that only runs a test if the specified Java property is not set.

def ifPropOption(prop: String)(assertion: Option[String] => Boolean): TestAspectPoly

An aspect that only runs a test if the specified optional Java property satisfies the specified assertion.

An aspect that only runs a test if the specified optional Java property satisfies the specified assertion.

def ifPropSet(prop: String): TestAspectPoly

An aspect that only runs a test if the specified Java property is set.

An aspect that only runs a test if the specified Java property is set.

def js[LowerR, UpperR, LowerE, UpperE](that: TestAspect[LowerR, UpperR, LowerE, UpperE]): TestAspect[LowerR, UpperR, LowerE, UpperE]

An aspect that applies the specified aspect on ScalaJS.

An aspect that applies the specified aspect on ScalaJS.

def jvm[LowerR, UpperR, LowerE, UpperE](that: TestAspect[LowerR, UpperR, LowerE, UpperE]): TestAspect[LowerR, UpperR, LowerE, UpperE]

An aspect that applies the specified aspect on the JVM.

An aspect that applies the specified aspect on the JVM.

def native[LowerR, UpperR, LowerE, UpperE](that: TestAspect[LowerR, UpperR, LowerE, UpperE]): TestAspect[LowerR, UpperR, LowerE, UpperE]

An aspect that applies the specified aspect on ScalaNative.

An aspect that applies the specified aspect on ScalaNative.

An aspect that repeats the test a specified number of times, ensuring it is stable ("non-flaky"). Stops at the first failure.

An aspect that repeats the test a specified number of times, ensuring it is stable ("non-flaky"). Stops at the first failure.

Constructs an aspect that requires a test to not terminate within the specified time.

Constructs an aspect that requires a test to not terminate within the specified time.

def os(f: OS => Boolean): TestAspectPoly

An aspect that runs only on operating systems accepted by the specified predicate.

An aspect that runs only on operating systems accepted by the specified predicate.

An aspect that executes the members of a suite in parallel, up to the specified number of concurrent fibers.

An aspect that executes the members of a suite in parallel, up to the specified number of concurrent fibers.

def repeat[R0](schedule: Schedule[R0, TestSuccess, Any]): TestAspectAtLeastR[R0]

An aspect that repeats successful tests according to a schedule.

An aspect that repeats successful tests according to a schedule.

def repeats(n: Int): TestAspectPoly

An aspect that runs each test with the number of times to repeat tests to ensure they are stable set to the specified value.

An aspect that runs each test with the number of times to repeat tests to ensure they are stable set to the specified value.

An aspect that restores a given Restorable's state to its starting state after the test is run. Note that this is only useful when repeating tests.

An aspect that restores a given Restorable's state to its starting state after the test is run. Note that this is only useful when repeating tests.

An aspect that restores the TestClock's state to its starting state after the test is run. Note that this is only useful when repeating tests.

An aspect that restores the TestClock's state to its starting state after the test is run. Note that this is only useful when repeating tests.

An aspect that restores the TestConsole's state to its starting state after the test is run. Note that this is only useful when repeating tests.

An aspect that restores the TestConsole's state to its starting state after the test is run. Note that this is only useful when repeating tests.

An aspect that restores all state in the standard provided test environments (TestClock, TestConsole, TestRandom, and TestSystem) to their starting state after the test is run. Note that this is only useful when repeating tests.

An aspect that restores all state in the standard provided test environments (TestClock, TestConsole, TestRandom, and TestSystem) to their starting state after the test is run. Note that this is only useful when repeating tests.

An aspect that restores the TestRandom's state to its starting state after the test is run. Note that this is only useful when repeating tests.

An aspect that restores the TestRandom's state to its starting state after the test is run. Note that this is only useful when repeating tests.

An aspect that restores the TestSystem's state to its starting state after the test is run. Note that this is only useful when repeating tests.

An aspect that restores the TestSystem's state to its starting state after the test is run. Note that this is only useful when repeating tests.

def retries(n: Int): TestAspectPoly

An aspect that runs each test with the number of times to retry flaky tests set to the specified value.

An aspect that runs each test with the number of times to retry flaky tests set to the specified value.

def retry[R0, E0](schedule: Schedule[R0, TestFailure[E0], Any]): TestAspect[Nothing, R0, Nothing, E0]

An aspect that retries failed tests according to a schedule.

An aspect that retries failed tests according to a schedule.

def samples(n: Int): TestAspectPoly

An aspect that runs each test with the number of sufficient samples to check for a random variable set to the specified value.

An aspect that runs each test with the number of sufficient samples to check for a random variable set to the specified value.

def scala2[LowerR, UpperR, LowerE, UpperE](that: TestAspect[LowerR, UpperR, LowerE, UpperE]): TestAspect[LowerR, UpperR, LowerE, UpperE]

An aspect that applies the specified aspect on Scala 2.

An aspect that applies the specified aspect on Scala 2.

def scala211[LowerR, UpperR, LowerE, UpperE](that: TestAspect[LowerR, UpperR, LowerE, UpperE]): TestAspect[LowerR, UpperR, LowerE, UpperE]

An aspect that applies the specified aspect on Scala 2.11.

An aspect that applies the specified aspect on Scala 2.11.

def scala212[LowerR, UpperR, LowerE, UpperE](that: TestAspect[LowerR, UpperR, LowerE, UpperE]): TestAspect[LowerR, UpperR, LowerE, UpperE]

An aspect that applies the specified aspect on Scala 2.12.

An aspect that applies the specified aspect on Scala 2.12.

def scala213[LowerR, UpperR, LowerE, UpperE](that: TestAspect[LowerR, UpperR, LowerE, UpperE]): TestAspect[LowerR, UpperR, LowerE, UpperE]

An aspect that applies the specified aspect on Scala 2.13.

An aspect that applies the specified aspect on Scala 2.13.

def scala3[LowerR, UpperR, LowerE, UpperE](that: TestAspect[LowerR, UpperR, LowerE, UpperE]): TestAspect[LowerR, UpperR, LowerE, UpperE]

An aspect that applies the specified aspect on Scala 3.

An aspect that applies the specified aspect on Scala 3.

def setSeed(seed: => Long): TestAspectPoly

Sets the seed of the TestRandom instance in the environment to the specified value before each test.

Sets the seed of the TestRandom instance in the environment to the specified value before each test.

def shrinks(n: Int): TestAspectPoly

An aspect that runs each test with the maximum number of shrinkings to minimize large failures set to the specified value.

An aspect that runs each test with the maximum number of shrinkings to minimize large failures set to the specified value.

def size(n: Int): TestAspectPoly

An aspect that runs each test with the size set to the specified value.

An aspect that runs each test with the size set to the specified value.

def tag(tag: String, tags: String*): TestAspectPoly

Annotates tests with string tags.

Annotates tests with string tags.

An aspect that times out tests using the specified duration.

An aspect that times out tests using the specified duration.

Value parameters:
duration

maximum test duration

def verify[R0, E0](condition: => ZIO[R0, E0, TestResult]): TestAspect[Nothing, R0, E0, Any]

Verifies the specified post-condition after each test is run.

Verifies the specified post-condition after each test is run.

Deprecated methods

def sized(n: Int): TestAspectPoly

An aspect that runs each test with the size set to the specified value.

An aspect that runs each test with the size set to the specified value.

Deprecated

Inherited methods

A test aspect that prints a warning to the console when a test takes longer than the specified duration.

A test aspect that prints a warning to the console when a test takes longer than the specified duration.

Inherited from:
TimeoutVariants

Concrete fields

An aspect that runs each test with the TestConsole instance in the environment set to debug mode so that console output is rendered to standard output in addition to being written to the output buffer.

An aspect that runs each test with the TestConsole instance in the environment set to debug mode so that console output is rendered to standard output in addition to being written to the output buffer.

An aspect that retries a test until success, without limit.

An aspect that retries a test until success, without limit.

An aspect that runs tests on all platforms except ScalaJS.

An aspect that runs tests on all platforms except ScalaJS.

An aspect that runs tests on all platforms except the JVM.

An aspect that runs tests on all platforms except the JVM.

An aspect that runs tests on all platforms except ScalaNative.

An aspect that runs tests on all platforms except ScalaNative.

An aspect that runs tests on all versions except Scala 2.

An aspect that runs tests on all versions except Scala 2.

An aspect that runs tests on all versions except Scala 2.11.

An aspect that runs tests on all versions except Scala 2.11.

An aspect that runs tests on all versions except Scala 2.12.

An aspect that runs tests on all versions except Scala 2.12.

An aspect that runs tests on all versions except Scala 2.13.

An aspect that runs tests on all versions except Scala 2.13.

An aspect that runs tests on all versions except Scala 3.

An aspect that runs tests on all versions except Scala 3.

An aspect that makes a test that failed for any reason pass. Note that if the test passes this aspect will make it fail.

An aspect that makes a test that failed for any reason pass. Note that if the test passes this aspect will make it fail.

An aspect that records the state of fibers spawned by the current test in TestAnnotation.fibers. Applied by default in ZIOSpecAbstract. This aspect is required for the proper functioning * of TestClock.adjust.

An aspect that records the state of fibers spawned by the current test in TestAnnotation.fibers. Applied by default in ZIOSpecAbstract. This aspect is required for the proper functioning * of TestClock.adjust.

An aspect that retries a test until success, with a default limit, for use with flaky tests.

An aspect that retries a test until success, with a default limit, for use with flaky tests.

An aspect that runs each test on its own separate fiber.

An aspect that runs each test on its own separate fiber.

An aspect that returns the tests unchanged

An aspect that returns the tests unchanged

An aspect that marks tests as ignored.

An aspect that marks tests as ignored.

An aspect that only runs tests on ScalaJS.

An aspect that only runs tests on ScalaJS.

An aspect that only runs tests on the JVM.

An aspect that only runs tests on the JVM.

Runs only on Mac operating systems.

Runs only on Mac operating systems.

An aspect that only runs tests on ScalaNative.

An aspect that only runs tests on ScalaNative.

An aspect that repeats the test a default number of times, ensuring it is stable ("non-flaky"). Stops at the first failure.

An aspect that repeats the test a default number of times, ensuring it is stable ("non-flaky"). Stops at the first failure.

Sets the seed of the TestRandom instance in the environment to a random value before each test.

Sets the seed of the TestRandom instance in the environment to a random value before each test.

An aspect that executes the members of a suite in parallel.

An aspect that executes the members of a suite in parallel.

An aspect that only runs tests on Scala 2.11.

An aspect that only runs tests on Scala 2.11.

An aspect that only runs tests on Scala 2.12.

An aspect that only runs tests on Scala 2.12.

An aspect that only runs tests on Scala 2.13.

An aspect that only runs tests on Scala 2.13.

An aspect that only runs tests on Scala 2.

An aspect that only runs tests on Scala 2.

An aspect that only runs tests on Scala 3.

An aspect that only runs tests on Scala 3.

An aspect that executes the members of a suite sequentially.

An aspect that executes the members of a suite sequentially.

An aspect that runs each test with the TestConsole instance in the environment set to silent mode so that console output is only written to the output buffer and not rendered to standard output.

An aspect that runs each test with the TestConsole instance in the environment set to silent mode so that console output is only written to the output buffer and not rendered to standard output.

As aspect that runs each test with the default console logger removed so that logs are only written to the output buffer and not rendered to standard output.

As aspect that runs each test with the default console logger removed so that logs are only written to the output buffer and not rendered to standard output.

An aspect that converts ignored tests into test failures.

An aspect that converts ignored tests into test failures.

Annotates tests with their execution times.

Annotates tests with their execution times.

Runs only on Unix / Linux operating systems.

Runs only on Unix / Linux operating systems.

Runs only on Windows operating systems.

Runs only on Windows operating systems.

An aspect that runs tests with the live clock service.

An aspect that runs tests with the live clock service.

An aspect that runs tests with the live console service.

An aspect that runs tests with the live console service.

An aspect that runs tests with the live default ZIO services.

An aspect that runs tests with the live default ZIO services.

An aspect that runs tests with the live random service.

An aspect that runs tests with the live random service.

An aspect that runs tests with the live system service.

An aspect that runs tests with the live system service.