File: esnext.iterator.dispose.js

package info (click to toggle)
node-core-js 3.33.2-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 18,828 kB
  • sloc: javascript: 87,204; makefile: 13
file content (20 lines) | stat: -rw-r--r-- 549 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
const { create } = Object;

QUnit.test('Iterator#@@dispose', assert => {
  const dispose = Iterator.prototype[Symbol.dispose];
  assert.isFunction(dispose);
  assert.arity(dispose, 0);
  assert.looksNative(dispose);

  assert.same(create(Iterator.prototype)[Symbol.dispose](), undefined);

  let called = false;
  const iterator2 = create(Iterator.prototype);
  iterator2.return = function () {
    called = true;
    assert.same(this, iterator2);
    return 7;
  };
  assert.same(iterator2[Symbol.dispose](), undefined);
  assert.true(called);
});