From 8c6c5077b211ea73223c950edff98f0891853dc8 Mon Sep 17 00:00:00 2001 From: Matt Caswell Date: Mon, 10 Oct 2016 12:24:00 +0100 Subject: [PATCH] Add a test to call the BoringSSL test suite This adds a test to the OpenSSL test suite to invoke the BoringSSL test suite. It assumes you have already compiled the ossl_shim (see previous commit). It also assumes that you have an environment variable BORING_RUNNER_DIR set up to point to the ssl/test/runner directory of a checkout of BoringSSL. This has only been tested with a very old version of BoringSSL (from commit f277add6c) - since that was the last known checkout where the shim compiles successfully. Even with that version of BoringSSL this test will fail. There are lots of Boring tests that are failing for various reasons. Some might be due to bugs in OpenSSL, some might be due to features that BoringSSL has that OpenSSL doesn't, some are due to assumptions about the way BoringSSL behaves that are not true for OpenSSL etc. To get the verbose BoringSSL test output, run like this: VERBOSE=1 BORING_RUNNER_DIR=/path/to/boring/ssl/test/runner make \ TESTS="test_external" test Reviewed-by: Richard Levitte --- test/recipes/90-test_external.t | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 test/recipes/90-test_external.t diff --git a/test/recipes/90-test_external.t b/test/recipes/90-test_external.t new file mode 100644 index 0000000000..4ce3ab8ce7 --- /dev/null +++ b/test/recipes/90-test_external.t @@ -0,0 +1,26 @@ +#! /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 OpenSSL::Test; +use OpenSSL::Test::Utils; +use OpenSSL::Test qw/:DEFAULT srctop_file/; + +setup("test_external"); + +if (!$ENV{BORING_RUNNER_DIR}) { + plan skip_all => "No external tests have been detected"; +} + +plan tests => 1; + +indir $ENV{BORING_RUNNER_DIR} => sub { + ok(!system("go", "test", "-shim-path", + srctop_file("test", "ossl_shim", "ossl_shim"), "-pipe"), + "running external tests"); +}, create => 0, cleanup => 0; -- 2.34.1