Convert 90-test_external.t to using "executable" rather than "system"
authorRichard Levitte <levitte@openssl.org>
Fri, 14 Oct 2016 14:52:50 +0000 (15:52 +0100)
committerMatt Caswell <matt@openssl.org>
Fri, 4 Nov 2016 10:38:54 +0000 (10:38 +0000)
Use the newly added "executable" function rather than "system". Also filter
the output to add a prefix to every line so that the "ok" doesn't confuse
Test::More

Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
test/recipes/90-test_external.t

index eb42ac12ff03bd0ce151e4467d269c078e13ca22..d08d66faad66ad90710db48ad801e986a28f1a21 100644 (file)
@@ -9,7 +9,7 @@
 
 use OpenSSL::Test;
 use OpenSSL::Test::Utils;
-use OpenSSL::Test qw/:DEFAULT srctop_file/;
+use OpenSSL::Test qw/:DEFAULT srctop_file cmdstr/;
 
 setup("test_external");
 
@@ -20,9 +20,19 @@ if (!$ENV{BORING_RUNNER_DIR}) {
 plan tests => 1;
 
 indir $ENV{BORING_RUNNER_DIR} => sub {
-    ok(!system("go", "test", "-shim-path",
-               srctop_file("test", "ossl_shim", "ossl_shim"),
-               "-shim-config",
-               srctop_file("test", "ossl_shim", "ossl_config.json"), "-pipe"),
-       "running external tests");
+    ok(filter_run(executable(["go", "test", "-shim-path",
+                              srctop_file("test", "ossl_shim", "ossl_shim"),
+                              "-shim-config",
+                              srctop_file("test", "ossl_shim",
+                                          "ossl_config.json"),
+                              "-pipe"])),
 }, create => 0, cleanup => 0;
+
+sub filter_run {
+    my $cmd = cmdstr(shift);
+    open(PIPE, "-|", $cmd);
+    while(<PIPE>) {
+        print STDOUT "go test: ", $_;
+    }
+    close PIPE;
+}