summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/basic/test-jitinfo.js
blob: 606f2777946a81d8a876fa2a018279ac7eb65952 (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
// Test for the shell's FakeDOMObject constructor. This test
// ensures the fuzzers know about this object.
function f() {
  var res = 0;
  var d = new FakeDOMObject();
  assertEq(d !== new FakeDOMObject(), true);

  for (var i = 0; i < 100; i++) {
    assertEq(d.slot, 42);

    var x = d.x;
    assertEq(typeof x, "number");

    d.x = 10;
    d.x = undefined;

    d.x = FakeDOMObject.prototype.x;
    FakeDOMObject.prototype.x = d.x;
    FakeDOMObject.prototype.doFoo();

    assertEq(d.doFoo(), 0);
    assertEq(d.doFoo(1), 1);
    assertEq(d.doFoo(1, 2), 2);
  }
}
f();