From c35f659524131bfd04be93d1cd9e4508f687ec8c Mon Sep 17 00:00:00 2001 From: akr Date: Sat, 12 Sep 2009 11:56:12 +0000 Subject: test CA certs dir. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24864 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/open-uri/test_ssl.rb | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'test/open-uri') diff --git a/test/open-uri/test_ssl.rb b/test/open-uri/test_ssl.rb index 29c794a598..048227082d 100644 --- a/test/open-uri/test_ssl.rb +++ b/test/open-uri/test_ssl.rb @@ -65,6 +65,10 @@ class TestOpenURISSL < Test::Unit::TestCase with_https {|srv, dr, url| cacert_filename = "#{dr}/cacert.pem" open(cacert_filename, "w") {|f| f << CA_CERT } + cacert_directory = "#{dr}/certs" + Dir.mkdir cacert_directory + hashed_name = "%08x.0" % OpenSSL::X509::Certificate.new(CA_CERT).subject.hash + open("#{cacert_directory}/#{hashed_name}", "w") {|f| f << CA_CERT } prxy = WEBrick::HTTPProxyServer.new({ :ServerType => Thread, :Logger => WEBrick::Log.new(NullLog), @@ -80,6 +84,13 @@ class TestOpenURISSL < Test::Unit::TestCase assert_equal("proxy", f.read) } assert_match(%r[CONNECT #{url.sub(%r{\Ahttps://}, '')} ], sio.string) + sio.truncate(0); sio.rewind + open("#{url}/proxy", :proxy=>"http://#{p_host}:#{p_port}/", :ssl_ca_cert => cacert_directory) {|f| + assert_equal("200", f.status[0]) + assert_equal("proxy", f.read) + } + assert_match(%r[CONNECT #{url.sub(%r{\Ahttps://}, '')} ], sio.string) + sio.truncate(0); sio.rewind ensure prxy.shutdown end -- cgit v1.2.3