1require_relative 'utils' 2 3if defined?(OpenSSL) 4 5class OpenSSL::TestBN < Test::Unit::TestCase 6 def test_bn_to_bn 7 assert_equal(999.to_bn, OpenSSL::BN.new(999.to_bn)) 8 end 9 10 def test_integer_to_bn 11 assert_equal(999.to_bn, OpenSSL::BN.new(999.to_s(16), 16)) 12 assert_equal((2 ** 107 - 1).to_bn, OpenSSL::BN.new((2 ** 107 - 1).to_s(16), 16)) 13 end 14 15 def test_prime_p 16 assert_equal(true, OpenSSL::BN.new((2 ** 107 - 1).to_s(16), 16).prime?) 17 assert_equal(true, OpenSSL::BN.new((2 ** 127 - 1).to_s(16), 16).prime?(1)) 18 end 19 20 def test_cmp_nil 21 bn = OpenSSL::BN.new('1') 22 assert_equal(false, bn == nil) 23 assert_equal(true, bn != nil) 24 end 25end 26 27end 28