X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=tests%2Ftest-freadptr.c;h=8d496bce5d6139e6384bef27ea717f779b09ddc3;hb=9809ae591bcf4bf16b809d51f126fc756e303676;hp=536fd7b3fdb34240908880317a660e57bbf300d6;hpb=03400ebfaa064922caf3767d6641d7e1cdc8cd1b;p=gnulib.git diff --git a/tests/test-freadptr.c b/tests/test-freadptr.c index 536fd7b3f..8d496bce5 100644 --- a/tests/test-freadptr.c +++ b/tests/test-freadptr.c @@ -1,5 +1,5 @@ /* Test of freadptr() function. - Copyright (C) 2007-2008 Free Software Foundation, Inc. + Copyright (C) 2007-2013 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -20,21 +20,11 @@ #include "freadptr.h" -#include #include #include #include -#define ASSERT(expr) \ - do \ - { \ - if (!(expr)) \ - { \ - fprintf (stderr, "%s:%d: assertion failed\n", __FILE__, __LINE__); \ - abort (); \ - } \ - } \ - while (0) +#include "macros.h" int main (int argc, char **argv) @@ -46,7 +36,7 @@ main (int argc, char **argv) if (lseek (0, 0, SEEK_CUR) == nbytes) { /* An unbuffered stdio, such as BeOS or on uClibc compiled without - __STDIO_BUFFERS. Or stdin is a pipe. */ + __STDIO_BUFFERS. Or stdin is a pipe. */ size_t size; ASSERT (freadptr (stdin, &size) == NULL); } @@ -54,7 +44,7 @@ main (int argc, char **argv) { /* Normal buffered stdio. */ const char stdin_contents[] = - "#!/bin/sh\n\n./test-freadptr${EXEEXT} 5 < \"$srcdir/test-freadptr.sh\" || exit 1\ncat \"$srcdir/test-freadptr.sh\" | ./test-freadptr${EXEEXT} 5 || exit 1\nexit 0\n"; + "#!/bin/sh\n\n./test-freadptr${EXEEXT} 5 < \"$srcdir/test-freadptr.sh\" || exit 1\ncat \"$srcdir/test-freadptr.sh\" | ./test-freadptr${EXEEXT} 5 || exit 1\nexit 0\n"; const char *expected = stdin_contents + nbytes; size_t available1; size_t available2; @@ -62,41 +52,41 @@ main (int argc, char **argv) /* Test normal behaviour. */ { - const char *ptr = freadptr (stdin, &available1); + const char *ptr = freadptr (stdin, &available1); - ASSERT (ptr != NULL); - ASSERT (available1 != 0); - ASSERT (available1 <= strlen (expected)); - ASSERT (memcmp (ptr, expected, available1) == 0); + ASSERT (ptr != NULL); + ASSERT (available1 != 0); + ASSERT (available1 <= strlen (expected)); + ASSERT (memcmp (ptr, expected, available1) == 0); } /* Test behaviour after normal ungetc. */ ungetc (fgetc (stdin), stdin); { - const char *ptr = freadptr (stdin, &available2); + const char *ptr = freadptr (stdin, &available2); - if (ptr != NULL) - { - ASSERT (available2 == available1); - ASSERT (memcmp (ptr, expected, available2) == 0); - } + if (ptr != NULL) + { + ASSERT (available2 == available1); + ASSERT (memcmp (ptr, expected, available2) == 0); + } } /* Test behaviour after arbitrary ungetc. */ fgetc (stdin); ungetc ('@', stdin); { - const char *ptr = freadptr (stdin, &available3); - - if (ptr != NULL) - { - ASSERT (available3 == 1 || available3 == available1); - ASSERT (ptr[0] == '@'); - if (available3 > 1) - { - ASSERT (memcmp (ptr + 1, expected + 1, available3 - 1) == 0); - } - } + const char *ptr = freadptr (stdin, &available3); + + if (ptr != NULL) + { + ASSERT (available3 == 1 || available3 == available1); + ASSERT (ptr[0] == '@'); + if (available3 > 1) + { + ASSERT (memcmp (ptr + 1, expected + 1, available3 - 1) == 0); + } + } } }