aboutsummaryrefslogtreecommitdiffstats
path: root/test/test_ssl.rb
diff options
context:
space:
mode:
authorthekuwayama <thekuwayama@gmail.com>2019-10-31 08:43:47 +0900
committerSamuel Williams <samuel.williams@oriontransfer.co.nz>2019-10-31 14:19:30 +1300
commit56e874d3f1cd4a35e3e1730a3a40eb2326bedce5 (patch)
tree62c9b69d1f80cf2469b36acbac0bb657e78c8183 /test/test_ssl.rb
parentdd87110a12dba028ab96ecd885970ba04094f9a4 (diff)
downloadruby-openssl-56e874d3f1cd4a35e3e1730a3a40eb2326bedce5.tar.gz
update SSLSocket.open to match TCPSocket.open method signature
Diffstat (limited to 'test/test_ssl.rb')
-rw-r--r--test/test_ssl.rb35
1 files changed, 33 insertions, 2 deletions
diff --git a/test/test_ssl.rb b/test/test_ssl.rb
index cf1cb7e9..96844ee7 100644
--- a/test/test_ssl.rb
+++ b/test/test_ssl.rb
@@ -56,14 +56,45 @@ class OpenSSL::TestSSL < OpenSSL::SSLTestCase
}
end
- def test_ssl_socket_open
+ def test_socket_open
+ start_server { |port|
+ begin
+ ssl = OpenSSL::SSL::SSLSocket.open("127.0.0.1", port)
+ ssl.sync_close = true
+ ssl.connect
+
+ ssl.puts "abc"; assert_equal "abc\n", ssl.gets
+ ensure
+ ssl&.close
+ end
+ }
+ end
+
+ def test_socket_open_with_context
+ start_server { |port|
+ begin
+ ctx = OpenSSL::SSL::SSLContext.new
+ ssl = OpenSSL::SSL::SSLSocket.open("127.0.0.1", port, context: ctx)
+ ssl.sync_close = true
+ ssl.connect
+
+ assert_equal ssl.context, ctx
+ ssl.puts "abc"; assert_equal "abc\n", ssl.gets
+ ensure
+ ssl&.close
+ end
+ }
+ end
+
+ def test_socket_open_with_local_address_port_context
start_server { |port|
begin
ctx = OpenSSL::SSL::SSLContext.new
- ssl = OpenSSL::SSL::SSLSocket.open("127.0.0.1", port, ctx)
+ ssl = OpenSSL::SSL::SSLSocket.open("127.0.0.1", port, "127.0.0.1", 8000, context: ctx)
ssl.sync_close = true
ssl.connect
+ assert_equal ssl.context, ctx
ssl.puts "abc"; assert_equal "abc\n", ssl.gets
ensure
ssl&.close