summaryrefslogtreecommitdiffstats
path: root/js/src/tests/non262/TypedArray/constructor-ArrayBuffer-species.js
blob: 9e27b2cd3d8ab9b9bbbd5db0685e73300a4e2d4b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
// |reftest| shell-option(--enable-float16array)
for (let ctor of typedArrayConstructors) {
  let arr = new ctor([1, 2, 3, 4, 5, 6, 7, 8]);

  arr.buffer.constructor = {
    get [Symbol.species]() {
      throw new Error("unexpected @@species access");
    }
  };

  for (let ctor2 of typedArrayConstructors) {
    let arr2 = new ctor2(arr);

    assertEq(Object.getPrototypeOf(arr2.buffer), ArrayBuffer.prototype);
    assertEq(arr2.buffer.constructor, ArrayBuffer);
  }
}

if (typeof reportCompare === "function")
    reportCompare(true, true);