mirror of
https://github.com/tc39/test262.git
synced 2025-05-04 15:00:42 +02:00
40 lines
790 B
JavaScript
40 lines
790 B
JavaScript
function shouldBe(actual, expected)
|
|
{
|
|
if (actual !== expected)
|
|
throw new Error('bad value: ' + actual);
|
|
}
|
|
noInline(shouldBe);
|
|
|
|
function test1(array)
|
|
{
|
|
for (var i = 0; i < 5; ++i) {
|
|
array[0] = array[0] + 1;
|
|
}
|
|
return array;
|
|
}
|
|
noInline(test1);
|
|
|
|
function test2(array)
|
|
{
|
|
for (var i = 0; i < 5; ++i) {
|
|
array[0] = array[0] + 1;
|
|
}
|
|
return array;
|
|
}
|
|
noInline(test2);
|
|
|
|
function test3(array)
|
|
{
|
|
for (var i = 0; i < 5; ++i) {
|
|
array[0] = array[0] + 1;
|
|
}
|
|
return array;
|
|
}
|
|
noInline(test3);
|
|
|
|
for (var i = 0; i < 1e5; ++i) {
|
|
shouldBe(String(test1([0, 1, 2, 3, 4])), `5,1,2,3,4`);
|
|
shouldBe(String(test2([0.1, 1.1, 2.1, 3.1, 4.1])), `5.1,1.1,2.1,3.1,4.1`);
|
|
shouldBe(String(test3(['C', 'o', 'c', 'o', 'a'])), `C11111,o,c,o,a`);
|
|
}
|