summaryrefslogtreecommitdiffstats
path: root/js/src/tests/non262/Tuple/prototype/toSorted/tuplelength-internal.js
blob: 8353eaea1122cc8e741bd4709268c82eaa861ae6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
// |reftest| skip-if(!this.hasOwnProperty("Tuple"))
/* Use internal length rather than getting a length property */
var getCalls = 0;
var desc = {
  get: function getLen() {
    getCalls++;
    return 0;
  }
};

var internalLength = Object.getOwnPropertyDescriptor(Tuple.prototype, "length").get;
Object.defineProperty(Tuple.prototype, "length", desc);

let sample = #[42,42,42];

getCalls = 0;

var result = sample.toSorted();

assertEq(getCalls, 0)
assertEq(result, sample);
assertEq(result[0], sample[0]);
assertEq(result[1], sample[1]);
assertEq(result[2], sample[2]);
assertEq(result.length, 0);
assertEq(internalLength.call(result), 3);

reportCompare(0, 0);