diff options
author | Kazuki Yamaguchi <k@rhe.jp> | 2017-02-05 00:03:39 +0900 |
---|---|---|
committer | Kazuki Yamaguchi <k@rhe.jp> | 2017-08-24 21:01:09 +0900 |
commit | 81f3efcbc5837af5e918ace44d8034e6c5ac0fb7 (patch) | |
tree | 4c6014c40ba3824da2776b7448aaf4efb9bba4e7 /test/test_ssl.rb | |
parent | a0019110ddc97d3a46b99dc822b520f41afae687 (diff) | |
download | ruby-openssl-81f3efcbc5837af5e918ace44d8034e6c5ac0fb7.tar.gz |
test/utils: let server_loop close socket
Close the socket by server_loop rather than by server_proc. This reduces
code duplication.
Diffstat (limited to 'test/test_ssl.rb')
-rw-r--r-- | test/test_ssl.rb | 22 |
1 files changed, 8 insertions, 14 deletions
diff --git a/test/test_ssl.rb b/test/test_ssl.rb index 418365a4..3917793e 100644 --- a/test/test_ssl.rb +++ b/test/test_ssl.rb @@ -206,21 +206,16 @@ class OpenSSL::TestSSL < OpenSSL::SSLTestCase def test_starttls server_proc = -> (ctx, ssl) { - begin - while line = ssl.gets - if line =~ /^STARTTLS$/ - ssl.write("x") - ssl.flush - ssl.accept - next - end - ssl.write(line) + while line = ssl.gets + if line =~ /^STARTTLS$/ + ssl.write("x") + ssl.flush + ssl.accept + break end - rescue OpenSSL::SSL::SSLError - rescue IOError - ensure - ssl.close rescue nil + ssl.write(line) end + readwrite_loop(ctx, ssl) } EnvUtil.suppress_warning do # read/write on not started session @@ -763,7 +758,6 @@ class OpenSSL::TestSSL < OpenSSL::SSLTestCase cmp.force_encoding(Encoding::UTF_8) assert_equal(str, cmp) assert_equal(num_written, raw_size) - ssl.close } start_server(server_proc: server_proc) { |port| server_connect(port) { |ssl| |