From 0388c9249b76ed8738c8adc9f6752bbe8ad19d72 Mon Sep 17 00:00:00 2001 From: Ivan Yuriev Date: Fri, 13 Dec 2024 18:31:41 +0300 Subject: [PATCH] fixed up tests --- .gitignore | 1 + src/treevault.gleam | 21 ++++++++++--------- test/{benchmark.gleam => raw_benchmark.gleam} | 0 test/server_test.gleam | 6 +++--- test/treevault_test.gleam | 5 ++++- test/vault.json | 11 ++++++++-- 6 files changed, 28 insertions(+), 16 deletions(-) rename test/{benchmark.gleam => raw_benchmark.gleam} (100%) diff --git a/.gitignore b/.gitignore index bfb160d..95a2ba8 100644 --- a/.gitignore +++ b/.gitignore @@ -4,4 +4,5 @@ erl_crash.dump /snapshots +/test/snapshots config.json \ No newline at end of file diff --git a/src/treevault.gleam b/src/treevault.gleam index cd50351..199458d 100644 --- a/src/treevault.gleam +++ b/src/treevault.gleam @@ -18,10 +18,18 @@ import spinner import tree_events pub fn main() { - init() + let forest = init() + + io.println( + "Hello from Treevault! 🌳\n + To exit gracefully, use \"exit\". + To list available commands, use \"help\". + ", + ) + read_next(forest) } -fn init() { +pub fn init() { let config = config.load("./config.json") |> io.debug let forest = case forest.load(config.snapshots_path, config.forest) { Error(err) -> { @@ -70,14 +78,7 @@ fn init() { }) |> glisten.serve(config.port) - io.println( - "Hello from Treevault! 🌳\n - To exit gracefully, use \"exit\". - To list available commands, use \"help\". - ", - ) - - read_next(forest) + forest } fn read_next(forest) { diff --git a/test/benchmark.gleam b/test/raw_benchmark.gleam similarity index 100% rename from test/benchmark.gleam rename to test/raw_benchmark.gleam diff --git a/test/server_test.gleam b/test/server_test.gleam index df196d7..1667a42 100644 --- a/test/server_test.gleam +++ b/test/server_test.gleam @@ -1,15 +1,15 @@ import gleam/erlang/process -import gleam/otp/task +import gleeunit import gleeunit/should import mug import treevault pub fn main() { - server_test() + gleeunit.main() } pub fn server_test() { - let _ = task.async(treevault.main) + process.start(fn() { treevault.init() }, True) process.sleep(2000) let assert Ok(socket) = diff --git a/test/treevault_test.gleam b/test/treevault_test.gleam index 8ad980b..44d88cb 100644 --- a/test/treevault_test.gleam +++ b/test/treevault_test.gleam @@ -75,7 +75,10 @@ pub fn json_test() { pub fn config_test() { let config = config.load("./test/vault.json") should.equal( - config.Config("./snapshots", 12_345, ["tree1", "tree2", "tree3"]), + config.Config("./test/snapshots", 12_345, [ + "tree0", "tree1", "tree2", "tree3", "tree4", "tree5", "tree6", "tree7", + "tree8", "tree9", + ]), config, ) } diff --git a/test/vault.json b/test/vault.json index 6ad2cb7..68f74c0 100644 --- a/test/vault.json +++ b/test/vault.json @@ -1,9 +1,16 @@ { - "snapshots_path": "./snapshots", + "snapshots_path": "./test/snapshots", "port": 12345, "forest": [ + "tree0", "tree1", "tree2", - "tree3" + "tree3", + "tree4", + "tree5", + "tree6", + "tree7", + "tree8", + "tree9" ] } \ No newline at end of file