diff --git a/test/openssl/test_cipher.rb b/test/openssl/test_cipher.rb index 30220d169c..81ded0ae52 100644 --- a/test/openssl/test_cipher.rb +++ b/test/openssl/test_cipher.rb @@ -104,7 +104,12 @@ class OpenSSL::TestCipher < Test::Unit::TestCase def test_ciphers OpenSSL::Cipher.ciphers.each{|name| next if /netbsd/ =~ RUBY_PLATFORM && /idea|rc5/i =~ name - assert(OpenSSL::Cipher::Cipher.new(name).is_a?(OpenSSL::Cipher::Cipher)) + begin + assert_kind_of(OpenSSL::Cipher::Cipher, OpenSSL::Cipher::Cipher.new(name)) + rescue OpenSSL::Cipher::CipherError => e + next if /wrap\z/ =~ name and e.message == 'wrap mode not allowed' + raise + end } end