]>
git.saurik.com Git - apple/javascriptcore.git/blob - tests/stress/symbol-define-property.js
1 // This tests Object.create, Object.defineProperty, Object.defineProperties work with Symbol.
3 function testSymbol(object
) {
4 if (!object
.hasOwnProperty(Symbol
.iterator
))
5 throw "Error: object doesn't have Symbol.iterator";
6 if (object
.propertyIsEnumerable(Symbol
.iterator
))
7 throw "Error: Symbol.iterator is defined as enumerable";
8 if (JSON
.stringify(Object
.getOwnPropertyDescriptor(object
, Symbol
.iterator
)) !== '{"value":42,"writable":false,"enumerable":false,"configurable":false}')
9 throw "Error: bad property descriptor " + JSON
.stringify(Object
.getOwnPropertyDescriptor(object
, Symbol
.iterator
));
10 if (Object
.getOwnPropertySymbols(object
).length
!== 1)
11 throw "Error: bad value " + Object
.getOwnPropertySymbols(object
).length
;
12 if (Object
.getOwnPropertySymbols(object
)[0] !== Symbol
.iterator
)
13 throw "Error: bad value " + String(Object
.getOwnPropertySymbols(object
)[0]);
16 var object
= Object
.create(Object
.prototype, {
23 var object
= Object
.defineProperties({}, {
30 var object
= Object
.defineProperty({}, Symbol
.iterator
, {