diff options
author | Alex Lam S.L <alexlamsl@gmail.com> | 2017-06-15 01:00:03 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-06-15 01:00:03 +0800 |
commit | 0a1e523cd5de9b96946b05bd70b3f125a4bfb4cc (patch) | |
tree | 8617de682c2d38a4ed33e791ce78c0133b342487 | |
parent | 4231f7323e608ae4e4c9461d3d0c1f638ae69546 (diff) | |
download | tracifyjs-0a1e523cd5de9b96946b05bd70b3f125a4bfb4cc.tar.gz tracifyjs-0a1e523cd5de9b96946b05bd70b3f125a4bfb4cc.zip |
fix parsing of `expect_stdout` (#2096)
fixes #2095
-rwxr-xr-x | test/run-tests.js | 28 |
1 files changed, 13 insertions, 15 deletions
diff --git a/test/run-tests.js b/test/run-tests.js index 188532ea..71ffe72a 100755 --- a/test/run-tests.js +++ b/test/run-tests.js @@ -294,24 +294,22 @@ function parse_test(file) { if (label.name == "expect_exact" || label.name == "node_version") { test[label.name] = read_string(stat); } else if (label.name == "expect_stdout") { - if (stat.TYPE == "SimpleStatement") { - var body = stat.body; - if (body instanceof U.AST_Boolean) { - test[label.name] = body.value; - } else if (body instanceof U.AST_Call) { - var ctor = global[body.expression.name]; - assert.ok(ctor === Error || ctor.prototype instanceof Error, tmpl("Unsupported expect_stdout format [{line},{col}]", { + var body = stat.body; + if (body instanceof U.AST_Boolean) { + test[label.name] = body.value; + } else if (body instanceof U.AST_Call) { + var ctor = global[body.expression.name]; + assert.ok(ctor === Error || ctor.prototype instanceof Error, tmpl("Unsupported expect_stdout format [{line},{col}]", { + line: label.start.line, + col: label.start.col + })); + test[label.name] = ctor.apply(null, body.args.map(function(node) { + assert.ok(node instanceof U.AST_Constant, tmpl("Unsupported expect_stdout format [{line},{col}]", { line: label.start.line, col: label.start.col })); - test[label.name] = ctor.apply(null, body.args.map(function(node) { - assert.ok(node instanceof U.AST_Constant, tmpl("Unsupported expect_stdout format [{line},{col}]", { - line: label.start.line, - col: label.start.col - })); - return node.value; - })); - } + return node.value; + })); } else { test[label.name] = read_string(stat) + "\n"; } |