michael@0: var Test = function (foo) { michael@0: var a = []; michael@0: michael@0: this.fillArray = function() { michael@0: a = []; michael@0: for (var i = 0; i < 10; i++) michael@0: a.push(0); michael@0: assertEq(a.length, 10); michael@0: } michael@0: michael@0: foo.go(this); michael@0: }; michael@0: michael@0: // Import assertEq now to prevent global object shape from changing. michael@0: assertEq(true, true); michael@0: michael@0: (new Test({ go: function(p) { michael@0: p.fill = function() { michael@0: p.fillArray(); michael@0: } michael@0: }})).fill(); michael@0: michael@0: new Test({ go: function(p) { michael@0: for (var k = 0; k < 10; k++) michael@0: p.fillArray(); michael@0: }});