mirror of
https://github.com/cc65/cc65.git
synced 2024-12-23 04:30:10 +00:00
Add test of strnlen().
This commit is contained in:
parent
2c27c075a9
commit
34e03fd9ec
@ -160,6 +160,7 @@ EXELIST_c64 = \
|
||||
scanf-test \
|
||||
ser-test \
|
||||
strdup-test \
|
||||
strnlen \
|
||||
stroserror-test \
|
||||
strqtok-test \
|
||||
tinyshell \
|
||||
@ -190,6 +191,7 @@ EXELIST_vic20 = \
|
||||
rename-test \
|
||||
scanf-test \
|
||||
strdup-test \
|
||||
strnlen \
|
||||
stroserror-test \
|
||||
strqtok-test \
|
||||
tinyshell \
|
||||
@ -222,6 +224,7 @@ EXELIST_apple2 = \
|
||||
seek \
|
||||
ser-test \
|
||||
strdup-test \
|
||||
strnlen \
|
||||
stroserror-test \
|
||||
strqtok-test \
|
||||
tinyshell \
|
||||
@ -257,6 +260,7 @@ EXELIST_atari = \
|
||||
seek \
|
||||
ser-test \
|
||||
strdup-test \
|
||||
strnlen \
|
||||
stroserror-test \
|
||||
strqtok-test \
|
||||
tinyshell \
|
||||
|
32
targettest/strnlen.c
Normal file
32
targettest/strnlen.c
Normal file
@ -0,0 +1,32 @@
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
const char * str = "0123456789";
|
||||
|
||||
void
|
||||
check (size_t result, size_t expected)
|
||||
{
|
||||
if (result != expected) {
|
||||
printf ("Expected strnlen() to return %d, got %d.\n",
|
||||
expected, result);
|
||||
exit (EXIT_FAILURE);
|
||||
}
|
||||
}
|
||||
|
||||
int
|
||||
main (void)
|
||||
{
|
||||
size_t maxlen = strlen (str);
|
||||
size_t result;
|
||||
size_t expected;
|
||||
|
||||
for (expected = 0; expected < maxlen; expected++)
|
||||
check (strnlen (str, expected), expected);
|
||||
|
||||
check (strnlen (str, maxlen << 1), maxlen);
|
||||
|
||||
printf ("strnlen() OK.\n");
|
||||
|
||||
return EXIT_SUCCESS;
|
||||
}
|
Loading…
Reference in New Issue
Block a user