[前][次][番号順一覧][スレッド一覧]

ruby-changes:23389

From: nobu <ko1@a...>
Date: Mon, 23 Apr 2012 22:49:00 +0900 (JST)
Subject: [ruby-changes:23389] nobu:r35440 (trunk): skip OpenSSL dependent tests if not available

nobu	2012-04-23 22:48:41 +0900 (Mon, 23 Apr 2012)

  New Revision: 35440

  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=35440

  Log:
    skip OpenSSL dependent tests if not available

  Modified files:
    trunk/test/net/imap/test_imap.rb
    trunk/test/open-uri/test_ssl.rb
    trunk/test/rubygems/test_gem_remote_fetcher.rb
    trunk/test/xmlrpc/test_client.rb

Index: test/xmlrpc/test_client.rb
===================================================================
--- test/xmlrpc/test_client.rb	(revision 35439)
+++ test/xmlrpc/test_client.rb	(revision 35440)
@@ -102,7 +102,7 @@
       refute user
       refute password
       refute timeout
-    end
+    end if defined?(OpenSSL)
 
     def test_new2_ssl_custom_port
       client = Fake::Client.new2 'https://example.org:1234/foo'
@@ -117,7 +117,7 @@
       refute user
       refute password
       refute timeout
-    end
+    end if defined?(OpenSSL)
 
     def test_new2_user_password
       client = Fake::Client.new2 'http://aaron:tenderlove@e.../foo'
Index: test/rubygems/test_gem_remote_fetcher.rb
===================================================================
--- test/rubygems/test_gem_remote_fetcher.rb	(revision 35439)
+++ test/rubygems/test_gem_remote_fetcher.rb	(revision 35440)
@@ -1,7 +1,10 @@
 require 'rubygems/test_case'
 require 'ostruct'
 require 'webrick'
-require 'webrick/https'
+begin
+  require 'webrick/https'
+rescue LoadError
+end
 require 'rubygems/remote_fetcher'
 require 'rubygems/format'
 
@@ -749,7 +752,7 @@
     with_configured_fetcher(":ssl_ca_cert: #{temp_ca_cert}") do |fetcher|
       fetcher.fetch_path("https://localhost:#{ssl_server.config[:Port]}/yaml")
     end
-  end
+  end if defined?(OpenSSL::PKey)
 
   def test_do_not_allow_insecure_ssl_connection_by_default
     ssl_server = self.class.start_ssl_server
@@ -758,14 +761,14 @@
         fetcher.fetch_path("https://localhost:#{ssl_server.config[:Port]}/yaml")
       end
     end
-  end
+  end if defined?(OpenSSL::PKey)
 
   def test_ssl_connection_allow_verify_none
     ssl_server = self.class.start_ssl_server
     with_configured_fetcher(":ssl_verify_mode: 0") do |fetcher|
       fetcher.fetch_path("https://localhost:#{ssl_server.config[:Port]}/yaml")
     end
-  end
+  end if defined?(OpenSSL::PKey)
 
   def test_do_not_follow_insecure_redirect
     ssl_server = self.class.start_ssl_server
@@ -775,7 +778,7 @@
         fetcher.fetch_path("https://localhost:#{ssl_server.config[:Port]}/insecure_redirect?to=#{@server_uri}")
       end
     end
-  end
+  end if defined?(OpenSSL::PKey)
 
   def with_configured_fetcher(config_str = nil, &block)
     if config_str
@@ -853,7 +856,7 @@
     end
 
     DIR = File.expand_path(File.dirname(__FILE__))
-    DH_PARAM = OpenSSL::PKey::DH.new(128)
+    DH_PARAM = defined?(OpenSSL::PKey) ? OpenSSL::PKey::DH.new(128) : nil
 
     def start_ssl_server(config = {})
       null_logger = NilLog.new
@@ -891,7 +894,7 @@
         end
       end
       server
-    end
+    end if DH_PARAM
 
 
 
Index: test/open-uri/test_ssl.rb
===================================================================
--- test/open-uri/test_ssl.rb	(revision 35439)
+++ test/open-uri/test_ssl.rb	(revision 35440)
@@ -1,13 +1,18 @@
 require 'test/unit'
 require 'open-uri'
-require 'openssl'
 require 'stringio'
 require 'webrick'
-require 'webrick/https'
+begin
+  require 'openssl'
+  require 'webrick/https'
+rescue LoadError
+end
 require 'webrick/httpproxy'
 
 class TestOpenURISSL < Test::Unit::TestCase
+end
 
+class TestOpenURISSL
   NullLog = Object.new
   def NullLog.<<(arg)
   end
@@ -100,7 +105,7 @@
     }
   end
 
-end
+end if defined?(OpenSSL)
 
 # mkdir demoCA demoCA/private demoCA/newcerts
 # touch demoCA/index.txt
Index: test/net/imap/test_imap.rb
===================================================================
--- test/net/imap/test_imap.rb	(revision 35439)
+++ test/net/imap/test_imap.rb	(revision 35440)
@@ -45,8 +45,8 @@
     assert_match(/\A24-Jul-2009 01:23 [+\-]\d{4}\z/, s)
   end
 
-  def test_imaps_unknown_ca
-    if defined?(OpenSSL)
+  if defined?(OpenSSL::SSL::SSLError)
+    def test_imaps_unknown_ca
       assert_raise(OpenSSL::SSL::SSLError) do
         imaps_test do |port|
           begin
@@ -59,10 +59,8 @@
         end
       end
     end
-  end
 
-  def test_imaps_with_ca_file
-    if defined?(OpenSSL)
+    def test_imaps_with_ca_file
       assert_nothing_raised do
         imaps_test do |port|
           begin
@@ -75,10 +73,8 @@
         end
       end
     end
-  end
 
-  def test_imaps_verify_none
-    if defined?(OpenSSL)
+    def test_imaps_verify_none
       assert_nothing_raised do
         imaps_test do |port|
           Net::IMAP.new(SERVER_ADDR,
@@ -87,10 +83,8 @@
         end
       end
     end
-  end
 
-  def test_imaps_post_connection_check
-    if defined?(OpenSSL)
+    def test_imaps_post_connection_check
       assert_raise(OpenSSL::SSL::SSLError) do
         imaps_test do |port|
           # SERVER_ADDR is different from the hostname in the certificate,
@@ -103,21 +97,21 @@
     end
   end
 
-  def test_starttls
-    imap = nil
-    if defined?(OpenSSL)
+  if defined?(OpenSSL::SSL)
+    def test_starttls
+      imap = nil
       starttls_test do |port|
         imap = Net::IMAP.new("localhost", :port => port)
         imap.starttls(:ca_file => CA_FILE)
         imap
       end
+    rescue SystemCallError
+      skip $!
+    ensure
+      if imap && !imap.disconnected?
+        imap.disconnect
+      end
     end
-  rescue SystemCallError
-    skip $!
-  ensure
-    if imap && !imap.disconnected?
-      imap.disconnect
-    end
   end
 
   def test_unexpected_eof

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]