X-Git-Url: http://git.ozlabs.org/?a=blobdiff_plain;f=ccan%2Ferr%2Ftest%2Frun.c;h=c103f7cda6e0039092a5b19e14b2a6adb2008b11;hb=1de204600b76e0bfba1f0cebdd2a6a62a04e9e70;hp=c0407a9322b1c3e8fe60a454a497d6dbe4deee41;hpb=4776faf17adfa16ef5b2aeb24414b9d73a5789fc;p=ccan diff --git a/ccan/err/test/run.c b/ccan/err/test/run.c index c0407a93..c103f7cd 100644 --- a/ccan/err/test/run.c +++ b/ccan/err/test/run.c @@ -1,4 +1,4 @@ -#include +#include #include #include #include @@ -10,15 +10,26 @@ #define BUFFER_MAX 1024 -int main(void) +int main(int argc, char *argv[]) { int pfd[2]; + const char *base; - plan_tests(20); - fflush(stdout); + plan_tests(24); + + err_set_progname(argv[0]); + + /* In case it only prints out the basename of argv[0]. */ + base = strrchr(argv[0], '/'); + if (base) + base++; + else + base = argv[0]; /* Test err() in child */ - pipe(pfd); + if (pipe(pfd)) + abort(); + fflush(stdout); if (fork()) { char buffer[BUFFER_MAX+1]; unsigned int i; @@ -31,6 +42,7 @@ int main(void) buffer[i] = '\0'; ok1(strstr(buffer, "running err:")); ok1(strstr(buffer, strerror(ENOENT))); + ok1(strstr(buffer, base)); ok1(buffer[i-1] == '\n'); break; } @@ -48,7 +60,8 @@ int main(void) } /* Test errx() in child */ - pipe(pfd); + if (pipe(pfd)) + abort(); fflush(stdout); if (fork()) { char buffer[BUFFER_MAX+1]; @@ -61,6 +74,7 @@ int main(void) if (read(pfd[0], buffer + i, 1) == 0) { buffer[i] = '\0'; ok1(strstr(buffer, "running errx\n")); + ok1(strstr(buffer, base)); break; } } @@ -77,7 +91,8 @@ int main(void) /* Test warn() in child */ - pipe(pfd); + if (pipe(pfd)) + abort(); fflush(stdout); if (fork()) { char buffer[BUFFER_MAX+1]; @@ -91,6 +106,7 @@ int main(void) buffer[i] = '\0'; ok1(strstr(buffer, "running warn:")); ok1(strstr(buffer, strerror(ENOENT))); + ok1(strstr(buffer, base)); ok1(buffer[i-1] == '\n'); break; } @@ -108,7 +124,8 @@ int main(void) } /* Test warnx() in child */ - pipe(pfd); + if (pipe(pfd)) + abort(); fflush(stdout); if (fork()) { char buffer[BUFFER_MAX+1]; @@ -121,6 +138,7 @@ int main(void) if (read(pfd[0], buffer + i, 1) == 0) { buffer[i] = '\0'; ok1(strstr(buffer, "running warnx\n")); + ok1(strstr(buffer, base)); break; } }