Fix 80-test_ssl_old.t: only count the ciphers if there are any.
[openssl.git] / test / recipes / 20-test_enc.t
index 2efcf7002064edb62c6d1511cbb44a516cd6cc7c..32a30165f115087ae87b53e1abf72c8829e51849 100644 (file)
@@ -1,4 +1,11 @@
-#! /usr/bin/perl
+#! /usr/bin/env perl
+# Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved.
+#
+# Licensed under the OpenSSL license (the "License").  You may not use
+# this file except in compliance with the License.  You can obtain a copy
+# in the file LICENSE in the source distribution or at
+# https://www.openssl.org/source/license.html
+
 
 use strict;
 use warnings;
@@ -20,20 +27,21 @@ my $test = catfile(".", "p");
 
 my $cmd = "openssl";
 
+my $ciphersstatus = undef;
 my @ciphers =
     map { s/^\s+//; s/\s+$//; split /\s+/ }
-    run(app([$cmd, "list", "-cipher-commands"]), capture => 1);
-
-plan tests => 1 + (scalar @ciphers)*2;
+    run(app([$cmd, "list", "-cipher-commands"]),
+        capture => 1, statusvar => \$ciphersstatus);
 
-my $init = ok(copy($testsrc,$test));
-
-if (!$init) {
-    diag("Trying to copy $testsrc to $test : $!");
-}
+plan tests => 2 + (scalar @ciphers)*2;
 
  SKIP: {
-     skip "Not initialized, skipping...", 11 unless $init;
+     skip "Problems getting ciphers...", 1 + scalar(@ciphers)
+         unless ok($ciphersstatus, "Running 'openssl list -cipher-commands'");
+     unless (ok(copy($testsrc, $test), "Copying $testsrc to $test")) {
+         diag($!);
+         skip "Not initialized, skipping...", scalar(@ciphers);
+     }
 
      foreach my $c (@ciphers) {
         my %variant = ("$c" => [],