diff options
author | sanine <sanine.not@pm.me> | 2021-12-26 00:02:04 -0600 |
---|---|---|
committer | sanine <sanine.not@pm.me> | 2021-12-26 00:02:04 -0600 |
commit | da39940e9a49016a32ba4f206b63f7045158d54c (patch) | |
tree | 942cb178d1ca8fd99c4028cd1d33f172105482c0 /tests/assertions.c | |
parent | 9c4bd59002109c850dda3ab79febc17f7f0367e9 (diff) |
add test for basic assert
Diffstat (limited to 'tests/assertions.c')
-rw-r--r-- | tests/assertions.c | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/tests/assertions.c b/tests/assertions.c index 5fb5e8d..baa0045 100644 --- a/tests/assertions.c +++ b/tests/assertions.c @@ -14,3 +14,33 @@ const char *test_LILY_LOCATION() return 0; } + + +const char *test_assert_msg() +{ + int val = setjmp(_lily_globals.env); + if (val != 0) + return "true assertion failed incorrectly!"; + + lily_assert_msg(true, LILY_LOCATION, "should not fail!"); + + int passed_thru = 0; + _lily_globals.error_msg = NULL; + _lily_globals.error_location = ""; + val = setjmp(_lily_globals.env); + + if (passed_thru == 0) { + passed_thru = 1; + // another line that you SHOULD NOT MOVE! + lily_assert_msg(false, LILY_LOCATION, "%s %s!", "should", "fail"); + return "false assertion incorrectly succeeded!"; + } + else { + if (strcmp(_lily_globals.error_msg, "should fail!") != 0) + return "false assertion produced incorrect error message!"; + if (strcmp(_lily_globals.error_location, "tests/assertions.c:35")) + return "false assertion produced incorrect error location!"; + } + + return 0; +} |