Implement assert_str and assert_not_null and update tests

This commit is contained in:
2026-04-24 14:57:24 +02:00
parent 594e33efd6
commit 0fa7b599ed
4 changed files with 46 additions and 6 deletions
+10 -4
View File
@@ -89,16 +89,22 @@ static void test_tokenstream_info(void) {
tokenstream_info(ts, &info1);
if (t1 != TOKEN_MODULE) fail("expected TOKEN_MODULE");
if (info1.token != TOKEN_MODULE) fail("info: expected TOKEN_MODULE");
if (info1.text_length != 6) fail("info: expected length 6");
if (strncmp(info1.text, "module", 6) != 0) fail("info: expected 'module'");
char buf1[32];
memcpy(buf1, info1.text, info1.text_length);
buf1[info1.text_length] = '\0';
assert_str("module", buf1, "info: expected 'module'");
Token t2 = tokenstream_next(ts);
TokenInfo info2;
tokenstream_info(ts, &info2);
if (t2 != TOKEN_IDENTIFIER) fail("expected TOKEN_IDENTIFIER");
if (info2.token != TOKEN_IDENTIFIER) fail("info: expected TOKEN_IDENTIFIER");
if (info2.text_length != 4) fail("info: expected length 4");
if (strncmp(info2.text, "main", 4) != 0) fail("info: expected 'main'");
char buf2[32];
memcpy(buf2, info2.text, info2.text_length);
buf2[info2.text_length] = '\0';
assert_str("main", buf2, "info: expected 'main'");
tokenstream_close(ts);
}