test262/test/built-ins/WeakSet/iterable-with-object-values.js
Philip Chimento d101ab9bc4 Adapt descriptions of existing tests using Objects as weak values
There are many existing tests for WeakMap, WeakSet, WeakRef, and
FinalizationRegistry using Objects as weak values. For symbols-as-weakmap-
keys, we'll want to write tests that parallel these for Symbol keys.

Change the descriptions and filenames of these tests to describe their new
scope of only Object weak values.

Update the front matter of these tests while we're at it, to reflect the
changes to the spec text that the symbols-as-weakmap-keys brings in. (In
some cases, remove irrelevant bits of the front matter.)

See: #2850
2022-10-12 09:58:45 +02:00

30 lines
935 B
JavaScript

// Copyright (C) 2015 the V8 project authors. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-weakset-iterable
description: >
Returns the new WeakSet adding Object values from the iterable parameter.
info: |
WeakSet ( [ _iterable_ ] )
8. Repeat,
d. Let _status_ be Completion(Call(_adder_, _set_, « _nextValue_ »)).
WeakSet.prototype.add ( _value_ ):
6. Append _value_ as the last element of _entries_.
features: [WeakSet]
---*/
var first = {};
var second = {};
var added = [];
var add = WeakSet.prototype.add;
WeakSet.prototype.add = function(value) {
added.push(value);
return add.call(this, value);
};
var s = new WeakSet([first, second]);
assert.sameValue(added.length, 2, 'Called WeakSet#add for each object');
assert.sameValue(added[0], first, 'Adds object in order - first');
assert.sameValue(added[1], second, 'Adds object in order - second');