aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHans Nilsson <[email protected]>2018-10-24 10:16:25 +0200
committerHans Nilsson <[email protected]>2018-10-24 10:16:25 +0200
commit87015bf28b7e144fa0de78fa423a1c09e395b1f5 (patch)
treee14c108cc6216fcbaa81fde34caf641e3c779f7c
parent652f844eeb0b1b1fb2d845bf185529b56ba19822 (diff)
parent2b30ac551d3febf0233f26176f4706a009e840d2 (diff)
downloadotp-87015bf28b7e144fa0de78fa423a1c09e395b1f5.tar.gz
otp-87015bf28b7e144fa0de78fa423a1c09e395b1f5.tar.bz2
otp-87015bf28b7e144fa0de78fa423a1c09e395b1f5.zip
Merge branch 'maint'
* maint: crypto: Fix tests failing if more than one test engine available This could happen in an Valgrind run: crypto: Disable engine tests on Darwin and Windows Does not work.
-rw-r--r--lib/crypto/src/crypto.erl2
-rw-r--r--lib/crypto/test/engine_SUITE.erl15
2 files changed, 12 insertions, 5 deletions
diff --git a/lib/crypto/src/crypto.erl b/lib/crypto/src/crypto.erl
index 68c0bcef5e..9915a5a6f3 100644
--- a/lib/crypto/src/crypto.erl
+++ b/lib/crypto/src/crypto.erl
@@ -2153,7 +2153,7 @@ check_otp_test_engine(LibDir) ->
case filelib:wildcard("otp_test_engine*", LibDir) of
[] ->
{error, notexist};
- [LibName] ->
+ [LibName|_] -> % In case of Valgrind there could be more than one
LibPath = filename:join(LibDir,LibName),
case filelib:is_file(LibPath) of
true ->
diff --git a/lib/crypto/test/engine_SUITE.erl b/lib/crypto/test/engine_SUITE.erl
index 4b3ea10315..3f26493cd3 100644
--- a/lib/crypto/test/engine_SUITE.erl
+++ b/lib/crypto/test/engine_SUITE.erl
@@ -75,11 +75,18 @@ groups() ->
init_per_suite(Config) ->
- case crypto:info_lib() of
- [{_,_, <<"OpenSSL 1.0.1s-freebsd 1 Mar 2016">>}] ->
+ case {os:type(), crypto:info_lib()} of
+ {_, [{_,_, <<"OpenSSL 1.0.1s-freebsd 1 Mar 2016">>}]} ->
{skip, "Problem with engine on OpenSSL 1.0.1s-freebsd"};
- Res ->
- ct:log("crypto:info_lib() -> ~p\n", [Res]),
+
+ {{unix,darwin}, _} ->
+ {skip, "Engine unsupported on Darwin"};
+
+ {{win32,_}, _} ->
+ {skip, "Engine unsupported on Windows"};
+
+ {OS, Res} ->
+ ct:log("crypto:info_lib() -> ~p\nos:type() -> ~p", [Res,OS]),
try crypto:start() of
ok ->
Config;