diff options
Diffstat (limited to 'libio/tst_wprintf2.c')
-rw-r--r-- | libio/tst_wprintf2.c | 104 |
1 files changed, 0 insertions, 104 deletions
diff --git a/libio/tst_wprintf2.c b/libio/tst_wprintf2.c deleted file mode 100644 index dfff70f1f9..0000000000 --- a/libio/tst_wprintf2.c +++ /dev/null @@ -1,104 +0,0 @@ -/* Test case by Yoshito Kawada <KAWADA@jp.ibm.com>. */ -#include <errno.h> -#include <error.h> -#include <fcntl.h> -#include <locale.h> -#include <stdio.h> -#include <stdlib.h> -#include <string.h> -#include <unistd.h> -#include <wchar.h> - -int -main (int argc, char *argv[]) -{ - int a = 3; - int fd; - char name[] = "/tmp/wprintf.out.XXXXXX"; - FILE *fp; - char buf[100]; - size_t len; - int res = 0; - - fd = mkstemp (name); - if (fd == -1) - error (EXIT_FAILURE, errno, "cannot open temporary file"); - - unlink (name); - - setlocale (LC_ALL, "en_US.UTF-8"); - - fp = fdopen (dup (fd), "w"); - if (fp == NULL) - error (EXIT_FAILURE, errno, "fdopen(,\"w\")"); - - fwprintf (fp, L"test start"); - fwprintf (fp, L" int %d\n", a); - - /* String with precision. */ - fwprintf (fp, L"1[%6.3s]\n", argv[1]); - - fclose (fp); - - fp = fdopen (dup (fd), "a"); - if (fp == NULL) - error (EXIT_FAILURE, errno, "fdopen(,\"a\")"); - - setvbuf (fp, NULL, _IONBF, 0); - - /* fwprintf to unbuffered stream. */ - fwprintf (fp, L"hello.\n"); - - fclose (fp); - - - /* Now read it back in. This time using multibyte functions. */ - lseek (fd, SEEK_SET, 0); - fp = fdopen (fd, "r"); - if (fp == NULL) - error (EXIT_FAILURE, errno, "fdopen(,\"r\")"); - - if (fgets (buf, sizeof buf, fp) != buf) - error (EXIT_FAILURE, errno, "first fgets"); - len = strlen (buf); - if (buf[len - 1] == '\n') - --len; - else - { - puts ("newline missing after first line"); - res = 1; - } - printf ("1st line: \"%.*s\" -> %s\n", (int) len, buf, - strncmp (buf, "test start int 3", len) == 0 ? "OK" : "FAIL"); - res |= strncmp (buf, "test start int 3", len) != 0; - - if (fgets (buf, sizeof buf, fp) != buf) - error (EXIT_FAILURE, errno, "second fgets"); - len = strlen (buf); - if (buf[len - 1] == '\n') - --len; - else - { - puts ("newline missing after second line"); - res = 1; - } - printf ("2nd line: \"%.*s\" -> %s\n", (int) len, buf, - strncmp (buf, "1[ Som]", len) == 0 ? "OK" : "FAIL"); - res |= strncmp (buf, "1[ Som]", len) != 0; - - if (fgets (buf, sizeof buf, fp) != buf) - error (EXIT_FAILURE, errno, "third fgets"); - len = strlen (buf); - if (buf[len - 1] == '\n') - --len; - else - { - puts ("newline missing after third line"); - res = 1; - } - printf ("3rd line: \"%.*s\" -> %s\n", (int) len, buf, - strncmp (buf, "hello.", len) == 0 ? "OK" : "FAIL"); - res |= strncmp (buf, "hello.", len) != 0; - - return res; -} |