| function shouldBe(actual, expected) { |
| if (actual !== expected) |
| throw new Error('bad value: ' + actual); |
| } |
| |
| function testH(string) { |
| return string.match(/H/); |
| } |
| noInline(testH); |
| |
| function testHe(string) { |
| return string.match(/He/); |
| } |
| noInline(testHe); |
| |
| function testHel(string) { |
| return string.match(/Hel/); |
| } |
| noInline(testHel); |
| |
| function testHell(string) { |
| return string.match(/Hell/); |
| } |
| noInline(testHell); |
| |
| function testHello(string) { |
| return string.match(/Hello/); |
| } |
| noInline(testHello); |
| |
| function testHelloW(string) { |
| return string.match(/HelloW/); |
| } |
| noInline(testHelloW); |
| |
| function testHelloWo(string) { |
| return string.match(/HelloWo/); |
| } |
| noInline(testHelloWo); |
| |
| function testHelloWor(string) { |
| return string.match(/HelloWor/); |
| } |
| noInline(testHelloWor); |
| |
| function testHelloWorl(string) { |
| return string.match(/HelloWorl/); |
| } |
| noInline(testHelloWorl); |
| |
| function testHelloWorld(string) { |
| return string.match(/HelloWorld/); |
| } |
| noInline(testHelloWorld); |
| |
| for (var i = 0; i < 1e4; ++i) { |
| shouldBe(testH("HelloWorld")[0], `H`); |
| shouldBe(testHe("HelloWorld")[0], `He`); |
| shouldBe(testHel("HelloWorld")[0], `Hel`); |
| shouldBe(testHell("HelloWorld")[0], `Hell`); |
| shouldBe(testHello("HelloWorld")[0], `Hello`); |
| shouldBe(testHelloW("HelloWorld")[0], `HelloW`); |
| shouldBe(testHelloWo("HelloWorld")[0], `HelloWo`); |
| shouldBe(testHelloWor("HelloWorld")[0], `HelloWor`); |
| shouldBe(testHelloWorl("HelloWorld")[0], `HelloWorl`); |
| shouldBe(testHelloWorld("HelloWorld")[0], `HelloWorld`); |
| shouldBe(testH("HelloWorldこんにちは")[0], `H`); |
| shouldBe(testHe("HelloWorldこんにちは")[0], `He`); |
| shouldBe(testHel("HelloWorldこんにちは")[0], `Hel`); |
| shouldBe(testHell("HelloWorldこんにちは")[0], `Hell`); |
| shouldBe(testHello("HelloWorldこんにちは")[0], `Hello`); |
| shouldBe(testHelloW("HelloWorldこんにちは")[0], `HelloW`); |
| shouldBe(testHelloWo("HelloWorldこんにちは")[0], `HelloWo`); |
| shouldBe(testHelloWor("HelloWorldこんにちは")[0], `HelloWor`); |
| shouldBe(testHelloWorl("HelloWorldこんにちは")[0], `HelloWorl`); |
| shouldBe(testHelloWorld("HelloWorldこんにちは")[0], `HelloWorld`); |
| } |