45 lines
730 B
JavaScript
45 lines
730 B
JavaScript
description(
|
|
"This test checks that toString() round-trip on a function that has do..while in JavaScript does not insert extra semicolon."
|
|
);
|
|
|
|
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");
|