hare

[hare] The Hare programming language
git clone https://git.torresjrjr.com/hare.git
Log | Files | Refs | README | LICENSE

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:
Mtypes/c/+test.ha | 14++++++++++++++
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); +};