OLD | NEW |
1 // Copyright 2013 the V8 project authors. All rights reserved. | 1 // Copyright 2013 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 489 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
500 | 500 |
501 function TestGetOwnPropertySymbolsOnPrimitives() { | 501 function TestGetOwnPropertySymbolsOnPrimitives() { |
502 assertEquals(Object.getOwnPropertySymbols(true), []); | 502 assertEquals(Object.getOwnPropertySymbols(true), []); |
503 assertEquals(Object.getOwnPropertySymbols(5000), []); | 503 assertEquals(Object.getOwnPropertySymbols(5000), []); |
504 assertEquals(Object.getOwnPropertySymbols("OK"), []); | 504 assertEquals(Object.getOwnPropertySymbols("OK"), []); |
505 } | 505 } |
506 TestGetOwnPropertySymbolsOnPrimitives(); | 506 TestGetOwnPropertySymbolsOnPrimitives(); |
507 | 507 |
508 | 508 |
509 function TestComparison() { | 509 function TestComparison() { |
510 function f() { | 510 function lt() { var a = Symbol(); var b = Symbol(); a < b; } |
511 var a = Symbol(); | 511 function gt() { var a = Symbol(); var b = Symbol(); a > b; } |
512 a < a; | 512 function le() { var a = Symbol(); var b = Symbol(); a <= b; } |
513 a > a; | 513 function ge() { var a = Symbol(); var b = Symbol(); a >= b; } |
514 a <= a; | 514 function lt_same() { var a = Symbol(); a < a; } |
515 a >= a; | 515 function gt_same() { var a = Symbol(); a > a; } |
| 516 function le_same() { var a = Symbol(); a <= a; } |
| 517 function ge_same() { var a = Symbol(); a >= a; } |
| 518 |
| 519 var throwFuncs = [lt, gt, le, ge, lt_same, gt_same, le_same, ge_same]; |
| 520 |
| 521 for (var f of throwFuncs) { |
| 522 assertThrows(f, TypeError); |
| 523 %OptimizeFunctionOnNextCall(f); |
| 524 assertThrows(f, TypeError); |
| 525 assertThrows(f, TypeError); |
516 } | 526 } |
517 | |
518 assertThrows(f, TypeError); | |
519 %OptimizeFunctionOnNextCall(f); | |
520 assertThrows(f, TypeError); | |
521 assertThrows(f, TypeError); | |
522 | |
523 function g() { | |
524 var a = Symbol(); | |
525 var b = Symbol(); | |
526 a < b; | |
527 a > b; | |
528 a <= b; | |
529 a >= b; | |
530 } | |
531 assertThrows(g, TypeError); | |
532 %OptimizeFunctionOnNextCall(g); | |
533 assertThrows(g, TypeError); | |
534 assertThrows(g, TypeError); | |
535 } | 527 } |
536 TestComparison(); | 528 TestComparison(); |
OLD | NEW |