1# The test cases for printf and integers have two purposes: they exercise 2# the printf function family, and they exercise the passing of integers 3# and strings through the test framework. 4 5printf "%d", 0 6printf_int:"%d":0:"0" 7 8printf "%d", -0 9printf_int:"%d":-0:"0" 10 11printf "%d", 0x0 12printf_int:"%d":0x0:"0" 13 14printf "%d", 0x00 15printf_int:"%d":0x00:"0" 16 17printf "%d", 0x000000000000000000000000000000000000000000 18printf_int:"%d":0x000000000000000000000000000000000000000000:"0" 19 20printf "%d", -0x0 21printf_int:"%d":-0x0:"0" 22 23printf "%d", 1 24printf_int:"%d":1:"1" 25 26printf "%d", 0x1 27printf_int:"%d":0x1:"1" 28 29printf "%d", 0x0000000000000000000000000000000000000000001 30printf_int:"%d":0x0000000000000000000000000000000000000000001:"1" 31 32printf "%d", -1 33printf_int:"%d":-1:"-1" 34 35printf "%d", -0x1 36printf_int:"%d":-0x1:"-1" 37 38printf "%d", -0x0000000000000000000000000000000000000000001 39printf_int:"%d":-0x0000000000000000000000000000000000000000001:"-1" 40 41printf "%d", 2147483647 42printf_int:"%d":2147483647:"2147483647" 43 44printf "%d", 0x7fffffff 45printf_int:"%d":0x7fffffff:"2147483647" 46 47printf "%d", -2147483647 48printf_int:"%d":-2147483647:"-2147483647" 49 50printf "%d", -0x7fffffff 51printf_int:"%d":-0x7fffffff:"-2147483647" 52 53printf "%d", -2147483648 54printf_int:"%d":-2147483648:"-2147483648" 55 56printf "%d", -0x80000000 57printf_int:"%d":-0x80000000:"-2147483648" 58 59# Test that LONG_MAX is coming out untruncated through the test framework. 60printf "%lx", LONG_MAX 61printf_long_max:"%lx":LONG_MAX 62 63# The next few test cases exercise how the test framework handles special 64# characters in strings. 65printf "%c%c", SPACE, SPACE 66printf_char2:"%c%c":SPACE_CHAR:SPACE_CHAR:" " 67 68printf "%c%c", NEWLINE, SPACE 69printf_char2:"%c%c":NEWLINE_CHAR:SPACE_CHAR:"\n " 70 71printf "%c%c", DOUBLE QUOTE, SPACE 72printf_char2:"%c%c":DOUBLE_QUOTE_CHAR:SPACE_CHAR:"\" " 73 74printf "%c%c", COLON, SPACE 75printf_char2:"%c%c":COLON_CHAR:SPACE_CHAR:"\: " 76 77printf "%c%c", QUESTION, SPACE 78printf_char2:"%c%c":QUESTION_CHAR:SPACE_CHAR:"? " 79 80printf "%c%c", BACKSLASH, SPACE 81printf_char2:"%c%c":BACKSLASH_CHAR:SPACE_CHAR:"\\ " 82 83printf "%c%c", SPACE, BACKSLASH 84printf_char2:"%c%c":SPACE_CHAR:BACKSLASH_CHAR:" \\" 85 86printf "%c%c", COLON, COLON 87printf_char2:"%c%c":COLON_CHAR:COLON_CHAR:"\:\:" 88 89printf "%c%c", COLON, NEWLINE 90printf_char2:"%c%c":COLON_CHAR:NEWLINE_CHAR:"\:\n" 91 92printf "%c%c", QUESTION, QUESTION 93printf_char2:"%c%c":QUESTION_CHAR:QUESTION_CHAR:"??" 94 95printf "%c%c", QUESTION, NEWLINE 96printf_char2:"%c%c":QUESTION_CHAR:NEWLINE_CHAR:"?\n" 97 98printf "%c%c", BACKSLASH, NEWLINE 99printf_char2:"%c%c":BACKSLASH_CHAR:NEWLINE_CHAR:"\\\n" 100 101printf "%c%c", BACKSLASH, DOUBLE QUOTE 102printf_char2:"%c%c":BACKSLASH_CHAR:DOUBLE_QUOTE_CHAR:"\\\"" 103 104printf "%c%c", BACKSLASH, COLON 105printf_char2:"%c%c":BACKSLASH_CHAR:COLON_CHAR:"\\\:" 106 107printf "%c%c", BACKSLASH, QUESTION 108printf_char2:"%c%c":BACKSLASH_CHAR:QUESTION_CHAR:"\\?" 109 110printf "%c%c", BACKSLASH, BACKSLASH 111printf_char2:"%c%c":BACKSLASH_CHAR:BACKSLASH_CHAR:"\\\\" 112 113printf "%c%c", BACKSLASH, n 114printf_char2:"%c%c":BACKSLASH_CHAR:LOWERCASE_N_CHAR:"\\n" 115