Skip to content

Commit 873a5bd

Browse files
committed
Remove hardcoded key-dependent values from tests
Because these hardcoded values make the tests fail when recreating the keys. This is not convenient. * Remove hardcoded subjectKeyIdentifier value assertions. * In test_sign, replace assertion with hardcoded value with PRIVATE_KEY.verify (OpenSSL::PKey::RSA#verify) to assert signature Assisted-by: Claude:claude-opus-4-6[1m]
1 parent 99de094 commit 873a5bd

2 files changed

Lines changed: 2 additions & 18 deletions

File tree

test/rubygems/test_gem_security.rb

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -46,8 +46,6 @@ def test_class_create_cert
4646

4747
key_ident = cert.extensions.find {|ext| ext.oid == "subjectKeyIdentifier" }
4848
assert_equal 59, key_ident.value.length
49-
assert_equal "B1:1A:54:09:67:45:60:02:02:D7:CE:F4:1D:60:4A:89:DF:E7:58:D9",
50-
key_ident.value
5149

5250
assert_equal "", cert.issuer.to_s
5351
assert_equal name.to_s, cert.subject.to_s
@@ -94,8 +92,6 @@ def test_class_create_cert_email
9492

9593
key_ident = cert.extensions.find {|ext| ext.oid == "subjectKeyIdentifier" }
9694
assert_equal 59, key_ident.value.length
97-
assert_equal "B1:1A:54:09:67:45:60:02:02:D7:CE:F4:1D:60:4A:89:DF:E7:58:D9",
98-
key_ident.value
9995
end
10096

10197
def test_class_create_key
@@ -225,8 +221,6 @@ def test_class_sign
225221
key_ident =
226222
signed.extensions.find {|ext| ext.oid == "subjectKeyIdentifier" }
227223
assert_equal 59, key_ident.value.length
228-
assert_equal "B1:1A:54:09:67:45:60:02:02:D7:CE:F4:1D:60:4A:89:DF:E7:58:D9",
229-
key_ident.value
230224

231225
assert signed.verify key
232226
end
@@ -267,8 +261,6 @@ def test_class_sign_AltName
267261
key_ident =
268262
signed.extensions.find {|ext| ext.oid == "subjectKeyIdentifier" }
269263
assert_equal 59, key_ident.value.length
270-
assert_equal "B1:1A:54:09:67:45:60:02:02:D7:CE:F4:1D:60:4A:89:DF:E7:58:D9",
271-
key_ident.value
272264

273265
assert signed.verify PUBLIC_KEY
274266
end

test/rubygems/test_gem_security_signer.rb

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -120,16 +120,8 @@ def test_sign
120120

121121
signature = signer.sign "hello"
122122

123-
expected = <<-EXPECTED
124-
FmrCYxEXW3dgYYNMxPdS16VrdXT+d5nyXTVlRm64ZHSgMxMAaPtQJsVYv73m
125-
DWHTzNnLhhINSpgBMLh5a4atM52yxVdkPUTgqIH+LeIPBXn8xaP5JLmfDcmI
126-
tBpc/9DhS3v9iKCX40igAArFu7Gg3swbgQ61SP+U22LvG5nDQZQz3sudtsw3
127-
qKPykFVaYjrRwzvBdSdJ1PwlAsanSwcwS/GKPtmE/ykZ6X5XOx7wvCDL/zGy
128-
B8khkB8hDKC6moCzebmUxCBmTmXD0Wjzon+bf4MOriVE3a0ySGRvpr1mKR2+
129-
9EaVo7pDJLEM487+xg1CAZHRhwshd6II00XEzG/jBQ==
130-
EXPECTED
131-
132-
assert_equal expected, [signature].pack("m")
123+
digest = OpenSSL::Digest.new(Gem::Security::DIGEST_NAME)
124+
assert PRIVATE_KEY.verify(digest, signature, "hello")
133125
end
134126

135127
def test_sign_expired

0 commit comments

Comments
 (0)