Annotation of embedaddon/php/ext/tokenizer/tests/token_get_all_variation14.phpt, revision 1.1
1.1 ! misho 1: --TEST--
! 2: Test token_get_all() function : usage variations - invalid token values
! 3: --FILE--
! 4: <?php
! 5: /* Prototype : array token_get_all(string $source)
! 6: * Description: splits the given source into an array of PHP languange tokens
! 7: * Source code: ext/tokenizer/tokenizer.c
! 8: */
! 9:
! 10: /*
! 11: * Testing token_get_all() with 'source' string containing invalid/unknown token value
! 12: * unknown tokens - T_UNKNOWN(307)
! 13: */
! 14:
! 15: echo "*** Testing token_get_all() : with invalid/unknown tokens ***\n";
! 16:
! 17: // with valid php tags and invalid tokens
! 18: echo "-- with valid PHP tags & invlid tokens --\n";
! 19: $source = '<?php
! 20: struct myStruct {
! 21: variable $a;
! 22: method() { display $a; }
! 23: }
! 24: ?>';
! 25: var_dump( token_get_all($source));
! 26:
! 27: // with invalid open tag for testing entire source to be unkown token
! 28: echo "-- with invlalid PHP open tag & valid tokens --\n";
! 29: $source = '<pli
! 30: echo "hello world"; ?>';
! 31: var_dump( token_get_all($source));
! 32:
! 33: // with invalid PHP tags and invalid tokens
! 34: echo "-- with invalid PHP tags and tokens --\n";
! 35: $source = '<PDP display $a; <';
! 36: var_dump( token_get_all($source));
! 37:
! 38: echo "Done"
! 39: ?>
! 40: --EXPECTF--
! 41: *** Testing token_get_all() : with invalid/unknown tokens ***
! 42: -- with valid PHP tags & invlid tokens --
! 43: array(29) {
! 44: [0]=>
! 45: array(3) {
! 46: [0]=>
! 47: int(368)
! 48: [1]=>
! 49: string(6) "<?php "
! 50: [2]=>
! 51: int(1)
! 52: }
! 53: [1]=>
! 54: array(3) {
! 55: [0]=>
! 56: int(371)
! 57: [1]=>
! 58: string(1) "
! 59: "
! 60: [2]=>
! 61: int(1)
! 62: }
! 63: [2]=>
! 64: array(3) {
! 65: [0]=>
! 66: int(307)
! 67: [1]=>
! 68: string(6) "struct"
! 69: [2]=>
! 70: int(2)
! 71: }
! 72: [3]=>
! 73: array(3) {
! 74: [0]=>
! 75: int(371)
! 76: [1]=>
! 77: string(1) " "
! 78: [2]=>
! 79: int(2)
! 80: }
! 81: [4]=>
! 82: array(3) {
! 83: [0]=>
! 84: int(307)
! 85: [1]=>
! 86: string(8) "myStruct"
! 87: [2]=>
! 88: int(2)
! 89: }
! 90: [5]=>
! 91: array(3) {
! 92: [0]=>
! 93: int(371)
! 94: [1]=>
! 95: string(1) " "
! 96: [2]=>
! 97: int(2)
! 98: }
! 99: [6]=>
! 100: string(1) "{"
! 101: [7]=>
! 102: array(3) {
! 103: [0]=>
! 104: int(371)
! 105: [1]=>
! 106: string(3) "
! 107: "
! 108: [2]=>
! 109: int(2)
! 110: }
! 111: [8]=>
! 112: array(3) {
! 113: [0]=>
! 114: int(307)
! 115: [1]=>
! 116: string(8) "variable"
! 117: [2]=>
! 118: int(3)
! 119: }
! 120: [9]=>
! 121: array(3) {
! 122: [0]=>
! 123: int(371)
! 124: [1]=>
! 125: string(1) " "
! 126: [2]=>
! 127: int(3)
! 128: }
! 129: [10]=>
! 130: array(3) {
! 131: [0]=>
! 132: int(309)
! 133: [1]=>
! 134: string(2) "$a"
! 135: [2]=>
! 136: int(3)
! 137: }
! 138: [11]=>
! 139: string(1) ";"
! 140: [12]=>
! 141: array(3) {
! 142: [0]=>
! 143: int(371)
! 144: [1]=>
! 145: string(3) "
! 146: "
! 147: [2]=>
! 148: int(3)
! 149: }
! 150: [13]=>
! 151: array(3) {
! 152: [0]=>
! 153: int(307)
! 154: [1]=>
! 155: string(6) "method"
! 156: [2]=>
! 157: int(4)
! 158: }
! 159: [14]=>
! 160: string(1) "("
! 161: [15]=>
! 162: string(1) ")"
! 163: [16]=>
! 164: array(3) {
! 165: [0]=>
! 166: int(371)
! 167: [1]=>
! 168: string(1) " "
! 169: [2]=>
! 170: int(4)
! 171: }
! 172: [17]=>
! 173: string(1) "{"
! 174: [18]=>
! 175: array(3) {
! 176: [0]=>
! 177: int(371)
! 178: [1]=>
! 179: string(1) " "
! 180: [2]=>
! 181: int(4)
! 182: }
! 183: [19]=>
! 184: array(3) {
! 185: [0]=>
! 186: int(307)
! 187: [1]=>
! 188: string(7) "display"
! 189: [2]=>
! 190: int(4)
! 191: }
! 192: [20]=>
! 193: array(3) {
! 194: [0]=>
! 195: int(371)
! 196: [1]=>
! 197: string(1) " "
! 198: [2]=>
! 199: int(4)
! 200: }
! 201: [21]=>
! 202: array(3) {
! 203: [0]=>
! 204: int(309)
! 205: [1]=>
! 206: string(2) "$a"
! 207: [2]=>
! 208: int(4)
! 209: }
! 210: [22]=>
! 211: string(1) ";"
! 212: [23]=>
! 213: array(3) {
! 214: [0]=>
! 215: int(371)
! 216: [1]=>
! 217: string(1) " "
! 218: [2]=>
! 219: int(4)
! 220: }
! 221: [24]=>
! 222: string(1) "}"
! 223: [25]=>
! 224: array(3) {
! 225: [0]=>
! 226: int(371)
! 227: [1]=>
! 228: string(1) "
! 229: "
! 230: [2]=>
! 231: int(4)
! 232: }
! 233: [26]=>
! 234: string(1) "}"
! 235: [27]=>
! 236: array(3) {
! 237: [0]=>
! 238: int(371)
! 239: [1]=>
! 240: string(1) "
! 241: "
! 242: [2]=>
! 243: int(5)
! 244: }
! 245: [28]=>
! 246: array(3) {
! 247: [0]=>
! 248: int(370)
! 249: [1]=>
! 250: string(2) "?>"
! 251: [2]=>
! 252: int(6)
! 253: }
! 254: }
! 255: -- with invlalid PHP open tag & valid tokens --
! 256: array(1) {
! 257: [0]=>
! 258: array(3) {
! 259: [0]=>
! 260: int(311)
! 261: [1]=>
! 262: string(28) "<pli
! 263: echo "hello world"; ?>"
! 264: [2]=>
! 265: int(1)
! 266: }
! 267: }
! 268: -- with invalid PHP tags and tokens --
! 269: array(1) {
! 270: [0]=>
! 271: array(3) {
! 272: [0]=>
! 273: int(311)
! 274: [1]=>
! 275: string(19) "<PDP display $a; <"
! 276: [2]=>
! 277: int(1)
! 278: }
! 279: }
! 280: Done
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>