summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/TypedObject/inlineopaque.js
blob: 709ee04066c3926e15ffbc1bbe369d630c146d50 (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
if (!this.hasOwnProperty("TypedObject"))
    quit();

var TO = TypedObject;

var PointType = new TO.StructType({x: TO.float64, y: TO.float64, name:TO.string});
var LineType = new TO.StructType({from: PointType, to: PointType});

function testBasic(gc) {
    var line = new LineType();
    var from = line.from;
    var to = line.to;
    line.from.x = 12;
    line.from.name = "three";
    if (gc)
	minorgc();
    assertEq(to.name, "");
    assertEq(from.name, "three");
    assertEq(from.x, 12);
    assertEq(from.y, 0);
}
for (var i = 0; i < 5; i++)
    testBasic(false);
for (var i = 0; i < 5; i++)
    testBasic(true);