|
1 // Order of Array.of operations. |
|
2 |
|
3 load(libdir + "asserts.js"); |
|
4 |
|
5 var log; |
|
6 |
|
7 var dstdata = []; |
|
8 var dst = new Proxy(dstdata, { |
|
9 defineProperty: function (t, name, desc) { |
|
10 log.push(["def", name, desc.value]); |
|
11 }, |
|
12 set: function (t, name, value) { |
|
13 log.push(["set", name, value]); |
|
14 } |
|
15 }); |
|
16 |
|
17 function Troop() { |
|
18 return dst; |
|
19 } |
|
20 Troop.of = Array.of; |
|
21 |
|
22 log = []; |
|
23 assertEq(Troop.of("monkeys", "baboons", "kangaroos"), dst); |
|
24 assertDeepEq(log, [ |
|
25 ["def", "0", "monkeys"], |
|
26 ["def", "1", "baboons"], |
|
27 ["def", "2", "kangaroos"], |
|
28 ["set", "length", 3] |
|
29 ]); |
|
30 |