mirror of https://github.com/tc39/test262.git
34 lines
1.0 KiB
JavaScript
34 lines
1.0 KiB
JavaScript
// Copyright (C) 2020 Rick Waldron. All rights reserved.
|
|
// This code is governed by the BSD license found in the LICENSE file.
|
|
/*---
|
|
esid: sec-object.getownpropertysymbols
|
|
description: >
|
|
Object.getOwnPropertySymbols called with an invalid non-object value
|
|
info: |
|
|
GetOwnPropertyKeys ( O, type )
|
|
|
|
Let obj be ? ToObject(O).
|
|
Let keys be ? obj.[[OwnPropertyKeys]]().
|
|
Let nameList be a new empty List.
|
|
For each element nextKey of keys, do
|
|
If Type(nextKey) is Symbol and type is symbol or Type(nextKey) is String and type is string, then
|
|
Append nextKey as the last element of nameList.
|
|
Return CreateArrayFromList(nameList).
|
|
|
|
features: [Symbol]
|
|
---*/
|
|
|
|
let count = 0;
|
|
|
|
assert.throws(TypeError, () => {
|
|
count++;
|
|
Object.getOwnPropertySymbols(undefined);
|
|
}, '`Object.getOwnPropertySymbols(undefined)` throws TypeError');
|
|
|
|
assert.throws(TypeError, () => {
|
|
count++;
|
|
Object.getOwnPropertySymbols(null);
|
|
}, '`Object.getOwnPropertySymbols(null)` throws TypeError');
|
|
|
|
assert.sameValue(count, 2, 'The value of `count` is 2');
|