summaryrefslogtreecommitdiff
path: root/lib/ssl/test/ssl_app_env_SUITE.erl
diff options
context:
space:
mode:
authorIngela Anderton Andin <ingela@erlang.org>2020-05-11 07:39:16 +0200
committerIngela Anderton Andin <ingela@erlang.org>2020-05-28 08:35:22 +0200
commitb2ae7577fa9e274a65b0bd900ebaff27e8e86032 (patch)
tree433a69a35e45b2e3e26e7a72610dac4a6607cdfd /lib/ssl/test/ssl_app_env_SUITE.erl
parent3a0857030005631c0577973f9118abeea63cede8 (diff)
downloaderlang-b2ae7577fa9e274a65b0bd900ebaff27e8e86032.tar.gz
ssl: Refactor tests
Start refactoring tests with the goal that tests shall use the same framework code so that we do not have to duplicate handling of for instance IP-version. Avoid asserting openssl s_server and openssl s_client as it is too error prone to parse its output and it is Erlang we are testing not OpenSSL. Maybe we can find some better assertions later. Also fix init_per_group in many test suites so that it better uses the framework.
Diffstat (limited to 'lib/ssl/test/ssl_app_env_SUITE.erl')
-rw-r--r--lib/ssl/test/ssl_app_env_SUITE.erl29
1 files changed, 20 insertions, 9 deletions
diff --git a/lib/ssl/test/ssl_app_env_SUITE.erl b/lib/ssl/test/ssl_app_env_SUITE.erl
index d337dabb69..34a2192449 100644
--- a/lib/ssl/test/ssl_app_env_SUITE.erl
+++ b/lib/ssl/test/ssl_app_env_SUITE.erl
@@ -74,13 +74,15 @@ end_per_suite(_Config) ->
application:unload(ssl),
application:stop(crypto).
-init_per_group(GroupName, Config0) ->
- case ssl_test_lib:init_per_group(GroupName, Config0) of
- {skip, _} = Skip ->
- Skip;
- Config ->
- [{client_type, erlang},
- {server_type, erlang}| Config]
+init_per_group(GroupName, Config) ->
+ case ssl_test_lib:is_protocol_version(GroupName) of
+ true ->
+ ssl_test_lib:init_per_group(GroupName,
+ [{client_type, erlang},
+ {server_type, erlang},
+ {version, GroupName} | Config]);
+ false ->
+ Config
end.
end_per_group(GroupName, Config) ->
@@ -146,7 +148,16 @@ empty_protocol_versions() ->
[{doc,"Test to set an empty list of protocol versions in app environment."}].
empty_protocol_versions(Config) when is_list(Config) ->
+ Version = proplists:get_value(version, Config),
+ VersionsR = ssl:versions(),
+ Supported = proplists:get_value(supported, VersionsR) ++
+ proplists:get_value(supported_dtls, VersionsR),
ClientOpts = ssl_test_lib:ssl_options(client_rsa_opts, Config),
ServerOpts = ssl_test_lib:ssl_options(server_rsa_opts, Config),
- ssl_test_lib:basic_test(ClientOpts, ServerOpts, Config).
-
+ case lists:member(Version, Supported) of
+ true ->
+ ssl_test_lib:basic_test([{versions, [Version]} | ClientOpts], ServerOpts, Config);
+ false ->
+ ssl_test_lib:basic_alert([{versions, [Version]} | ClientOpts],
+ ServerOpts, Config, protocol_version)
+ end.