Skip to content
Effect 4.0 is here. One ecosystem. Zero dependencies.

utils unstable

Provides assertion helpers used by @effect/vitest tests.

This module defines small assertion functions built on Node's assert, Vitest's instance checks, and Effect's equality support. The helpers cover basic equality, thrown errors, defined and undefined values, strings, regular expressions, class instances, Option, Result, and Exit. Most helpers are synchronous; throwsAsync handles rejected promises.

21 exports Since v4.0.0 Source

Testing

Since v4.0.0

Asserts that a is not undefined.

Signature

declare function assertDefined<A>(a: A | undefined, ..._: Array<never>): asserts a is Exclude<A, undefined>
Since v4.0.0

Asserts that actual is equal to expected using the Equal.equals trait.

Signature

declare function assertEquals<A>(actual: A, expected: A, message?: string, ..._: Array<never>): void
Since v4.0.0

Asserts that exit is a failure with a cause equal to expected.

Signature

declare function assertExitFailure<A, E>(exit: Exit<A, E>, expected: Cause<E>, ..._: Array<never>): asserts exit is Failure<never, E>
Since v4.0.0

Asserts that exit is a success with a value equal to expected.

Signature

declare function assertExitSuccess<A, E>(exit: Exit<A, E>, expected: A, ..._: Array<never>): asserts exit is Success<A, never>
Since v4.0.0

Asserts that result is Failure and contains an error equal to expected.

Signature

declare function assertFailure<A, E>(result: Result<A, E>, expected: E, ..._: Array<never>): asserts result is Failure<never, E>

assertFalse

unstable
Since v4.0.0

Asserts that self is false.

Signature

declare function assertFalse(self: boolean, message?: string, ..._: Array<never>): void
Since v4.0.0

Asserts that actual includes expected.

Signature

declare function assertInclude(actual: string | undefined, expected: string, ..._: Array<never>): void
Since v4.0.0

Asserts that value is an instance of constructor.

Signature

declare function assertInstanceOf<C extends (...args: any) => any>(value: unknown, constructor: C, message?: string, ..._: Array<never>): asserts value is InstanceType<C>

assertMatch

unstable
Since v4.0.0

Asserts that actual matches regExp.

Signature

declare function assertMatch(actual: string, regExp: RegExp, ..._: Array<never>): void

assertNone

unstable
Since v4.0.0

Asserts that option is None.

Signature

declare function assertNone<A>(option: Option<A>, ..._: Array<never>): asserts option is None<never>

assertSome

unstable
Since v4.0.0

Asserts that option is Some and contains a value equal to expected.

Signature

declare function assertSome<A>(option: Option<A>, expected: A, ..._: Array<never>): asserts option is Some<A>
Since v4.0.0

Asserts that result is Success and contains a value equal to expected.

Signature

declare function assertSuccess<A, E>(result: Result<A, E>, expected: A, ..._: Array<never>): asserts result is Success<A, never>

assertTrue

unstable
Since v4.0.0

Asserts that self is true.

Signature

declare function assertTrue(self: unknown, message?: string, ..._: Array<never>): asserts self
Since v4.0.0

Asserts that a is undefined.

Signature

declare function assertUndefined<A>(a: A | undefined, ..._: Array<never>): asserts a is undefined
Since v4.0.0

Asserts that actual is deeply strictly equal to expected using Node's assert.deepStrictEqual.

Signature

declare function deepStrictEqual<A>(actual: A, expected: A, message?: string, ..._: Array<never>): void
Since v4.0.0

Asserts that thunk does not throw an error.

Signature

declare function doesNotThrow(thunk: () => void, message?: string, ..._: Array<never>): void

fail

unstable
Since v4.0.0

Fails the current test with the provided error message.

Signature

declare function fail(message: string): void
Since v4.0.0

Asserts that actual is not deeply strictly equal to expected using Node's assert.notDeepStrictEqual.

Signature

declare function notDeepStrictEqual<A>(actual: A, expected: A, message?: string, ..._: Array<never>): void

strictEqual

unstable
Since v4.0.0

Asserts that actual is strictly equal to expected using Node's assert.strictEqual.

Signature

declare function strictEqual<A>(actual: A, expected: A, message?: string, ..._: Array<never>): void

throws

unstable
Since v4.0.0

Asserts that thunk throws, optionally checking the thrown value against an expected Error or validation function.

Signature

declare function throws(thunk: () => void, error?: Error | (u: unknown) => undefined, ..._: Array<never>): void

throwsAsync

unstable
Since v4.0.0

Asserts that thunk throws or returns a rejected promise, optionally checking the failure value against an expected Error or validation function.

Signature

declare function throwsAsync(thunk: () => Promise<void>, error?: Error | (u: unknown) => undefined, ..._: Array<never>): Promise<void>