summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJun Aruga <[email protected]>2024-02-08 18:53:32 +0100
committergit <[email protected]>2024-03-13 15:47:27 +0000
commiteb4082284aace391a16a389a70eeaf1e7db5c542 (patch)
treef52e4faf4d302cfd06d39765d4e1aef935341d0a
parent171791426b748ec5109f579d8aaa9b450a6fd02a (diff)
[ruby/openssl] test_provider.rb: Make a legacy provider test optional.
In some cases such as OpenSSL package in FreeBSD[1], the legacy provider is not installed intentionally. So, we omit a test depending the legacy provider if the legacy provider is not loadable. For the test_openssl_provider_names test, we use base provider[2] instead of legacy provider, because we would expect the base provider is always loadable in OpenSSL 3 for now. * [1] https://www.freshports.org/security/openssl/ * [2] https://wiki.openssl.org/index.php/OpenSSL_3.0#Providers https://github.com/ruby/openssl/commit/7223da7730
-rw-r--r--test/openssl/test_provider.rb15
1 files changed, 10 insertions, 5 deletions
diff --git a/test/openssl/test_provider.rb b/test/openssl/test_provider.rb
index d0e6678587..b0ffae9ce7 100644
--- a/test/openssl/test_provider.rb
+++ b/test/openssl/test_provider.rb
@@ -13,13 +13,13 @@ class OpenSSL::TestProvider < OpenSSL::TestCase
def test_openssl_provider_names
with_openssl <<-'end;'
- legacy_provider = OpenSSL::Provider.load("legacy")
+ base_provider = OpenSSL::Provider.load("base")
assert_equal(2, OpenSSL::Provider.provider_names.size)
- assert_includes(OpenSSL::Provider.provider_names, "legacy")
+ assert_includes(OpenSSL::Provider.provider_names, "base")
- assert_equal(true, legacy_provider.unload)
+ assert_equal(true, base_provider.unload)
assert_equal(1, OpenSSL::Provider.provider_names.size)
- assert_not_includes(OpenSSL::Provider.provider_names, "legacy")
+ assert_not_includes(OpenSSL::Provider.provider_names, "base")
end;
end
@@ -34,7 +34,12 @@ class OpenSSL::TestProvider < OpenSSL::TestCase
def test_openssl_legacy_provider
with_openssl(<<-'end;')
- OpenSSL::Provider.load("legacy")
+ begin
+ OpenSSL::Provider.load("legacy")
+ rescue OpenSSL::Provider::ProviderError
+ omit "Only for OpenSSL with legacy provider"
+ end
+
algo = "RC4"
data = "a" * 1000
key = OpenSSL::Random.random_bytes(16)