| // Copyright (c) 2012 Ecma International. All rights reserved. |
| // This code is governed by the BSD license found in the LICENSE file. |
| |
| /*--- |
| es5id: 15.2.3.4-4-b-2 |
| description: > |
| Object.getOwnPropertyNames - all own properties are pushed into |
| the returned array |
| includes: [compareArray.js] |
| ---*/ |
| |
| var obj = { |
| "a": "a" |
| }; |
| |
| Object.defineProperty(obj, "b", { |
| get: function() { |
| return "b"; |
| }, |
| enumerable: false, |
| configurable: true |
| }); |
| |
| Object.defineProperty(obj, "c", { |
| get: function() { |
| return "c"; |
| }, |
| enumerable: true, |
| configurable: true |
| }); |
| |
| Object.defineProperty(obj, "d", { |
| value: "d", |
| enumerable: false, |
| configurable: true |
| }); |
| |
| var actual = Object.getOwnPropertyNames(obj); |
| var expected = ["a", "b", "c", "d"]; |
| |
| assert(compareArray(actual, expected), 'compareArray(actual, expected) !== true'); |