diff options
author | Hans Nilsson <[email protected]> | 2015-07-05 11:18:45 +0200 |
---|---|---|
committer | Hans Nilsson <[email protected]> | 2015-07-05 11:18:45 +0200 |
commit | ddc7ce9124a8fb03bb95b5d550812c34f4177946 (patch) | |
tree | 91f489c0a8ba1ba6f30396809636020090fa8f06 | |
parent | 99003f395207a23935bfd2859f9c7121da5110eb (diff) | |
parent | 9931cad6d5f653a8be2bb324450c1d4b2c5637cf (diff) | |
download | otp-ddc7ce9124a8fb03bb95b5d550812c34f4177946.tar.gz otp-ddc7ce9124a8fb03bb95b5d550812c34f4177946.tar.bz2 otp-ddc7ce9124a8fb03bb95b5d550812c34f4177946.zip |
Merge branch 'hans/ssh/no_common_algs/OTP-11531' into maint
* hans/ssh/no_common_algs/OTP-11531:
ssh: be more generous about disconnect expects
ssh: add disjunction to ssh_trpt_test_lib:match
-rw-r--r-- | lib/ssh/test/ssh_protocol_SUITE.erl | 11 | ||||
-rw-r--r-- | lib/ssh/test/ssh_trpt_test_lib.erl | 7 |
2 files changed, 13 insertions, 5 deletions
diff --git a/lib/ssh/test/ssh_protocol_SUITE.erl b/lib/ssh/test/ssh_protocol_SUITE.erl index 58c8306c31..d82cdaf2c7 100644 --- a/lib/ssh/test/ssh_protocol_SUITE.erl +++ b/lib/ssh/test/ssh_protocol_SUITE.erl @@ -226,7 +226,8 @@ no_common_alg_server_disconnects(Config) -> {match, #ssh_msg_kexinit{_='_'}, receive_msg}, {send, ssh_msg_kexinit}, {match, - #ssh_msg_disconnect{code = ?SSH_DISCONNECT_KEY_EXCHANGE_FAILED, _='_'}, + {'or',[#ssh_msg_disconnect{code = ?SSH_DISCONNECT_KEY_EXCHANGE_FAILED, _='_'}, + tcp_closed]}, receive_msg} ] ). @@ -269,10 +270,10 @@ no_common_alg_client_disconnects(Config) -> first_kex_packet_follows = false, reserved = 0 }}, - - {match, - #ssh_msg_disconnect{code = ?SSH_DISCONNECT_KEY_EXCHANGE_FAILED, _='_'}, - receive_msg} + {match, + {'or',[#ssh_msg_disconnect{code = ?SSH_DISCONNECT_KEY_EXCHANGE_FAILED, _='_'}, + tcp_closed]}, + receive_msg} ], InitialState) } diff --git a/lib/ssh/test/ssh_trpt_test_lib.erl b/lib/ssh/test/ssh_trpt_test_lib.erl index a604fca1ac..75f495b6d7 100644 --- a/lib/ssh/test/ssh_trpt_test_lib.erl +++ b/lib/ssh/test/ssh_trpt_test_lib.erl @@ -218,6 +218,13 @@ match('$$', V, S) -> match('_', _, S) -> {true, S}; +match({'or',[P]}, V, S) -> match(P,V,S); +match({'or',[Ph|Pt]}, V, S) -> + case match(Ph,V,S) of + false -> match({'or',Pt}, V, S); + {true,S} -> {true,S} + end; + match(P, V, S) when is_atom(P) -> case atom_to_list(P) of "$"++_ -> |