Skip to content

Commit c737f6e

Browse files
committed
[test] OpenSSL::X509::Certificate.new with byte[] arg
1 parent 6eb5e49 commit c737f6e

File tree

1 file changed

+9
-0
lines changed

1 file changed

+9
-0
lines changed

src/test/ruby/x509/test_x509cert.rb

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,15 @@ def test_new
1515
assert_raise(OpenSSL::X509::CertificateError) { cert.public_key }
1616
end
1717

18+
def test_new_from_java_bytes # was historically supported through the StringHelper.readInput fallback
19+
cert = File.read(File.expand_path('ca.crt', File.dirname(__FILE__)))
20+
fact = java.security.cert.CertificateFactory.getInstance("X.509")
21+
java_cert = fact.generateCertificate(java.io.ByteArrayInputStream.new(cert.to_java_bytes)) # X509Certificate
22+
cert = OpenSSL::X509::Certificate.new(java_cert.getEncoded) # byte[]
23+
assert_equal java_cert.getSerialNumber, cert.serial.to_java
24+
assert_equal java_cert.getPublicKey, cert.public_key.to_java
25+
end
26+
1827
def test_alt_name_extension
1928
cert = OpenSSL::X509::Certificate.new
2029
cert.add_extension OpenSSL::X509::Extension.new('subjectAltName', 'email:[email protected], IP:127.0.0.1', false)

0 commit comments

Comments
 (0)