improve `ufuzz` (#4339)
authorAlex Lam S.L <alexlamsl@gmail.com>
Mon, 7 Dec 2020 08:04:51 +0000 (08:04 +0000)
committerGitHub <noreply@github.com>
Mon, 7 Dec 2020 08:04:51 +0000 (16:04 +0800)
test/ufuzz/index.js

index 2d2956b..568b482 100644 (file)
@@ -467,9 +467,13 @@ function createAssignmentPairs(recurmax, noComma, stmtDepth, canThrow, varNames,
                 while (!rng(10)) {
                     var index = rng(pairs.names.length + 1);
                     pairs.names.splice(index, 0, "");
-                    if (rng(2)) {
-                        if (index > pairs.values.length) pairs.values.length = index;
-                        pairs.values.splice(index, 0, createAssignmentValue(recurmax));
+                    if (index < pairs.values.length) {
+                        pairs.values.splice(index, 0, rng(2) ? createAssignmentValue(recurmax) : "");
+                    } else switch (rng(5)) {
+                      case 0:
+                        pairs.values[index] = createAssignmentValue(recurmax);
+                      case 1:
+                        pairs.values.length = index + 1;
                     }
                 }
                 names.unshift("[ " + pairs.names.join(", ") + " ]");