expectExitSuccess<A extends Object, E extends Object> function

A expectExitSuccess<A extends Object, E extends Object>(
  1. Exit<A, E> exit
)

Extract a successful value or throw an assertion-oriented exception.

Implementation

A expectExitSuccess<A extends Object, E extends Object>(Exit<A, E> exit) {
  return switch (exit) {
    ExitSuccess<A, E>(:final value) => value,
    _ => throw BetterEffectTestExpectationException(
      expected: 'ExitSuccess<$A, $E>',
      actual: exit,
    ),
  };
}