summaryrefslogtreecommitdiffstats
path: root/test/recipes
diff options
context:
space:
mode:
authorRichard Levitte <levitte@openssl.org>2017-02-03 00:31:09 +0100
committerRichard Levitte <levitte@openssl.org>2017-03-20 06:40:16 +0100
commit691e302be3ededfcdef10c5f4c0d024ef1545b48 (patch)
tree40eea8bc23c69224179162730884a7dbbee537fe /test/recipes
parent6d0b5ee1d6163732b886bc0567dbce08aeade4c1 (diff)
Improve testing of elliptic curve validation
Add a test recipe (test/recipes/15-test_ecparams.t) which uses 'openssl ecparam' to check the test vectors. Reviewed-by: Rich Salz <rsalz@openssl.org> (Merged from https://github.com/openssl/openssl/pull/2544)
Diffstat (limited to 'test/recipes')
-rw-r--r--test/recipes/15-test_ecparam.t34
1 files changed, 34 insertions, 0 deletions
diff --git a/test/recipes/15-test_ecparam.t b/test/recipes/15-test_ecparam.t
new file mode 100644
index 0000000000..ec629e9977
--- /dev/null
+++ b/test/recipes/15-test_ecparam.t
@@ -0,0 +1,34 @@
+#! /usr/bin/env perl
+# Copyright 2017 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;
+
+use File::Spec;
+use if $^O ne "VMS", 'File::Glob' => qw/glob/;
+use OpenSSL::Test qw/:DEFAULT data_file/;
+use OpenSSL::Test::Utils;
+
+setup("test_ecparam");
+
+plan skip_all => "EC isn't supported in this build"
+ if disabled("ec");
+
+my @valid = glob(data_file("valid", "*.pem"));
+my @invalid = glob(data_file("invalid", "*.pem"));
+
+plan tests => scalar @valid + scalar @invalid;
+
+foreach (@valid) {
+ ok(run(app([qw{openssl ecparam -noout -check -in}, $_])));
+}
+
+foreach (@invalid) {
+ ok(!run(app([qw{openssl ecparam -noout -check -in}, $_])));
+}