| Index: test/webkit/do-while-semicolon.js
|
| diff --git a/test/webkit/concat-while-having-a-bad-time.js b/test/webkit/do-while-semicolon.js
|
| similarity index 67%
|
| copy from test/webkit/concat-while-having-a-bad-time.js
|
| copy to test/webkit/do-while-semicolon.js
|
| index dfda1e08a0b36194b787a44ee12a9693acd8aeaf..cd7cf4c1028ce794b17dbb326b77804aec0d5ac1 100644
|
| --- a/test/webkit/concat-while-having-a-bad-time.js
|
| +++ b/test/webkit/do-while-semicolon.js
|
| @@ -22,10 +22,46 @@
|
| // SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
|
| description(
|
| -"Tests the behavior of Array.prototype.concat while the array is having a bad time due to one of the elements we are concatenating."
|
| +"This test checks that toString() round-trip on a function that has do..while in JavaScript does not insert extra semicolon."
|
| );
|
|
|
| -Object.defineProperty(Array.prototype, 0, { writable: false });
|
| -shouldBe("[42].concat()", "[42]");
|
| +function f1() {
|
| + do {} while(0);
|
| +}
|
|
|
| +function f2() {
|
| + do {} while(0)
|
| +}
|
|
|
| +function f3() {
|
| + do {} while(0) ;
|
| +}
|
| +
|
| +function f4() {
|
| + do {} while(0) /*empty*/ ;
|
| +}
|
| +
|
| +
|
| +
|
| +if (typeof uneval == "undefined")
|
| + uneval = function(x) { return '(' + x.toString()+ ')'; }
|
| +
|
| +
|
| +uf1 = uneval(f1);
|
| +ueuf1 = uneval(eval(uneval(f1)));
|
| +
|
| +uf2 = uneval(f2);
|
| +ueuf2 = uneval(eval(uneval(f2)));
|
| +
|
| +uf3 = uneval(f3);
|
| +ueuf3 = uneval(eval(uneval(f3)));
|
| +
|
| +uf4 = uneval(f4);
|
| +ueuf4 = uneval(eval(uneval(f4)));
|
| +
|
| +
|
| +
|
| +shouldBe("ueuf1", "uf1");
|
| +shouldBe("ueuf2", "uf2");
|
| +shouldBe("ueuf3", "uf3");
|
| +shouldBe("ueuf4", "uf4");
|
|
|