1
0
mirror of https://github.com/cc65/cc65.git synced 2024-10-06 01:55:47 +00:00

Add test for stpcpy().

This commit is contained in:
Sven Michael Klose 2024-07-15 17:35:28 +02:00
parent af3ac42373
commit 9558ebad62

44
test/val/stpcpy.c Normal file
View File

@ -0,0 +1,44 @@
// 2024-07-15 Sven Michael Klose <pixel@hugbox.org>
#include <assert.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#define STR_SHORT "Hello, World!"
#define STR_LONG "This is a longer test string for stpcpy."
int
main ()
{
char dest[50];
const char *src_empty;
const char *src_short;
const char *src_long;
char *end;
src_empty = "";
end = stpcpy (dest, src_empty);
assert(!strcmp (dest, src_empty));
assert(!*end);
assert(end == dest);
printf ("Test 1 passed.\n");
src_short = STR_SHORT;
end = stpcpy (dest, src_short);
assert(!strcmp (dest, src_short));
assert(!*end);
assert(end == &dest[sizeof (STR_SHORT) - 1]);
printf ("Test 2 passed.\n");
src_long = STR_LONG;
end = stpcpy (dest, src_long);
assert(!strcmp (dest, src_long));
assert(!*end);
assert(end == &dest[sizeof (STR_LONG) - 1]);
printf ("Test 3 passed.\n");
printf ("All tests passed.\n");
return EXIT_SUCCESS;
}