André Bargull e31ae1ad9f Invalid language tests
- in-statement-position-label-statement.js is an Annex-B test (B.3.2 Labelled Function Declarations), moved to annexB directory
- identifier-let-allowed-as-lefthandside-expression-strict.js needs to check for a SyntaxError (ES6, 12.1.1)
- Remove sort() calls in test/built-ins/Object/getOwnPropertyNames/*.js
- Remove sort() calls in test/language/block-scope/syntax/for-in/acquire-properties-from-*.js
- verifyConfigurable() needs to called last in test/built-ins/Object/is/length.js
- All productions within ClassBody are implicitly strict, update test/language/class/method-definition/yield-as-*.js accordingly
- Remove unnecessary noStrict flag in test/language/class/method-definition/yield-as-generator-method-binding-identifier.js
- Check own symbols are returned in property creation order from Object.getOwnPropertySymbols():
  - test/language/computed-property-names/basics/symbol.js
  - test/language/computed-property-names/class/method/symbol.js
  - test/language/computed-property-names/class/static/method-symbol.js
  - test/language/computed-property-names/object/method/symbol.js
- Fix copy-paste error in test/language/expressions/object/method-definition/yield-as-function-expression-binding-identifier.js
2015-04-27 16:56:19 +02:00

48 lines
1.1 KiB
JavaScript

// Copyright (c) 2012 Ecma International. All rights reserved.
// Ecma International makes this code available under the terms and conditions set
// forth on http://hg.ecmascript.org/tests/test262/raw-file/tip/LICENSE (the
// "Use Terms"). Any redistribution of this code must retain the above
// copyright and this notice and otherwise comply with the Use Terms.
/*---
es5id: 15.2.3.4-4-b-2
description: >
Object.getOwnPropertyNames - all own properties are pushed into
the returned array
includes:
- runTestCase.js
- compareArray.js
---*/
function testcase() {
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"];
return compareArray(actual, expected);
}
runTestCase(testcase);