Added test cases for printf builtin

This commit is contained in:
Siteshwar Vashisht 2013-03-03 00:45:34 +05:30
parent b989978dd3
commit be7d02ebdd
5 changed files with 36 additions and 3 deletions

View File

@ -52,7 +52,7 @@
#include "common.h"
// This file has bee imported from source code of printf command in GNU Coreutils version 6.9
// This file has been imported from source code of printf command in GNU Coreutils version 6.9
/* The official name of this program (e.g., no `g' prefix). */
#define PROGRAM_NAME "printf"
@ -312,7 +312,7 @@ static void print_direc (const wchar_t *start, size_t length, wchar_t conversion
switch (conversion)
{
case L'd': case L'i': case L'o': case L'u': case L'x': case L'X':
case L'd': case L'i':
length_modifier = PRIdMAX;
length_modifier_len = sizeof PRIdMAX - 2;
break;
@ -322,7 +322,7 @@ static void print_direc (const wchar_t *start, size_t length, wchar_t conversion
length_modifier = L"L";
length_modifier_len = 1;
break;
case L's':
case L's': case L'u':
length_modifier = L"l";
length_modifier_len = 1;
break;

0
tests/printf.err Normal file
View File

19
tests/printf.in Normal file
View File

@ -0,0 +1,19 @@
printf "Hello %d %i %f %F %g %G\n" 1 2 3 4 5 6
printf "%x %X %o %u\n" 10 11 8 -1
printf "%a %A\n" 14 15
printf "%c %s\n" a hello
printf "%e %E\n" 5 6
printf "%20d\n" 50
printf "%-20d%d\n" 5 10
printf "%*d\n" 10 100
printf "%%\"\\\n"
printf "%s\b%s\n" x y
printf "abc\rdef\n"
printf "Msg1\fMsg2\n"
printf "foo\vbar\vbaz\n"
printf "\111 \x50" # \u0051 \U00000052

13
tests/printf.out Normal file
View File

@ -0,0 +1,13 @@
Hello 1 2 3.000000 4.000000 5 6
a B 10 18446744073709551615
0xep+0 0XFP+0
a hello
5.000000e+00 6.000000E+00
50
5 10
100
%"\nxy
abc def
Msg1 Msg2
foo bar baz
I P

1
tests/printf.status Normal file
View File

@ -0,0 +1 @@
0