aboutsummaryrefslogtreecommitdiff
path: root/src/index.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/index.ts')
-rw-r--r--src/index.ts18
1 files changed, 14 insertions, 4 deletions
diff --git a/src/index.ts b/src/index.ts
index 95fd41f..2b3e95e 100644
--- a/src/index.ts
+++ b/src/index.ts
@@ -1,6 +1,16 @@
-import * as IO from "fp-ts/IO";
-import { readFileSync } from "fs";
-
-const main: IO.IO<void> = ConsoleLogger.log("Hello, world!");
+import * as TE from "fp-ts/lib/TaskEither";
+import { pipe } from "fp-ts/lib/function";
+import { toError } from "fp-ts/lib/Either";
+import { readConfig } from "./config";
+import { parseArgs } from "./args";
+const main: TE.TaskEither<Error, void> = pipe(
+ TE.fromEither(parseArgs(Bun.argv)),
+ TE.bindTo("args"),
+ TE.bind("config", ({ args }) => TE.fromIO(readConfig(args.testsFile))),
+ TE.fold(
+ (e) => TE.left(toError(e)),
+ () => TE.right(undefined),
+ ),
+);
main();