code: function predicate(str) {
                  var prefix = fs.readFileSync(prefixTestFile, "utf8");
                  var postfix = fs.readFileSync(postfixTestFile, "utf8");
                  fs.writeFileSync(tmpTestFile, prefix + str + postfix, "utf8");
                  process.stdout.write('.');
                  var result = shelljs.exec("gtimeout 30s node " + tmpTestFile+ " > /dev/null 2>&1");
                  if (result.code !== 0) {
                      return MAX_COST + 1;
                  } else {
                      var results = JSON.parse(fs.readFileSync(resultFile, "utf8"));
                      if (results.featuresCovered[i]) {
                          if (results.modified) {
                              console.log("New feature splitting test found: " + str);
                              console.log("Writing test to " + newTestFileName + newTestIndex + ".js. Ignoring the test.");
                              fs.writeFileSync(newTestFileName + newTestIndex + ".js", prefix + str + postfix, "utf8");
                              return MAX_COST + 1;
                          } else {
                              var curMin = Object.keys(results.featuresCovered).length;
                              if (min > curMin) {
                                  min = curMin;
                              }
                              console.log("Found a passing test");
                              console.log(str);
                              return curMin;
                          }
                      } else {
                          return MAX_COST + 1;
                      }
                  }
              }
docs: console.log(combinedTest);