Annotation of embedaddon/php/ext/standard/tests/strings/sprintf_variation40.phpt, revision 1.1
1.1 ! misho 1: --TEST--
! 2: Test sprintf() function : usage variations - unsigned formats with integer values
! 3: --SKIPIF--
! 4: <?php
! 5: if (PHP_INT_SIZE != 4) {
! 6: die("skip this test is for 32bit platform only");
! 7: }
! 8: ?>
! 9: --FILE--
! 10: <?php
! 11: /* Prototype : string sprintf(string $format [, mixed $arg1 [, mixed ...]])
! 12: * Description: Return a formatted string
! 13: * Source code: ext/standard/formatted_print.c
! 14: */
! 15:
! 16: echo "*** Testing sprintf() : unsigned formats with integer values ***\n";
! 17:
! 18: // array of integer values
! 19: $integer_values = array(
! 20: 0,
! 21: 1,
! 22: -1,
! 23: -2147483648, // max negative integer value
! 24: -2147483647,
! 25: 2147483647, // max positive integer value
! 26: +2147483640,
! 27: 0x123B, // integer as hexadecimal
! 28: 0x12ab,
! 29: 0Xfff,
! 30: 0XFA,
! 31: -0x80000000, // max negative integer as hexadecimal
! 32: 0x7fffffff, // max postive integer as hexadecimal
! 33: 0x7FFFFFFF, // max postive integer as hexadecimal
! 34: 0123, // integer as octal
! 35: 01912, // should be quivalent to octal 1
! 36: -020000000000, // max negative integer as octal
! 37: 017777777777 // max positive integer as octal
! 38: );
! 39:
! 40: // array of unsigned formats
! 41: $unsigned_formats = array(
! 42: "%u", "%hu", "%lu",
! 43: "%Lu", " %u", "%u ",
! 44: "\t%u", "\n%u", "%4u",
! 45: "%30u", "%[0-9]", "%*u"
! 46: );
! 47:
! 48:
! 49: $count = 1;
! 50: foreach($integer_values as $integer_value) {
! 51: echo "\n-- Iteration $count --\n";
! 52:
! 53: foreach($unsigned_formats as $format) {
! 54: var_dump( sprintf($format, $integer_value) );
! 55: }
! 56: $count++;
! 57: };
! 58:
! 59: echo "Done";
! 60: ?>
! 61: --EXPECTF--
! 62: *** Testing sprintf() : unsigned formats with integer values ***
! 63:
! 64: -- Iteration 1 --
! 65: string(1) "0"
! 66: string(1) "u"
! 67: string(1) "0"
! 68: string(1) "u"
! 69: string(2) " 0"
! 70: string(2) "0 "
! 71: string(2) " 0"
! 72: string(2) "
! 73: 0"
! 74: string(4) " 0"
! 75: string(30) " 0"
! 76: string(4) "0-9]"
! 77: string(1) "u"
! 78:
! 79: -- Iteration 2 --
! 80: string(1) "1"
! 81: string(1) "u"
! 82: string(1) "1"
! 83: string(1) "u"
! 84: string(2) " 1"
! 85: string(2) "1 "
! 86: string(2) " 1"
! 87: string(2) "
! 88: 1"
! 89: string(4) " 1"
! 90: string(30) " 1"
! 91: string(4) "0-9]"
! 92: string(1) "u"
! 93:
! 94: -- Iteration 3 --
! 95: string(10) "4294967295"
! 96: string(1) "u"
! 97: string(10) "4294967295"
! 98: string(1) "u"
! 99: string(11) " 4294967295"
! 100: string(11) "4294967295 "
! 101: string(11) " 4294967295"
! 102: string(11) "
! 103: 4294967295"
! 104: string(10) "4294967295"
! 105: string(30) " 4294967295"
! 106: string(4) "0-9]"
! 107: string(1) "u"
! 108:
! 109: -- Iteration 4 --
! 110: string(10) "2147483648"
! 111: string(1) "u"
! 112: string(10) "2147483648"
! 113: string(1) "u"
! 114: string(11) " 2147483648"
! 115: string(11) "2147483648 "
! 116: string(11) " 2147483648"
! 117: string(11) "
! 118: 2147483648"
! 119: string(10) "2147483648"
! 120: string(30) " 2147483648"
! 121: string(4) "0-9]"
! 122: string(1) "u"
! 123:
! 124: -- Iteration 5 --
! 125: string(10) "2147483649"
! 126: string(1) "u"
! 127: string(10) "2147483649"
! 128: string(1) "u"
! 129: string(11) " 2147483649"
! 130: string(11) "2147483649 "
! 131: string(11) " 2147483649"
! 132: string(11) "
! 133: 2147483649"
! 134: string(10) "2147483649"
! 135: string(30) " 2147483649"
! 136: string(4) "0-9]"
! 137: string(1) "u"
! 138:
! 139: -- Iteration 6 --
! 140: string(10) "2147483647"
! 141: string(1) "u"
! 142: string(10) "2147483647"
! 143: string(1) "u"
! 144: string(11) " 2147483647"
! 145: string(11) "2147483647 "
! 146: string(11) " 2147483647"
! 147: string(11) "
! 148: 2147483647"
! 149: string(10) "2147483647"
! 150: string(30) " 2147483647"
! 151: string(4) "0-9]"
! 152: string(1) "u"
! 153:
! 154: -- Iteration 7 --
! 155: string(10) "2147483640"
! 156: string(1) "u"
! 157: string(10) "2147483640"
! 158: string(1) "u"
! 159: string(11) " 2147483640"
! 160: string(11) "2147483640 "
! 161: string(11) " 2147483640"
! 162: string(11) "
! 163: 2147483640"
! 164: string(10) "2147483640"
! 165: string(30) " 2147483640"
! 166: string(4) "0-9]"
! 167: string(1) "u"
! 168:
! 169: -- Iteration 8 --
! 170: string(4) "4667"
! 171: string(1) "u"
! 172: string(4) "4667"
! 173: string(1) "u"
! 174: string(5) " 4667"
! 175: string(5) "4667 "
! 176: string(5) " 4667"
! 177: string(5) "
! 178: 4667"
! 179: string(4) "4667"
! 180: string(30) " 4667"
! 181: string(4) "0-9]"
! 182: string(1) "u"
! 183:
! 184: -- Iteration 9 --
! 185: string(4) "4779"
! 186: string(1) "u"
! 187: string(4) "4779"
! 188: string(1) "u"
! 189: string(5) " 4779"
! 190: string(5) "4779 "
! 191: string(5) " 4779"
! 192: string(5) "
! 193: 4779"
! 194: string(4) "4779"
! 195: string(30) " 4779"
! 196: string(4) "0-9]"
! 197: string(1) "u"
! 198:
! 199: -- Iteration 10 --
! 200: string(4) "4095"
! 201: string(1) "u"
! 202: string(4) "4095"
! 203: string(1) "u"
! 204: string(5) " 4095"
! 205: string(5) "4095 "
! 206: string(5) " 4095"
! 207: string(5) "
! 208: 4095"
! 209: string(4) "4095"
! 210: string(30) " 4095"
! 211: string(4) "0-9]"
! 212: string(1) "u"
! 213:
! 214: -- Iteration 11 --
! 215: string(3) "250"
! 216: string(1) "u"
! 217: string(3) "250"
! 218: string(1) "u"
! 219: string(4) " 250"
! 220: string(4) "250 "
! 221: string(4) " 250"
! 222: string(4) "
! 223: 250"
! 224: string(4) " 250"
! 225: string(30) " 250"
! 226: string(4) "0-9]"
! 227: string(1) "u"
! 228:
! 229: -- Iteration 12 --
! 230: string(10) "2147483648"
! 231: string(1) "u"
! 232: string(10) "2147483648"
! 233: string(1) "u"
! 234: string(11) " 2147483648"
! 235: string(11) "2147483648 "
! 236: string(11) " 2147483648"
! 237: string(11) "
! 238: 2147483648"
! 239: string(10) "2147483648"
! 240: string(30) " 2147483648"
! 241: string(4) "0-9]"
! 242: string(1) "u"
! 243:
! 244: -- Iteration 13 --
! 245: string(10) "2147483647"
! 246: string(1) "u"
! 247: string(10) "2147483647"
! 248: string(1) "u"
! 249: string(11) " 2147483647"
! 250: string(11) "2147483647 "
! 251: string(11) " 2147483647"
! 252: string(11) "
! 253: 2147483647"
! 254: string(10) "2147483647"
! 255: string(30) " 2147483647"
! 256: string(4) "0-9]"
! 257: string(1) "u"
! 258:
! 259: -- Iteration 14 --
! 260: string(10) "2147483647"
! 261: string(1) "u"
! 262: string(10) "2147483647"
! 263: string(1) "u"
! 264: string(11) " 2147483647"
! 265: string(11) "2147483647 "
! 266: string(11) " 2147483647"
! 267: string(11) "
! 268: 2147483647"
! 269: string(10) "2147483647"
! 270: string(30) " 2147483647"
! 271: string(4) "0-9]"
! 272: string(1) "u"
! 273:
! 274: -- Iteration 15 --
! 275: string(2) "83"
! 276: string(1) "u"
! 277: string(2) "83"
! 278: string(1) "u"
! 279: string(3) " 83"
! 280: string(3) "83 "
! 281: string(3) " 83"
! 282: string(3) "
! 283: 83"
! 284: string(4) " 83"
! 285: string(30) " 83"
! 286: string(4) "0-9]"
! 287: string(1) "u"
! 288:
! 289: -- Iteration 16 --
! 290: string(1) "1"
! 291: string(1) "u"
! 292: string(1) "1"
! 293: string(1) "u"
! 294: string(2) " 1"
! 295: string(2) "1 "
! 296: string(2) " 1"
! 297: string(2) "
! 298: 1"
! 299: string(4) " 1"
! 300: string(30) " 1"
! 301: string(4) "0-9]"
! 302: string(1) "u"
! 303:
! 304: -- Iteration 17 --
! 305: string(10) "2147483648"
! 306: string(1) "u"
! 307: string(10) "2147483648"
! 308: string(1) "u"
! 309: string(11) " 2147483648"
! 310: string(11) "2147483648 "
! 311: string(11) " 2147483648"
! 312: string(11) "
! 313: 2147483648"
! 314: string(10) "2147483648"
! 315: string(30) " 2147483648"
! 316: string(4) "0-9]"
! 317: string(1) "u"
! 318:
! 319: -- Iteration 18 --
! 320: string(10) "2147483647"
! 321: string(1) "u"
! 322: string(10) "2147483647"
! 323: string(1) "u"
! 324: string(11) " 2147483647"
! 325: string(11) "2147483647 "
! 326: string(11) " 2147483647"
! 327: string(11) "
! 328: 2147483647"
! 329: string(10) "2147483647"
! 330: string(30) " 2147483647"
! 331: string(4) "0-9]"
! 332: string(1) "u"
! 333: Done
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>