From e20b4c3a5dfe081fa2d6d772617307fae4689698 Mon Sep 17 00:00:00 2001 From: physick Date: Fri, 31 Jul 2026 15:21:45 +0500 Subject: More desriptive output --- src/puzzles/puzzle.h | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) (limited to 'src/puzzles/puzzle.h') diff --git a/src/puzzles/puzzle.h b/src/puzzles/puzzle.h index 4dfd0f8..e7aebb1 100644 --- a/src/puzzles/puzzle.h +++ b/src/puzzles/puzzle.h @@ -25,11 +25,26 @@ typedef struct { PuzzleIO ExpectedResult; } Test; +enum PUZZLE_TEST_RESULT { + RESULT_OK = 0, + RESULT_WRONG_ANSWER, + RESULT_COMPTIME_NO_ENTRY, + RESULT_COMPTIME_ERR, + RESULT_RUNTIME_ERR, + // TODO: add async evaluation to prevent `while (true)` situation + RESULT_TIMEOUT, + RESULT_INIT_ERROR, +}; + +typedef struct { + enum PUZZLE_TEST_RESULT res; + char *message; +} TestResult; /// The user submitted code should be evaluated by this point. /// The entry point should be registered and the absence of the /// Main method signatire will be concidered an error -enum PUZZLE_TEST_RESULT RunTest(Test *test, WrenVM *vm, size_t max_op); +TestResult RunTest(Test *test, WrenVM *vm, size_t max_op); typedef struct { char *Name; -- cgit v1.3