File tree Expand file tree Collapse file tree 2 files changed +23
-0
lines changed
java/org/jruby/ext/openssl Expand file tree Collapse file tree 2 files changed +23
-0
lines changed Original file line number Diff line number Diff line change 10
10
import java .security .KeyStoreException ;
11
11
import java .security .NoSuchAlgorithmException ;
12
12
import java .security .Provider ;
13
+ import java .security .Security ;
13
14
import java .security .Signature ;
14
15
import java .security .cert .CertificateException ;
16
+ import java .security .cert .CertificateFactory ;
15
17
16
18
import org .junit .After ;
17
19
import org .junit .Before ;
@@ -435,4 +437,25 @@ public void testGetKeyGeneratorThrows() throws Exception {
435
437
}
436
438
}
437
439
440
+ @ Test
441
+ public void testCertificateFactoryProviderStaysConstant () throws Exception {
442
+ Provider [] registeredProviders = Security .getProviders ();
443
+
444
+ try {
445
+ // clear previous providers
446
+ for (Provider provider : registeredProviders ) Security .removeProvider (provider .getName ());
447
+
448
+ CertificateFactory certFactory1 = SecurityHelper .getCertificateFactory ("X.509" );
449
+ CertificateFactory certFactory2 = SecurityHelper .getCertificateFactory ("X.509" );
450
+
451
+ assertSame (certFactory1 .getProvider (), certFactory2 .getProvider ());
452
+ } finally {
453
+ // clear any added by the test
454
+ for (Provider provider : Security .getProviders ()) Security .removeProvider (provider .getName ());
455
+
456
+ // restore previous providers
457
+ for (Provider provider : registeredProviders ) Security .addProvider (provider );
458
+ }
459
+ }
460
+
438
461
}
You can’t perform that action at this time.
0 commit comments