OLD | NEW |
1 This test checks that the following expressions or statements are valid ECMASCRI
PT code or should throw parse error | 1 This test checks that the following expressions or statements are valid ECMASCRI
PT code or should throw parse error |
2 | 2 |
3 On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE
". | 3 On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE
". |
4 | 4 |
5 | 5 |
6 Unary operators and member access | 6 Unary operators and member access |
7 PASS Valid: "" | 7 PASS Valid: "" |
8 PASS Valid: "function f() { }" | 8 PASS Valid: "function f() { }" |
9 PASS Invalid: "(a" | 9 PASS Invalid: "(a" |
10 PASS Invalid: "function f() { (a }" | 10 PASS Invalid: "function f() { (a }" |
(...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
84 PASS Valid: "s: a[1].l ? b.l['s'] ? c++ : d : true" | 84 PASS Valid: "s: a[1].l ? b.l['s'] ? c++ : d : true" |
85 PASS Valid: "function f() { s: a[1].l ? b.l['s'] ? c++ : d : true }" | 85 PASS Valid: "function f() { s: a[1].l ? b.l['s'] ? c++ : d : true }" |
86 PASS Valid: "a ? b + 1 ? c + 3 * d.l : d[5][6] : e" | 86 PASS Valid: "a ? b + 1 ? c + 3 * d.l : d[5][6] : e" |
87 PASS Valid: "function f() { a ? b + 1 ? c + 3 * d.l : d[5][6] : e }" | 87 PASS Valid: "function f() { a ? b + 1 ? c + 3 * d.l : d[5][6] : e }" |
88 PASS Valid: "a in b instanceof delete -c" | 88 PASS Valid: "a in b instanceof delete -c" |
89 PASS Valid: "function f() { a in b instanceof delete -c }" | 89 PASS Valid: "function f() { a in b instanceof delete -c }" |
90 PASS Invalid: "a in instanceof b.l" | 90 PASS Invalid: "a in instanceof b.l" |
91 PASS Invalid: "function f() { a in instanceof b.l }" | 91 PASS Invalid: "function f() { a in instanceof b.l }" |
92 PASS Valid: "- - true % 5" | 92 PASS Valid: "- - true % 5" |
93 PASS Valid: "function f() { - - true % 5 }" | 93 PASS Valid: "function f() { - - true % 5 }" |
94 PASS Invalid: "- false = 3" | 94 FAIL Invalid: "- false = 3" should throw undefined |
95 PASS Invalid: "function f() { - false = 3 }" | 95 FAIL Invalid: "function f() { - false = 3 }" should throw undefined |
96 PASS Valid: "a: b: c: (1 + null) = 3" | 96 PASS Valid: "a: b: c: (1 + null) = 3" |
97 PASS Valid: "function f() { a: b: c: (1 + null) = 3 }" | 97 PASS Valid: "function f() { a: b: c: (1 + null) = 3 }" |
98 PASS Valid: "a[2] = b.l += c /= 4 * 7 ^ !6" | 98 PASS Valid: "a[2] = b.l += c /= 4 * 7 ^ !6" |
99 PASS Valid: "function f() { a[2] = b.l += c /= 4 * 7 ^ !6 }" | 99 PASS Valid: "function f() { a[2] = b.l += c /= 4 * 7 ^ !6 }" |
100 PASS Invalid: "a + typeof b += c in d" | 100 FAIL Invalid: "a + typeof b += c in d" should throw undefined |
101 PASS Invalid: "function f() { a + typeof b += c in d }" | 101 FAIL Invalid: "function f() { a + typeof b += c in d }" should throw undefined |
102 PASS Invalid: "typeof a &= typeof b" | 102 FAIL Invalid: "typeof a &= typeof b" should throw undefined |
103 PASS Invalid: "function f() { typeof a &= typeof b }" | 103 FAIL Invalid: "function f() { typeof a &= typeof b }" should throw undefined |
104 PASS Valid: "a: ((typeof (a))) >>>= a || b.l && c" | 104 PASS Valid: "a: ((typeof (a))) >>>= a || b.l && c" |
105 PASS Valid: "function f() { a: ((typeof (a))) >>>= a || b.l && c }" | 105 PASS Valid: "function f() { a: ((typeof (a))) >>>= a || b.l && c }" |
106 PASS Valid: "a: b: c[a /= f[a %= b]].l[c[x] = 7] -= a ? b <<= f : g" | 106 PASS Valid: "a: b: c[a /= f[a %= b]].l[c[x] = 7] -= a ? b <<= f : g" |
107 PASS Valid: "function f() { a: b: c[a /= f[a %= b]].l[c[x] = 7] -= a ? b <<= f
: g }" | 107 PASS Valid: "function f() { a: b: c[a /= f[a %= b]].l[c[x] = 7] -= a ? b <<= f
: g }" |
108 PASS Valid: "-void+x['y'].l == x.l != 5 - f[7]" | 108 PASS Valid: "-void+x['y'].l == x.l != 5 - f[7]" |
109 PASS Valid: "function f() { -void+x['y'].l == x.l != 5 - f[7] }" | 109 PASS Valid: "function f() { -void+x['y'].l == x.l != 5 - f[7] }" |
110 Function calls (and new with arguments) | 110 Function calls (and new with arguments) |
111 PASS Valid: "a()()()" | 111 PASS Valid: "a()()()" |
112 PASS Valid: "function f() { a()()() }" | 112 PASS Valid: "function f() { a()()() }" |
113 PASS Valid: "s: l: a[2](4 == 6, 5 = 6)(f[4], 6)" | 113 PASS Valid: "s: l: a[2](4 == 6, 5 = 6)(f[4], 6)" |
(...skipping 268 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
382 PASS Valid: "for (var a, b ; ; ) { break } " | 382 PASS Valid: "for (var a, b ; ; ) { break } " |
383 PASS Valid: "function f() { for (var a, b ; ; ) { break } }" | 383 PASS Valid: "function f() { for (var a, b ; ; ) { break } }" |
384 PASS Valid: "for (var a = b, b = a ; ; ) break" | 384 PASS Valid: "for (var a = b, b = a ; ; ) break" |
385 PASS Valid: "function f() { for (var a = b, b = a ; ; ) break }" | 385 PASS Valid: "function f() { for (var a = b, b = a ; ; ) break }" |
386 PASS Valid: "for (var a = b, c, d, b = a ; x in b ; ) { break }" | 386 PASS Valid: "for (var a = b, c, d, b = a ; x in b ; ) { break }" |
387 PASS Valid: "function f() { for (var a = b, c, d, b = a ; x in b ; ) { break }
}" | 387 PASS Valid: "function f() { for (var a = b, c, d, b = a ; x in b ; ) { break }
}" |
388 PASS Valid: "for (var a = b, c, d ; ; 1 in a()) break" | 388 PASS Valid: "for (var a = b, c, d ; ; 1 in a()) break" |
389 PASS Valid: "function f() { for (var a = b, c, d ; ; 1 in a()) break }" | 389 PASS Valid: "function f() { for (var a = b, c, d ; ; 1 in a()) break }" |
390 PASS Invalid: "for ( ; var a ; ) break" | 390 PASS Invalid: "for ( ; var a ; ) break" |
391 PASS Invalid: "function f() { for ( ; var a ; ) break }" | 391 PASS Invalid: "function f() { for ( ; var a ; ) break }" |
392 PASS Invalid: "for (const a; ; ) break" | 392 FAIL Invalid: "for (const a; ; ) break" should throw undefined |
393 PASS Invalid: "function f() { for (const a; ; ) break }" | 393 FAIL Invalid: "function f() { for (const a; ; ) break }" should throw undefined |
394 PASS Invalid: "for ( %a ; ; ) { }" | 394 PASS Invalid: "for ( %a ; ; ) { }" |
395 PASS Invalid: "function f() { for ( %a ; ; ) { } }" | 395 PASS Invalid: "function f() { for ( %a ; ; ) { } }" |
396 PASS Valid: "for (a in b) break" | 396 PASS Valid: "for (a in b) break" |
397 PASS Valid: "function f() { for (a in b) break }" | 397 PASS Valid: "function f() { for (a in b) break }" |
398 PASS Valid: "for (a() in b) break" | 398 PASS Valid: "for (a() in b) break" |
399 PASS Valid: "function f() { for (a() in b) break }" | 399 PASS Valid: "function f() { for (a() in b) break }" |
400 PASS Valid: "for (a().l[4] in b) break" | 400 PASS Valid: "for (a().l[4] in b) break" |
401 PASS Valid: "function f() { for (a().l[4] in b) break }" | 401 PASS Valid: "function f() { for (a().l[4] in b) break }" |
402 PASS Valid: "for (new a in b in c in d) break" | 402 PASS Valid: "for (new a in b in c in d) break" |
403 PASS Valid: "function f() { for (new a in b in c in d) break }" | 403 PASS Valid: "function f() { for (new a in b in c in d) break }" |
404 PASS Valid: "for (new new new a in b) break" | 404 PASS Valid: "for (new new new a in b) break" |
405 PASS Valid: "function f() { for (new new new a in b) break }" | 405 PASS Valid: "function f() { for (new new new a in b) break }" |
406 PASS Invalid: "for (delete new a() in b) break" | 406 FAIL Invalid: "for (delete new a() in b) break" should throw undefined |
407 PASS Invalid: "function f() { for (delete new a() in b) break }" | 407 FAIL Invalid: "function f() { for (delete new a() in b) break }" should throw un
defined |
408 PASS Invalid: "for (a * a in b) break" | 408 FAIL Invalid: "for (a * a in b) break" should throw undefined |
409 PASS Invalid: "function f() { for (a * a in b) break }" | 409 FAIL Invalid: "function f() { for (a * a in b) break }" should throw undefined |
410 PASS Valid: "for ((a * a) in b) break" | 410 PASS Valid: "for ((a * a) in b) break" |
411 PASS Valid: "function f() { for ((a * a) in b) break }" | 411 PASS Valid: "function f() { for ((a * a) in b) break }" |
412 PASS Invalid: "for (a++ in b) break" | 412 FAIL Invalid: "for (a++ in b) break" should throw undefined |
413 PASS Invalid: "function f() { for (a++ in b) break }" | 413 FAIL Invalid: "function f() { for (a++ in b) break }" should throw undefined |
414 PASS Valid: "for ((a++) in b) break" | 414 PASS Valid: "for ((a++) in b) break" |
415 PASS Valid: "function f() { for ((a++) in b) break }" | 415 PASS Valid: "function f() { for ((a++) in b) break }" |
416 PASS Invalid: "for (++a in b) break" | 416 FAIL Invalid: "for (++a in b) break" should throw undefined |
417 PASS Invalid: "function f() { for (++a in b) break }" | 417 FAIL Invalid: "function f() { for (++a in b) break }" should throw undefined |
418 PASS Valid: "for ((++a) in b) break" | 418 PASS Valid: "for ((++a) in b) break" |
419 PASS Valid: "function f() { for ((++a) in b) break }" | 419 PASS Valid: "function f() { for ((++a) in b) break }" |
420 PASS Invalid: "for (a, b in c) break" | 420 FAIL Invalid: "for (a, b in c) break" should throw undefined |
421 PASS Invalid: "function f() { for (a, b in c) break }" | 421 FAIL Invalid: "function f() { for (a, b in c) break }" should throw undefined |
422 PASS Invalid: "for (a,b in c ;;) break" | 422 PASS Invalid: "for (a,b in c ;;) break" |
423 PASS Invalid: "function f() { for (a,b in c ;;) break }" | 423 PASS Invalid: "function f() { for (a,b in c ;;) break }" |
424 PASS Valid: "for (a,(b in c) ;;) break" | 424 PASS Valid: "for (a,(b in c) ;;) break" |
425 PASS Valid: "function f() { for (a,(b in c) ;;) break }" | 425 PASS Valid: "function f() { for (a,(b in c) ;;) break }" |
426 PASS Valid: "for ((a, b) in c) break" | 426 PASS Valid: "for ((a, b) in c) break" |
427 PASS Valid: "function f() { for ((a, b) in c) break }" | 427 PASS Valid: "function f() { for ((a, b) in c) break }" |
428 PASS Invalid: "for (a ? b : c in c) break" | 428 FAIL Invalid: "for (a ? b : c in c) break" should throw undefined |
429 PASS Invalid: "function f() { for (a ? b : c in c) break }" | 429 FAIL Invalid: "function f() { for (a ? b : c in c) break }" should throw undefin
ed |
430 PASS Valid: "for ((a ? b : c) in c) break" | 430 PASS Valid: "for ((a ? b : c) in c) break" |
431 PASS Valid: "function f() { for ((a ? b : c) in c) break }" | 431 PASS Valid: "function f() { for ((a ? b : c) in c) break }" |
432 PASS Valid: "for (var a in b in c) break" | 432 PASS Valid: "for (var a in b in c) break" |
433 PASS Valid: "function f() { for (var a in b in c) break }" | 433 PASS Valid: "function f() { for (var a in b in c) break }" |
434 PASS Valid: "for (var a = 5 += 6 in b) break" | 434 PASS Valid: "for (var a = 5 += 6 in b) break" |
435 PASS Valid: "function f() { for (var a = 5 += 6 in b) break }" | 435 PASS Valid: "function f() { for (var a = 5 += 6 in b) break }" |
436 PASS Invalid: "for (var a += 5 in b) break" | 436 PASS Invalid: "for (var a += 5 in b) break" |
437 PASS Invalid: "function f() { for (var a += 5 in b) break }" | 437 PASS Invalid: "function f() { for (var a += 5 in b) break }" |
438 PASS Invalid: "for (var a = in b) break" | 438 PASS Invalid: "for (var a = in b) break" |
439 PASS Invalid: "function f() { for (var a = in b) break }" | 439 PASS Invalid: "function f() { for (var a = in b) break }" |
(...skipping 132 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
572 PASS Valid: "if (0) new a(b+c) = 5" | 572 PASS Valid: "if (0) new a(b+c) = 5" |
573 PASS Valid: "function f() { if (0) new a(b+c) = 5 }" | 573 PASS Valid: "function f() { if (0) new a(b+c) = 5 }" |
574 PASS Valid: "([1 || 1].a = 1)" | 574 PASS Valid: "([1 || 1].a = 1)" |
575 PASS Valid: "function f() { ([1 || 1].a = 1) }" | 575 PASS Valid: "function f() { ([1 || 1].a = 1) }" |
576 PASS Valid: "({a: 1 || 1}.a = 1)" | 576 PASS Valid: "({a: 1 || 1}.a = 1)" |
577 PASS Valid: "function f() { ({a: 1 || 1}.a = 1) }" | 577 PASS Valid: "function f() { ({a: 1 || 1}.a = 1) }" |
578 PASS Invalid: "var a.b = c" | 578 PASS Invalid: "var a.b = c" |
579 PASS Invalid: "function f() { var a.b = c }" | 579 PASS Invalid: "function f() { var a.b = c }" |
580 PASS Invalid: "var a.b;" | 580 PASS Invalid: "var a.b;" |
581 PASS Invalid: "function f() { var a.b; }" | 581 PASS Invalid: "function f() { var a.b; }" |
582 PASS e.line is 1 | 582 FAIL e.line should be 1 (of type number). Was undefined (of type undefined). |
583 PASS foo is 'PASS' | 583 PASS foo is 'PASS' |
584 PASS bar is 'PASS' | 584 PASS bar is 'PASS' |
585 PASS successfullyParsed is true | 585 PASS successfullyParsed is true |
586 | 586 |
587 TEST COMPLETE | 587 TEST COMPLETE |
588 | 588 |
OLD | NEW |