michael@0: load(libdir + "asserts.js"); michael@0: michael@0: function buildComprehension() { michael@0: // Throws if elemental fun not callable michael@0: assertThrowsInstanceOf(function () { michael@0: var p = new ParallelArray([2,2], undefined); michael@0: }, TypeError); michael@0: assertThrowsInstanceOf(function () { michael@0: var p = new ParallelArray(2, /x/); michael@0: }, TypeError); michael@0: assertThrowsInstanceOf(function () { michael@0: var p = new ParallelArray(/x/, /x/); michael@0: }, TypeError); michael@0: assertThrowsInstanceOf(function () { michael@0: new ParallelArray([0xffffffff + 1], function() { return 0; }); michael@0: }, RangeError); michael@0: assertThrowsInstanceOf(function () { michael@0: new ParallelArray(0xffffffff + 1, function() { return 0; }); michael@0: }, RangeError); michael@0: assertThrowsInstanceOf(function () { michael@0: new ParallelArray([0xfffff, 0xffff], function() { return 0; }); michael@0: }, RangeError); michael@0: } michael@0: michael@0: // FIXME(bug 844887) throw correct exception michael@0: // if (getBuildConfiguration().parallelJS) michael@0: // buildComprehension();