commit c4279a78c44b59230a6f612996e56f3c7d41282b
parent b5046e746fba5281cc3f3723b28db4215e8595e3
Author: Sebastian <sebastian@sebsite.pw>
Date: Tue, 12 Mar 2024 18:34:26 -0400
types::c+test: add strlen and strnlen tests
Diffstat:
1 file changed, 14 insertions(+), 0 deletions(-)
diff --git a/types/c/+test.ha b/types/c/+test.ha
@@ -35,3 +35,17 @@ static assert(align(ssize) == align(size));
let s = nulstr("hello!\0");
assert(tostr(s)! == "hello!");
};
+
+@test fn strlen() void = {
+ assert(strlen(nulstr("hello!\0")) == 6);
+ assert(strlen(nulstr("\0")) == 0);
+};
+
+@test fn strnlen() void = {
+ assert(strnlen(nulstr("hello!\0"), 10) == 6);
+ assert(strnlen(nulstr("hello!\0"), 6) == 6);
+ assert(strnlen(nulstr("hello!\0"), 4) == 4);
+ assert(strnlen(nulstr("hello!\0"), 0) == 0);
+ assert(strnlen(nulstr("\0"), 1) == 0);
+ assert(strnlen(null: *const char, 0) == 0);
+};