fix parsing of `expect_stdout` (#2096)
authorAlex Lam S.L <alexlamsl@gmail.com>
Wed, 14 Jun 2017 17:00:03 +0000 (01:00 +0800)
committerGitHub <noreply@github.com>
Wed, 14 Jun 2017 17:00:03 +0000 (01:00 +0800)
fixes #2095

test/run-tests.js

index 188532e..71ffe72 100755 (executable)
@@ -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";
                     }