test262/test/built-ins/WeakSet/add-not-callable-throws.js

26 lines
694 B
JavaScript
Raw Normal View History

2015-06-11 18:41:52 +02:00
// Copyright (C) 2015 the V8 project authors. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
2017-06-29 22:03:46 +02:00
esid: sec-weakset-iterable
2015-06-11 18:41:52 +02:00
description: >
Throws TypeError if add is not callable on constructor call.
info: |
2015-06-11 18:41:52 +02:00
23.4.1.1 WeakSet ( [ iterable ] )
...
5. If iterable is not present, let iterable be undefined.
6. If iterable is either undefined or null, let iter be undefined.
7. Else,
a. Let adder be Get(set, "add").
b. ReturnIfAbrupt(adder).
c. If IsCallable(adder) is false, throw a TypeError exception.
...
---*/
WeakSet.prototype.add = null;
new WeakSet();
assert.throws(TypeError, function() {
new WeakSet([]);
});