Index: test/webkit/unmatching-argument-count.js |
diff --git a/test/webkit/concat-while-having-a-bad-time.js b/test/webkit/unmatching-argument-count.js |
similarity index 72% |
copy from test/webkit/concat-while-having-a-bad-time.js |
copy to test/webkit/unmatching-argument-count.js |
index dfda1e08a0b36194b787a44ee12a9693acd8aeaf..0e10a6b22b3f7cf2a94eea08b4b5e6b1773c797d 100644 |
--- a/test/webkit/concat-while-having-a-bad-time.js |
+++ b/test/webkit/unmatching-argument-count.js |
@@ -21,11 +21,21 @@ |
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS |
// 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." |
-); |
- |
-Object.defineProperty(Array.prototype, 0, { writable: false }); |
-shouldBe("[42].concat()", "[42]"); |
- |
- |
+function f(a,b,c) { |
+ var d, e; |
+ var args = ""; |
+ for (var i = 0; i < arguments.length; i++) |
+ args+=arguments[i]+ ((i == arguments.length - 1) ? "" : ", "); |
+ return args; |
+} |
+var a = 0; |
+var b = 0; |
+var c = 0; |
+var d = 0; |
+shouldBe('eval("f()")', '""'); |
+shouldBe('eval("f(1)")', '"1"'); |
+shouldBe('eval("f(1, 2)")', '"1, 2"'); |
+shouldBe('eval("f(1, 2, 3)")', '"1, 2, 3"'); |
+shouldBe('eval("f(1, 2, 3, 4)")', '"1, 2, 3, 4"'); |
+shouldBe('eval("f(1, 2, 3, 4, 5)")', '"1, 2, 3, 4, 5"'); |
+shouldBe('eval("f(1, 2, 3, 4, 5, 6)")', '"1, 2, 3, 4, 5, 6"'); |