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 428 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
439 | 439 |
440 for (var i = 0; i < objectOwnSymbols.length; i++) { | 440 for (var i = 0; i < objectOwnSymbols.length; i++) { |
441 assertEquals(objectOwnSymbols[i], syms[i * 2]) | 441 assertEquals(objectOwnSymbols[i], syms[i * 2]) |
442 } | 442 } |
443 } | 443 } |
444 TestGetOwnPropertySymbolsWithProto() | 444 TestGetOwnPropertySymbolsWithProto() |
445 | 445 |
446 | 446 |
447 function TestWellKnown() { | 447 function TestWellKnown() { |
448 var symbols = [ | 448 var symbols = [ |
449 "create", "hasInstance", "isConcatSpreadable", "isRegExp", | 449 // TODO(rossberg): reactivate once implemented. |
450 "iterator", "toStringTag", "unscopables" | 450 // "hasInstance", "isConcatSpreadable", "isRegExp", |
| 451 "iterator" //, "toStringTag", "unscopables" |
451 ] | 452 ] |
452 | 453 |
453 for (var i in symbols) { | 454 for (var i in symbols) { |
454 var name = symbols[i] | 455 var name = symbols[i] |
455 var desc = Object.getOwnPropertyDescriptor(Symbol, name) | 456 var desc = Object.getOwnPropertyDescriptor(Symbol, name) |
456 assertSame("symbol", typeof desc.value) | 457 assertSame("symbol", typeof desc.value) |
457 assertSame("Symbol(Symbol." + name + ")", desc.value.toString()) | 458 assertSame("Symbol(Symbol." + name + ")", desc.value.toString()) |
458 assertFalse(desc.writable) | 459 assertFalse(desc.writable) |
459 assertFalse(desc.configurable) | 460 assertFalse(desc.configurable) |
460 assertFalse(desc.enumerable) | 461 assertFalse(desc.enumerable) |
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
493 Realm.shared = symbol1 | 494 Realm.shared = symbol1 |
494 assertSame("x1", Realm.eval(realm, "Symbol.keyFor(Realm.shared)")) | 495 assertSame("x1", Realm.eval(realm, "Symbol.keyFor(Realm.shared)")) |
495 | 496 |
496 var symbol3 = Realm.eval(realm, "Symbol.for('x3')") | 497 var symbol3 = Realm.eval(realm, "Symbol.for('x3')") |
497 assertFalse(symbol1 === symbol3) | 498 assertFalse(symbol1 === symbol3) |
498 assertFalse(symbol2 === symbol3) | 499 assertFalse(symbol2 === symbol3) |
499 assertSame(symbol3, Symbol.for("x3")) | 500 assertSame(symbol3, Symbol.for("x3")) |
500 assertSame("x3", Symbol.keyFor(symbol3)) | 501 assertSame("x3", Symbol.keyFor(symbol3)) |
501 } | 502 } |
502 TestRegistry() | 503 TestRegistry() |
OLD | NEW |