diff options
Diffstat (limited to 'test/soap/ssl')
-rw-r--r-- | test/soap/ssl/sslsvr.rb | 16 | ||||
-rw-r--r-- | test/soap/ssl/test_ssl.rb | 13 |
2 files changed, 18 insertions, 11 deletions
diff --git a/test/soap/ssl/sslsvr.rb b/test/soap/ssl/sslsvr.rb index 281c1a1a51..52a8d6878f 100644 --- a/test/soap/ssl/sslsvr.rb +++ b/test/soap/ssl/sslsvr.rb @@ -47,10 +47,18 @@ if $0 == __FILE__ :SSLClientCA => cert('ca.cert'), :SSLCertName => nil ) - trap(:INT) do - $server.shutdown if $server + t = Thread.new { + Thread.current.abort_on_exception = true + $server.start + } + while $server.status != :Running + sleep 0.1 + unless t.alive? + t.join + raise + end end STDOUT.sync = true - STDOUT.puts $$ - $server.start + puts $$ + t.join end diff --git a/test/soap/ssl/test_ssl.rb b/test/soap/ssl/test_ssl.rb index 6678c775ac..82bb890d71 100644 --- a/test/soap/ssl/test_ssl.rb +++ b/test/soap/ssl/test_ssl.rb @@ -33,12 +33,8 @@ class TestSSL < Test::Unit::TestCase teardown_server end - def streamhandler - @client.instance_eval("@servant").instance_eval("@streamhandler").client - end - def test_options - cfg = streamhandler.ssl_config + cfg = @client.streamhandler.client.ssl_config assert_nil(cfg.client_cert) assert_nil(cfg.client_key) assert_nil(cfg.client_ca) @@ -192,11 +188,14 @@ private end def teardown_server - Process.kill('INT', @serverpid) + if @serverpid + Process.kill('KILL', @serverpid) + Process.waitpid(@serverpid) + end end def teardown_client - @client.reset_stream + @client.reset_stream if @client end def verify_callback(ok, cert) |