| /* Any copyright is dedicated to the Public Domain. |
| * http://creativecommons.org/licenses/publicdomain/ */ |
| |
| var names = [ |
| "iterator", |
| "match", |
| "species", |
| ]; |
| |
| for (var name of names) { |
| // Well-known symbols exist. |
| assertEq(typeof Symbol[name], "symbol"); |
| |
| // They are never in the registry. |
| assertEq(Symbol[name] !== Symbol.for("Symbol." + name), true); |
| |
| // They are shared across realms. |
| if (typeof Realm === 'function') |
| throw new Error("please update this test to use Realms"); |
| if (typeof newGlobal === 'function') { |
| var g = newGlobal(); |
| assertEq(Symbol[name], g.Symbol[name]); |
| } |
| |
| // Descriptor is all false. |
| var desc = Object.getOwnPropertyDescriptor(Symbol, name); |
| assertEq(typeof desc.value, "symbol"); |
| assertEq(desc.writable, false); |
| assertEq(desc.enumerable, false); |
| assertEq(desc.configurable, false); |
| } |
| |
| if (typeof reportCompare === "function") |
| reportCompare(0, 0); |