|
|
@@ -5,16 +5,21 @@
|
|
|
int main(void)
|
|
|
{
|
|
|
char haystack1[] = "abcd\0efgh";
|
|
|
+ char haystack2[] = "ab\0ab\0ab\0ab";
|
|
|
char needle1[] = "ab";
|
|
|
char needle2[] = "d\0e";
|
|
|
|
|
|
/* This is how many tests you plan to run */
|
|
|
- plan_tests(3);
|
|
|
+ plan_tests(5);
|
|
|
|
|
|
ok1(memmem(haystack1, sizeof(haystack1), needle1, 2) == haystack1);
|
|
|
ok1(memmem(haystack1, sizeof(haystack1), needle1, 3) == NULL);
|
|
|
ok1(memmem(haystack1, sizeof(haystack1), needle2, 3) == (haystack1 + 3));
|
|
|
|
|
|
+ ok1(memmem(haystack2, sizeof(haystack2), needle1, sizeof(needle1))
|
|
|
+ == haystack2);
|
|
|
+ ok1(memmem(haystack2, sizeof(haystack2), needle2, 3) == NULL);
|
|
|
+
|
|
|
/* This exits depending on whether all tests passed */
|
|
|
return exit_status();
|
|
|
}
|