From 952250b6d79063aa1066b0e945d58360bd70d09f Mon Sep 17 00:00:00 2001 From: Mel Date: Wed, 6 May 2026 18:49:26 +0200 Subject: Lowering pass test harness, and initial pass test suite Signed-off-by: Mel --- boot/tests/test.c | 23 ++++++++++++++++++----- 1 file changed, 18 insertions(+), 5 deletions(-) (limited to 'boot/tests/test.c') diff --git a/boot/tests/test.c b/boot/tests/test.c index 841df09..051dbc4 100644 --- a/boot/tests/test.c +++ b/boot/tests/test.c @@ -63,9 +63,10 @@ enum Test_Target TARGET_NONE = 0, TARGET_LEX = 1 << 0, TARGET_PARSE = 1 << 1, - TARGET_TRANSPILE = 1 << 2, + TARGET_LOWER = 1 << 2, + TARGET_TRANSPILE = 1 << 3, - TARGET_ALL = TARGET_LEX | TARGET_PARSE | TARGET_TRANSPILE, + TARGET_ALL = TARGET_LEX | TARGET_PARSE | TARGET_LOWER | TARGET_TRANSPILE, }; struct Known_Target @@ -73,9 +74,8 @@ struct Known_Target const ascii* name; enum Test_Target target; } known_targets[] = { - { "lex", TARGET_LEX }, - { "parse", TARGET_PARSE }, - { "transpile", TARGET_TRANSPILE }, + { "lex", TARGET_LEX }, { "parse", TARGET_PARSE }, + { "lower", TARGET_LOWER }, { "transpile", TARGET_TRANSPILE }, { "all", TARGET_ALL }, }; @@ -531,6 +531,15 @@ parse_tests(bool adjust) return tests(base_path, base_command, adjust); } +struct Result_Summary +lower_tests(bool adjust) +{ + const ascii* base_path = "./boot/tests/lower/"; + const ascii* base_command = "./build/catboot --test-lower"; + + return tests(base_path, base_command, adjust); +} + struct Result_Summary transpile_tests(bool adjust) { @@ -582,6 +591,10 @@ main(int argc, const ascii** argv) summary = parse_tests(adjust); break; + case TARGET_LOWER: + summary = lower_tests(adjust); + break; + case TARGET_TRANSPILE: summary = transpile_tests(adjust); break; -- cgit 1.4.1