diff options
author | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2011-10-22 11:35:58 +0000 |
---|---|---|
committer | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2011-10-22 11:35:58 +0000 |
commit | df8126f9e3728771fa7d0dc319a14d9d33d505c5 (patch) | |
tree | 7569dd804b51c86732597a7ea2b980bbceabd709 | |
parent | b574a4d4a1f1d77fa0224b02774456107cdbc932 (diff) | |
download | ruby-df8126f9e3728771fa7d0dc319a14d9d33d505c5.tar.gz |
* test/openssl/test_ssl.rb (test_multibyte_read_write): start server
for each length to avoid race condition.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33508 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | test/openssl/test_ssl.rb | 26 |
2 files changed, 17 insertions, 14 deletions
@@ -1,3 +1,8 @@ +Sat Oct 22 19:48:50 2011 Tanaka Akira <akr@fsij.org> + + * test/openssl/test_ssl.rb (test_multibyte_read_write): start server + for each length to avoid race condition. + Sat Oct 22 18:49:24 2011 Tanaka Akira <akr@fsij.org> * include/ruby/intern.h (rb_fd_set_cloexec): declared. diff --git a/test/openssl/test_ssl.rb b/test/openssl/test_ssl.rb index ccd94cffec..39d9b5e126 100644 --- a/test/openssl/test_ssl.rb +++ b/test/openssl/test_ssl.rb @@ -400,20 +400,18 @@ class OpenSSL::TestSSL < OpenSSL::SSLTestCase auml = [%w{ C3 A4 }.join('')].pack('H*') auml.force_encoding(Encoding::UTF_8) - str = nil - num_written = nil - - server_proc = Proc.new {|ctx, ssl| - cmp = ssl.read - raw_size = cmp.size - cmp.force_encoding(Encoding::UTF_8) - assert_equal(str, cmp) - assert_equal(num_written, raw_size) - ssl.close - } - - start_server(PORT, OpenSSL::SSL::VERIFY_NONE, true, :server_proc => server_proc){|server, port| - [10, 1000, 100000].each {|i| + [10, 1000, 100000].each {|i| + str = nil + num_written = nil + server_proc = Proc.new {|ctx, ssl| + cmp = ssl.read + raw_size = cmp.size + cmp.force_encoding(Encoding::UTF_8) + assert_equal(str, cmp) + assert_equal(num_written, raw_size) + ssl.close + } + start_server(PORT, OpenSSL::SSL::VERIFY_NONE, true, :server_proc => server_proc){|server, port| sock = TCPSocket.new("127.0.0.1", port) ssl = OpenSSL::SSL::SSLSocket.new(sock) ssl.sync_close = true |