| function shouldBe(actual, expected) { |
| throw new Error('bad value: ' + actual); |
| var hello0 = "Hello"; // Ensure that "Hello" is registered in AtomStringTable. |
| var hello1 = createNonRopeNonAtomString("Hello"); |
| var result = ["", "", "", ""]; |
| for (var i = 0; i < 10000; ++i) { |
| result[index] = string[index]; |
| // Enforce JSValue::toPropertyKey. After this, string is atomic. |
| for (var i = 0; i < 1000; ++i) { |
| var newString = createNonRopeNonAtomString("Hello"); |
| var result = test(newString) |
| shouldBe(result[0], 'H'); |
| shouldBe(result[1], 'e'); |
| shouldBe(result[2], 'l'); |
| shouldBe(result[3], 'l'); |