From d362ef26db894ea52c6abd34489aa9efdbc0c89b Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Sat, 14 Jan 2023 13:22:39 +0530 Subject: chore: adds test cases + fixes Test effect scope --- stdlib/test.ts | 31 ++++++++++++++++++++++++------- 1 file changed, 24 insertions(+), 7 deletions(-) (limited to 'stdlib') diff --git a/stdlib/test.ts b/stdlib/test.ts index 639c433..a592d87 100644 --- a/stdlib/test.ts +++ b/stdlib/test.ts @@ -1,12 +1,29 @@ -import { Effect } from './effect' +import { Do, Effect, Kind1 } from './effect' +import { Throw, Try } from './exception' +import { Equals } from './util' export interface Config { - compileTimeTestFailures: false - stopAtFailure: true // TODO: stopAtFailure + // compileTimeTestFailures: false + // stopAtFailure: true // TODO: stopAtFailure } -type Assertion = Config['compileTimeTestFailures'] extends true ? true : boolean +export interface Assert<_B extends boolean> extends Effect {} + +export interface Test<_m extends string, _effs extends Effect[]> extends Effect {} + +export interface ShowAssertionError<_L extends unknown, _R extends unknown> extends Effect {} + +export type AssertEquals = Try< + Assert>, + () => Do<[ + ShowAssertionError, + Throw, + ]> +> + +export interface AssertEqualsK extends Kind1 { + return: AssertEquals +} + +// TODO: export interface AssertFails? -export interface Assert<_B extends Assertion> extends Effect {} -export interface Test<_m extends string, _effs extends Effect[]> - extends Effect {} -- cgit v1.3.1