1 /* $Id: strlcpy-t.c 5568 2002-08-12 02:06:44Z rra $ */
2 /* strlcpy test suite. */
9 size_t test_strlcpy(char *, const char *, size_t);
18 ok_int(1, 3, test_strlcpy(buffer, "foo", sizeof(buffer)));
19 ok_string(2, "foo", buffer);
20 ok_int(3, 9, test_strlcpy(buffer, "hello wor", sizeof(buffer)));
21 ok_string(4, "hello wor", buffer);
22 ok_int(5, 10, test_strlcpy(buffer, "world hell", sizeof(buffer)));
23 ok_string(6, "world hel", buffer);
24 ok(7, buffer[9] == '\0');
25 ok_int(8, 11, test_strlcpy(buffer, "hello world", sizeof(buffer)));
26 ok_string(9, "hello wor", buffer);
27 ok(10, buffer[9] == '\0');
29 /* Make sure that with a size of 0, the destination isn't changed. */
30 ok_int(11, 3, test_strlcpy(buffer, "foo", 0));
31 ok_string(12, "hello wor", buffer);
33 /* Now play with empty strings. */
34 ok_int(13, 0, test_strlcpy(buffer, "", 0));
35 ok_string(14, "hello wor", buffer);
36 ok_int(15, 0, test_strlcpy(buffer, "", sizeof(buffer)));
37 ok_string(16, "", buffer);
38 ok_int(17, 3, test_strlcpy(buffer, "foo", 2));
39 ok_string(18, "f", buffer);
40 ok(19, buffer[1] == '\0');
41 ok_int(20, 0, test_strlcpy(buffer, "", 1));
42 ok(21, buffer[0] == '\0');
44 /* Finally, check using strlcpy as strlen. */
45 ok_int(22, 3, test_strlcpy(NULL, "foo", 0));
46 ok_int(23, 11, test_strlcpy(NULL, "hello world", 0));