[java-metadata-aggregator] branch main updated: MDA-65 - Catch up on unit tests

Ian Young ian at iay.org.uk
Thu Nov 5 17:14:14 UTC 2020


This is an automated email from the git hooks/post-receive script.

iay pushed a commit to branch main
in repository java-metadata-aggregator.

View the commit online:
http://git.shibboleth.net/view/?p=java-metadata-aggregator.git;a=commit;h=e7149acaaf3cad922546b77db3c91aab09461bd4

The following commit(s) were added to refs/heads/main by this push:
       new  e7149ac   MDA-65 - Catch up on unit tests
e7149ac is described below

commit e7149acaaf3cad922546b77db3c91aab09461bd4
Author: Ian Young <ian at iay.org.uk>
AuthorDate: Thu Nov 5 17:14:10 2020 +0000

    MDA-65 - Catch up on unit tests
    
    https://issues.shibboleth.net/jira/browse/MDA-65
---
 .../main/java/net/shibboleth/metadata/Version.java | 29 ++++++++++-----
 .../java/net/shibboleth/metadata/VersionTest.java  | 42 ++++++++++++++++++++++
 ...Test.java => DOMFilesystemSourceStageTest.java} | 10 ++++--
 .../metadata/dom/DOMResourceSourceStageTest.java   |  1 +
 .../dom/ElementWhitespaceTrimmingStageTest.java    |  2 ++
 .../metadata/dom/ElementsStrippingStageTest.java   |  5 +++
 .../dom/EmptyContainerStrippingStageTest.java      |  1 +
 .../dom/MultiOutputXSLTransformationStageTest.java |  6 ++++
 .../metadata/dom/XMLSchemaValidationStageTest.java |  4 ++-
 .../metadata/dom/XMLSignatureSigningStageTest.java |  6 ++++
 .../dom/XMLSignatureValidationStageTest.java       |  8 +++++
 .../metadata/dom/XPathFilteringStageTest.java      |  2 ++
 .../metadata/dom/XSLTtransformationStageTest.java  |  6 ++++
 .../metadata/dom/XSLValidationStageTest.java       |  2 ++
 .../metadata/dom/ds/X509ValidationStageTest.java   |  3 ++
 .../saml/EntitiesDescriptorAssemblerStageTest.java |  4 +++
 .../metadata/dom/saml/EntityFilterStageTest.java   |  7 ++++
 .../dom/saml/EntityRoleFilterStageTest.java        |  8 ++++-
 ...EntityRegistrationAuthorityFilterStageTest.java |  5 +++
 .../FilesInDirectoryMultiOutputStrategyTest.java   |  2 ++
 .../metadata/pipeline/ItemOrderingStageTest.java   |  4 +++
 .../MultiOutputSerializationStageTest.java         |  1 +
 .../pipeline/PipelineDemultiplexerStageTest.java   |  1 +
 .../metadata/pipeline/PipelineMergeStageTest.java  |  3 +-
 .../metadata/pipeline/SimplePipelineTest.java      |  2 ++
 .../metadata/pipeline/SplitMergeStageTest.java     |  3 ++
 .../x509/X509RSAOpenSSLBlacklistValidatorTest.java | 30 ++++++++++++++++
 27 files changed, 182 insertions(+), 15 deletions(-)

diff --git a/aggregator-pipeline/src/main/java/net/shibboleth/metadata/Version.java b/aggregator-pipeline/src/main/java/net/shibboleth/metadata/Version.java
index dc4b45a..a3c0639 100644
--- a/aggregator-pipeline/src/main/java/net/shibboleth/metadata/Version.java
+++ b/aggregator-pipeline/src/main/java/net/shibboleth/metadata/Version.java
@@ -89,14 +89,25 @@ public final class Version {
     }
 
     static {
-        VERSION = Version.class.getPackage().getImplementationVersion();
-
-        // Semantic versioning: three dot-separated numbers, followed by extensions
-        // separated by '-' and '+'.
-        final String[] versionParts = VERSION.split("[\\.\\+\\-]");
-
-        MAJOR_VERSION = Integer.parseInt(versionParts[0]);
-        MINOR_VERSION = Integer.parseInt(versionParts[1]);
-        PATCH_VERSION = Integer.parseInt(versionParts[2]);
+        final String version = Version.class.getPackage().getImplementationVersion();
+
+        if (version != null) {
+            // If we're running from a package with metadata (i.e., from a .jar)
+            VERSION = version;
+    
+            // Semantic versioning: three dot-separated numbers, followed by extensions
+            // separated by '-' and '+'.
+            final String[] versionParts = VERSION.split("[\\.\\+\\-]");
+    
+            MAJOR_VERSION = Integer.parseInt(versionParts[0]);
+            MINOR_VERSION = Integer.parseInt(versionParts[1]);
+            PATCH_VERSION = Integer.parseInt(versionParts[2]);
+        } else {
+            // We don't have the package metadata available; probably a test environment
+            VERSION = "unknown";
+            MAJOR_VERSION = 0;
+            MINOR_VERSION = 0;
+            PATCH_VERSION = 0;
+        }
     }
 }
diff --git a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/VersionTest.java b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/VersionTest.java
new file mode 100644
index 0000000..8ea69f8
--- /dev/null
+++ b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/VersionTest.java
@@ -0,0 +1,42 @@
+
+package net.shibboleth.metadata;
+
+import org.testng.Assert;
+import org.testng.annotations.Test;
+
+/**
+ * Tests for the {@link Version} class.
+ *
+ * <p>
+ * It's hard to do this justice because the package metadata the class
+ * depends on isn't present in the test environment. We can at least
+ * make sure that there are no exceptions thrown.
+ * </p>
+ */
+public class VersionTest {
+
+    @Test
+    public void getMajorVersionTest() {
+        Assert.assertEquals(Version.getMajorVersion(), 0);
+    }
+
+    @Test
+    public void getMinorVersionTest() {
+        Assert.assertEquals(Version.getMinorVersion(), 0);
+    }
+
+    @Test
+    public void getPatchVersionTest() {
+        Assert.assertEquals(Version.getPatchVersion(), 0);
+    }
+
+    @Test
+    public void getVersionTest() {
+        Assert.assertEquals(Version.getVersion(), "unknown");
+    }
+
+    @Test
+    public void mainTest() {
+        Version.main(new String[] {});
+    }
+}
diff --git a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/DOMFilesystemSourceTest.java b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/DOMFilesystemSourceStageTest.java
similarity index 96%
rename from aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/DOMFilesystemSourceTest.java
rename to aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/DOMFilesystemSourceStageTest.java
index 4eb2683..d6bef9a 100644
--- a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/DOMFilesystemSourceTest.java
+++ b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/DOMFilesystemSourceStageTest.java
@@ -34,10 +34,10 @@ import org.testng.annotations.Test;
 import org.w3c.dom.Element;
 
 /** Unit test for {@link DOMFilesystemSourceStage}. */
-public class DOMFilesystemSourceTest extends BaseTest {
+public class DOMFilesystemSourceStageTest extends BaseTest {
 
     /** Constructor sets class under test. */
-    public DOMFilesystemSourceTest() {
+    public DOMFilesystemSourceStageTest() {
         super(DOMFilesystemSourceStage.class);
     }
 
@@ -58,6 +58,7 @@ public class DOMFilesystemSourceTest extends BaseTest {
         source.execute(metadataCollection);
         Assert.assertNotNull(metadataCollection);
         Assert.assertEquals(metadataCollection.size(), 1);
+        source.destroy();
     }
 
     @Test public void testSuccessfulDirectoryFetchAndParse() throws Exception {
@@ -77,6 +78,7 @@ public class DOMFilesystemSourceTest extends BaseTest {
         source.execute(metadataCollection);
         Assert.assertNotNull(metadataCollection);
         Assert.assertEquals(metadataCollection.size(), 6);
+        source.destroy();
     }
 
     @Test
@@ -104,6 +106,7 @@ public class DOMFilesystemSourceTest extends BaseTest {
         source.execute(metadataCollection);
         Assert.assertNotNull(metadataCollection);
         Assert.assertEquals(metadataCollection.size(), 2);
+        source.destroy();
     }
 
     @Test public void testSuccessfulFetchAndFailedParse() throws Exception {
@@ -126,6 +129,7 @@ public class DOMFilesystemSourceTest extends BaseTest {
         } catch (StageProcessingException e) {
             // expected this
         }
+        source.destroy();
     }
 
     @Test public void testFailedFetch() throws Exception {
@@ -147,4 +151,4 @@ public class DOMFilesystemSourceTest extends BaseTest {
             // expected this
         }
     }
-}
\ No newline at end of file
+}
diff --git a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/DOMResourceSourceStageTest.java b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/DOMResourceSourceStageTest.java
index c4fdef7..cc886b4 100644
--- a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/DOMResourceSourceStageTest.java
+++ b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/DOMResourceSourceStageTest.java
@@ -60,6 +60,7 @@ public class DOMResourceSourceStageTest extends BaseTest {
 
         final ArrayList<Item<Element>> metadataCollection = new ArrayList<>();
         source.execute(metadataCollection);
+        source.destroy();
         Assert.assertNotNull(metadataCollection);
         Assert.assertEquals(metadataCollection.size(), 1);
     }
diff --git a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/ElementWhitespaceTrimmingStageTest.java b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/ElementWhitespaceTrimmingStageTest.java
index 2e9771f..87e6952 100644
--- a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/ElementWhitespaceTrimmingStageTest.java
+++ b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/ElementWhitespaceTrimmingStageTest.java
@@ -68,6 +68,7 @@ public class ElementWhitespaceTrimmingStageTest extends BaseDOMTest {
         stage.initialize();
         
         stage.execute(items);
+        stage.destroy();
         
         assertXMLIdentical(expected, item.unwrap());
     }
@@ -85,6 +86,7 @@ public class ElementWhitespaceTrimmingStageTest extends BaseDOMTest {
         stage.initialize();
         
         stage.execute(items);
+        stage.destroy();
         
         assertXMLIdentical(expected, item.unwrap());
     }
diff --git a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/ElementsStrippingStageTest.java b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/ElementsStrippingStageTest.java
index 5d6b665..3668c2b 100644
--- a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/ElementsStrippingStageTest.java
+++ b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/ElementsStrippingStageTest.java
@@ -29,6 +29,7 @@ public class ElementsStrippingStageTest extends BaseDOMTest {
         stage.initialize();
 
         stage.execute(items);
+        stage.destroy();
 
         // nothing should have changed; compare with original
         final Element out = readXMLData("in-sb.xml");
@@ -52,6 +53,7 @@ public class ElementsStrippingStageTest extends BaseDOMTest {
         stage.initialize();
 
         stage.execute(items);
+        stage.destroy();
 
         final Element out = readXMLData("out-sb.xml");
         assertXMLIdentical(out, item.unwrap());
@@ -74,6 +76,7 @@ public class ElementsStrippingStageTest extends BaseDOMTest {
         stage.initialize();
 
         stage.execute(items);
+        stage.destroy();
 
         final Element out = readXMLData("out-sw.xml");
         assertXMLIdentical(out, item.unwrap());
@@ -96,6 +99,7 @@ public class ElementsStrippingStageTest extends BaseDOMTest {
         stage.initialize();
 
         stage.execute(items);
+        stage.destroy();
 
         final Element out = readXMLData("out-multi-b.xml");
         assertXMLIdentical(out, item.unwrap());
@@ -119,6 +123,7 @@ public class ElementsStrippingStageTest extends BaseDOMTest {
         stage.initialize();
 
         stage.execute(items);
+        stage.destroy();
 
         final Element out = readXMLData("out-multi-w.xml");
         assertXMLIdentical(out, item.unwrap());
diff --git a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/EmptyContainerStrippingStageTest.java b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/EmptyContainerStrippingStageTest.java
index af01924..ae154e0 100644
--- a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/EmptyContainerStrippingStageTest.java
+++ b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/EmptyContainerStrippingStageTest.java
@@ -57,6 +57,7 @@ public class EmptyContainerStrippingStageTest extends BaseDOMTest {
         stage.setElementNamespace("urn:oasis:names:tc:SAML:2.0:metadata");
         stage.initialize();
         stage.execute(items);
+        stage.destroy();
         
         final Element out = readXMLData("out.xml");
         assertXMLIdentical(out, item.unwrap());
diff --git a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/MultiOutputXSLTransformationStageTest.java b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/MultiOutputXSLTransformationStageTest.java
index f41a698..237cd07 100644
--- a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/MultiOutputXSLTransformationStageTest.java
+++ b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/MultiOutputXSLTransformationStageTest.java
@@ -82,6 +82,7 @@ public class MultiOutputXSLTransformationStageTest extends BaseDOMTest {
         stage.initialize();
 
         stage.execute(mdCol);
+        stage.destroy();
         Assert.assertEquals(mdCol.size(), 1);
 
         final Item<Element> result = mdCol.iterator().next();
@@ -110,6 +111,7 @@ public class MultiOutputXSLTransformationStageTest extends BaseDOMTest {
         stage.initialize();
 
         stage.execute(mdCol);
+        stage.destroy();
         Assert.assertEquals(mdCol.size(), 0);
     }
 
@@ -132,6 +134,7 @@ public class MultiOutputXSLTransformationStageTest extends BaseDOMTest {
         stage.initialize();
 
         stage.execute(mdCol);
+        stage.destroy();
         Assert.assertEquals(mdCol.size(), 2);
 
         final Set<String> names = new HashSet<>();
@@ -167,6 +170,7 @@ public class MultiOutputXSLTransformationStageTest extends BaseDOMTest {
         stage.initialize();
 
         stage.execute(mdCol);
+        stage.destroy();
         Assert.assertEquals(mdCol.size(), 1);
 
         final Item<Element> result = mdCol.iterator().next();
@@ -195,6 +199,7 @@ public class MultiOutputXSLTransformationStageTest extends BaseDOMTest {
         stage.initialize();
 
         stage.execute(mdCol);
+        stage.destroy();
         Assert.assertEquals(mdCol.size(), 2);
 
         final Set<String> names = new HashSet<>();
@@ -246,6 +251,7 @@ public class MultiOutputXSLTransformationStageTest extends BaseDOMTest {
         stage.initialize();
 
         stage.execute(mdCol);
+        stage.destroy();
         Assert.assertEquals(mdCol.size(), 1);
 
         final Item<Element> result = mdCol.iterator().next();
diff --git a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/XMLSchemaValidationStageTest.java b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/XMLSchemaValidationStageTest.java
index 684cb9c..b84d649 100644
--- a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/XMLSchemaValidationStageTest.java
+++ b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/XMLSchemaValidationStageTest.java
@@ -41,6 +41,7 @@ public class XMLSchemaValidationStageTest extends BaseDOMTest {
 
         List<Item<Element>> mdCol = buildMetdataCollection("valid.xml");
         stage.execute(mdCol);
+        stage.destroy();
         Assert.assertEquals(mdCol.size(), 1);
         Assert.assertFalse(mdCol.iterator().next().getItemMetadata().containsKey(ErrorStatus.class));
     }
@@ -50,6 +51,7 @@ public class XMLSchemaValidationStageTest extends BaseDOMTest {
         XMLSchemaValidationStage stage = buildStage();
         List<Item<Element>> mdCol = buildMetdataCollection("invalid.xml");
         stage.execute(mdCol);
+        stage.destroy();
         Assert.assertEquals(mdCol.size(), 1);
         Assert.assertTrue(mdCol.iterator().next().getItemMetadata().containsKey(ErrorStatus.class));
     }
@@ -72,4 +74,4 @@ public class XMLSchemaValidationStageTest extends BaseDOMTest {
         mdCol.add(new DOMElementItem(element));
         return mdCol;
     }
-}
\ No newline at end of file
+}
diff --git a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/XMLSignatureSigningStageTest.java b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/XMLSignatureSigningStageTest.java
index 74573af..8ad9ae9 100644
--- a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/XMLSignatureSigningStageTest.java
+++ b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/XMLSignatureSigningStageTest.java
@@ -110,6 +110,7 @@ public class XMLSignatureSigningStageTest extends BaseDOMTest {
         stage.initialize();
 
         stage.execute(mdCol);
+        stage.destroy();
         Assert.assertEquals(mdCol.size(), 1);
 
         final Item<Element> result = mdCol.iterator().next();
@@ -148,6 +149,7 @@ public class XMLSignatureSigningStageTest extends BaseDOMTest {
         stage.initialize();
 
         stage.execute(mdCol);
+        stage.destroy();
         Assert.assertEquals(mdCol.size(), 1);
 
         final Item<Element> result = mdCol.iterator().next();
@@ -207,6 +209,7 @@ public class XMLSignatureSigningStageTest extends BaseDOMTest {
         stage1.initialize();
 
         stage1.execute(mdCol1);
+        stage1.destroy();
         Assert.assertEquals(mdCol1.size(), 1);
 
         final Item<Element> result1 = mdCol1.iterator().next();
@@ -228,6 +231,7 @@ public class XMLSignatureSigningStageTest extends BaseDOMTest {
         stage2.initialize();
 
         stage2.execute(mdCol2);
+        stage2.destroy();
         Assert.assertEquals(mdCol2.size(), 1);
 
         final Item<Element> result2 = mdCol2.iterator().next();
@@ -275,6 +279,7 @@ public class XMLSignatureSigningStageTest extends BaseDOMTest {
         stage.initialize();
 
         stage.execute(md);
+        stage.destroy();
         Assert.assertEquals(md.size(), 1);
         
         final var entitiesDescriptor = md.get(0).unwrap(); // document element
@@ -300,6 +305,7 @@ public class XMLSignatureSigningStageTest extends BaseDOMTest {
         stage.initialize();
 
         stage.execute(md);
+        stage.destroy();
         Assert.assertEquals(md.size(), 1);
         
         final var entitiesDescriptor = md.get(0).unwrap(); // document element
diff --git a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/XMLSignatureValidationStageTest.java b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/XMLSignatureValidationStageTest.java
index 1662f4c..9eaba0d 100644
--- a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/XMLSignatureValidationStageTest.java
+++ b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/XMLSignatureValidationStageTest.java
@@ -69,6 +69,7 @@ public class XMLSignatureValidationStageTest extends BaseDOMTest {
         stage.initialize();
 
         stage.execute(mdCol);
+        stage.destroy();
         Assert.assertEquals(mdCol.size(), 1);
 
         final Item<Element> result = mdCol.iterator().next();
@@ -100,6 +101,7 @@ public class XMLSignatureValidationStageTest extends BaseDOMTest {
         stage.initialize();
 
         stage.execute(mdCol);
+        stage.destroy();
         Assert.assertTrue(item.getItemMetadata().containsKey(ErrorStatus.class));
     }
 
@@ -123,6 +125,7 @@ public class XMLSignatureValidationStageTest extends BaseDOMTest {
         stage.initialize();
 
         stage.execute(mdCol);
+        stage.destroy();
         Assert.assertEquals(mdCol.size(), 1);
 
         final Item<Element> result = mdCol.iterator().next();
@@ -139,6 +142,7 @@ public class XMLSignatureValidationStageTest extends BaseDOMTest {
         stage.setVerificationCertificate(signingCert);
         stage.initialize();
         stage.execute(mdCol);
+        stage.destroy();
         
         Assert.assertTrue(item2.getItemMetadata().containsKey(ErrorStatus.class));
     }
@@ -165,6 +169,7 @@ public class XMLSignatureValidationStageTest extends BaseDOMTest {
         stage.initialize();
 
         stage.execute(mdCol);
+        stage.destroy();
         Assert.assertEquals(mdCol.size(), 1);
 
         final Item<Element> result = mdCol.iterator().next();
@@ -198,6 +203,7 @@ public class XMLSignatureValidationStageTest extends BaseDOMTest {
         stage.initialize();
 
         stage.execute(mdCol);
+        stage.destroy();
         Assert.assertEquals(mdCol.size(), 1);
 
         final Item<Element> result = mdCol.iterator().next();
@@ -227,6 +233,7 @@ public class XMLSignatureValidationStageTest extends BaseDOMTest {
         stage.initialize();
 
         stage.execute(mdCol);
+        stage.destroy();
         Assert.assertEquals(mdCol.size(), 1);
 
         final Item<Element> result = mdCol.iterator().next();
@@ -260,6 +267,7 @@ public class XMLSignatureValidationStageTest extends BaseDOMTest {
         stage.initialize();
 
         stage.execute(mdCol);
+        stage.destroy();
         Assert.assertEquals(mdCol.size(), 1);
 
         final Item<Element> result = mdCol.iterator().next();
diff --git a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/XPathFilteringStageTest.java b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/XPathFilteringStageTest.java
index d5dc23f..7560bd0 100644
--- a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/XPathFilteringStageTest.java
+++ b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/XPathFilteringStageTest.java
@@ -64,6 +64,8 @@ public class XPathFilteringStageTest extends BaseDOMTest {
 
         // Filter the metadata collection
         strategy.doExecute(metadataCollection);
+        strategy.destroy();
+
         Assert.assertEquals(metadataCollection.size(), 1);
         Element element = metadataCollection.get(0).unwrap();
         String id = element.getAttribute("id");
diff --git a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/XSLTtransformationStageTest.java b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/XSLTtransformationStageTest.java
index b947b64..213a26c 100644
--- a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/XSLTtransformationStageTest.java
+++ b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/XSLTtransformationStageTest.java
@@ -89,6 +89,7 @@ public class XSLTtransformationStageTest extends BaseDOMTest {
         stage.initialize();
 
         stage.execute(mdCol);
+        stage.destroy();
         Assert.assertEquals(mdCol.size(), 1);
 
         final Item<Element> result = mdCol.iterator().next();
@@ -121,6 +122,7 @@ public class XSLTtransformationStageTest extends BaseDOMTest {
         stage.initialize();
 
         stage.execute(mdCol);
+        stage.destroy();
         Assert.assertEquals(mdCol.size(), 1);
 
         final Item<Element> result = mdCol.iterator().next();
@@ -149,6 +151,7 @@ public class XSLTtransformationStageTest extends BaseDOMTest {
         stage.initialize();
 
         stage.execute(mdCol);
+        stage.destroy();
         Assert.assertEquals(mdCol.size(), 1);
 
         final Set<String> names = new HashSet<>();
@@ -200,6 +203,7 @@ public class XSLTtransformationStageTest extends BaseDOMTest {
         stage.initialize();
 
         stage.execute(mdCol);
+        stage.destroy();
         Assert.assertEquals(mdCol.size(), 1);
 
         final Item<Element> result = mdCol.iterator().next();
@@ -228,6 +232,7 @@ public class XSLTtransformationStageTest extends BaseDOMTest {
         stage.initialize();
 
         stage.execute(mdCol);
+        stage.destroy();
         Assert.assertEquals(mdCol.size(), 1);
 
         final Item<Element> result = mdCol.iterator().next();
@@ -289,6 +294,7 @@ public class XSLTtransformationStageTest extends BaseDOMTest {
         stage.initialize();
 
         stage.execute(mdCol);
+        stage.destroy();
         Assert.assertEquals(mdCol.size(), 1);
 
         final Item<Element> result = mdCol.iterator().next();
diff --git a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/XSLValidationStageTest.java b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/XSLValidationStageTest.java
index fe270c0..b964d0b 100644
--- a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/XSLValidationStageTest.java
+++ b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/XSLValidationStageTest.java
@@ -77,6 +77,7 @@ public class XSLValidationStageTest extends BaseDOMTest {
         stage.initialize();
 
         stage.execute(mdCol);
+        stage.destroy();
 
         // The input element should still be the only thing in the collection
         Assert.assertEquals(mdCol.size(), 1);
@@ -127,6 +128,7 @@ public class XSLValidationStageTest extends BaseDOMTest {
         stage.initialize();
 
         stage.execute(mdCol);
+        stage.destroy();
 
         // The input element should still be the only thing in the collection
         Assert.assertEquals(mdCol.size(), 1);
diff --git a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/ds/X509ValidationStageTest.java b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/ds/X509ValidationStageTest.java
index c279831..88948cf 100644
--- a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/ds/X509ValidationStageTest.java
+++ b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/ds/X509ValidationStageTest.java
@@ -80,6 +80,7 @@ public class X509ValidationStageTest extends BaseDOMTest {
         stage.initialize();
         
         stage.execute(items);
+        stage.destroy();
 
         errorsAndWarnings(item, 0, 0);
     }
@@ -105,6 +106,7 @@ public class X509ValidationStageTest extends BaseDOMTest {
         stage.initialize();
         
         stage.execute(items);
+        stage.destroy();
 
         errorsAndWarnings(item, 1, 0);
     }
@@ -131,6 +133,7 @@ public class X509ValidationStageTest extends BaseDOMTest {
         stage.initialize();
         
         stage.execute(items);
+        stage.destroy();
         
         errorsAndWarnings(item, 0, 1);
     }
diff --git a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/saml/EntitiesDescriptorAssemblerStageTest.java b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/saml/EntitiesDescriptorAssemblerStageTest.java
index 5917590..9aa75af 100644
--- a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/saml/EntitiesDescriptorAssemblerStageTest.java
+++ b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/saml/EntitiesDescriptorAssemblerStageTest.java
@@ -50,6 +50,7 @@ public class EntitiesDescriptorAssemblerStageTest extends BaseDOMTest {
         stage.setId("foo");
         stage.initialize();
         stage.execute(metadataCollection);
+        stage.destroy();
 
         Element result = metadataCollection.iterator().next().unwrap();
         
@@ -69,6 +70,7 @@ public class EntitiesDescriptorAssemblerStageTest extends BaseDOMTest {
         stage.setDescriptorName("nameValue");
         stage.initialize();
         stage.execute(metadataCollection);
+        stage.destroy();
 
         Element result = metadataCollection.iterator().next().unwrap();
 
@@ -101,6 +103,7 @@ public class EntitiesDescriptorAssemblerStageTest extends BaseDOMTest {
         stage.setItemOrderingStrategy(new ReverseOrder());
         stage.initialize();
         stage.execute(metadataCollection);
+        stage.destroy();
 
         Element result = metadataCollection.iterator().next().unwrap();
 
@@ -120,6 +123,7 @@ public class EntitiesDescriptorAssemblerStageTest extends BaseDOMTest {
         stage.setId("foo");
         stage.initialize();
         stage.execute(metadataCollection);
+        stage.destroy();
 
         Element result = metadataCollection.iterator().next().unwrap();
         
diff --git a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/saml/EntityFilterStageTest.java b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/saml/EntityFilterStageTest.java
index 06b5beb..45fa589 100644
--- a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/saml/EntityFilterStageTest.java
+++ b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/saml/EntityFilterStageTest.java
@@ -53,6 +53,7 @@ public class EntityFilterStageTest extends BaseDOMTest {
 
         final var metadataCollection = buildMetadataCollection();
         stage.execute(metadataCollection);
+        stage.destroy();
 
         Assert.assertEquals(metadataCollection.size(), 1);
     }
@@ -71,6 +72,7 @@ public class EntityFilterStageTest extends BaseDOMTest {
 
         final var metadataCollection = buildMetadataCollection();
         stage.execute(metadataCollection);
+        stage.destroy();
 
         Assert.assertEquals(metadataCollection.size(), 2);
     }
@@ -90,6 +92,7 @@ public class EntityFilterStageTest extends BaseDOMTest {
         stage.setWhitelistingEntities(false);
         stage.initialize();
         stage.execute(metadataCollection);
+        stage.destroy();
 
         Element entitiesDescriptor = metadataCollection.iterator().next().unwrap();
         Assert.assertEquals(ElementSupport.getChildElements(entitiesDescriptor).size(), 2);
@@ -111,6 +114,7 @@ public class EntityFilterStageTest extends BaseDOMTest {
         stage.setWhitelistingEntities(false);
         stage.initialize();
         stage.execute(metadataCollection);
+        stage.destroy();
 
         Assert.assertEquals(metadataCollection.size(), 0);
     }
@@ -133,6 +137,7 @@ public class EntityFilterStageTest extends BaseDOMTest {
         stage.setWhitelistingEntities(false);
         stage.initialize();
         stage.execute(metadataCollection);
+        stage.destroy();
 
         Assert.assertEquals(metadataCollection.size(), 1);
     }
@@ -151,6 +156,7 @@ public class EntityFilterStageTest extends BaseDOMTest {
         stage.setDesignatedEntities(Collections.emptySet());
         stage.initialize();
         stage.execute(metadataCollection);
+        stage.destroy();
 
         Assert.assertEquals(metadataCollection.size(), 0);
     }
@@ -169,6 +175,7 @@ public class EntityFilterStageTest extends BaseDOMTest {
         stage.setDesignatedEntities(Collections.emptySet());
         stage.initialize();
         stage.execute(metadataCollection);
+        stage.destroy();
 
         Assert.assertEquals(metadataCollection.size(), 3);
     }
diff --git a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/saml/EntityRoleFilterStageTest.java b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/saml/EntityRoleFilterStageTest.java
index adc9a30..e16b26e 100644
--- a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/saml/EntityRoleFilterStageTest.java
+++ b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/saml/EntityRoleFilterStageTest.java
@@ -57,6 +57,7 @@ public class EntityRoleFilterStageTest extends BaseDOMTest {
 
         List<Item<Element>> metadataCollection = buildMetadataCollection();
         stage.execute(metadataCollection);
+        stage.destroy();
 
         Assert.assertEquals(metadataCollection.size(), 1);
 
@@ -81,6 +82,7 @@ public class EntityRoleFilterStageTest extends BaseDOMTest {
 
         List<Item<Element>> metadataCollection = buildMetadataCollection();
         stage.execute(metadataCollection);
+        stage.destroy();
 
         Assert.assertEquals(metadataCollection.size(), 2);
 
@@ -110,6 +112,7 @@ public class EntityRoleFilterStageTest extends BaseDOMTest {
 
         List<Item<Element>> metadataCollection = buildMetadataCollection();
         stage.execute(metadataCollection);
+        stage.destroy();
 
         Assert.assertEquals(metadataCollection.size(), 3);
 
@@ -143,6 +146,7 @@ public class EntityRoleFilterStageTest extends BaseDOMTest {
         stage.initialize();
 
         stage.execute(metadataCollection);
+        stage.destroy();
 
         List<Element> descriptors = ElementSupport.getChildElements(metadataCollection.iterator().next().unwrap());
         Assert.assertEquals(descriptors.size(), 2);
@@ -174,6 +178,7 @@ public class EntityRoleFilterStageTest extends BaseDOMTest {
         stage.initialize();
 
         stage.execute(metadataCollection);
+        stage.destroy();
 
         Assert.assertEquals(metadataCollection.size(), 0);
     }
@@ -198,6 +203,7 @@ public class EntityRoleFilterStageTest extends BaseDOMTest {
         stage.initialize();
 
         stage.execute(metadataCollection);
+        stage.destroy();
 
         Assert.assertEquals(metadataCollection.size(), 1);
     }
@@ -220,4 +226,4 @@ public class EntityRoleFilterStageTest extends BaseDOMTest {
 
         return metadataCollection;
     }
-}
\ No newline at end of file
+}
diff --git a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/saml/mdrpi/EntityRegistrationAuthorityFilterStageTest.java b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/saml/mdrpi/EntityRegistrationAuthorityFilterStageTest.java
index 543ddcd..6c5566d 100644
--- a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/saml/mdrpi/EntityRegistrationAuthorityFilterStageTest.java
+++ b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/dom/saml/mdrpi/EntityRegistrationAuthorityFilterStageTest.java
@@ -57,6 +57,7 @@ public class EntityRegistrationAuthorityFilterStageTest extends BaseDOMTest {
         Assert.assertEquals(mdCollection.size(), 3);
 
         stage.execute(mdCollection);
+        stage.destroy();
         Assert.assertEquals(mdCollection.size(), 2);
     }
 
@@ -78,6 +79,7 @@ public class EntityRegistrationAuthorityFilterStageTest extends BaseDOMTest {
         Assert.assertEquals(mdCollection.size(), 3);
 
         stage.execute(mdCollection);
+        stage.destroy();
         Assert.assertEquals(mdCollection.size(), 1);
     }
 
@@ -101,6 +103,7 @@ public class EntityRegistrationAuthorityFilterStageTest extends BaseDOMTest {
         Assert.assertEquals(mdCollection.size(), 1);
 
         stage.execute(mdCollection);
+        stage.destroy();
         Assert.assertEquals(mdCollection.size(), 0);
     }
 
@@ -125,6 +128,7 @@ public class EntityRegistrationAuthorityFilterStageTest extends BaseDOMTest {
         Assert.assertEquals(mdCollection.size(), 1);
 
         stage.execute(mdCollection);
+        stage.destroy();
         Assert.assertEquals(mdCollection.size(), 0);
     }
 
@@ -149,6 +153,7 @@ public class EntityRegistrationAuthorityFilterStageTest extends BaseDOMTest {
         Assert.assertEquals(mdCollection.size(), 1);
 
         stage.execute(mdCollection);
+        stage.destroy();
         Assert.assertEquals(mdCollection.size(), 1);
         Assert.assertEquals(ElementSupport.getChildElements(mdCollection.get(0).unwrap()).size(), 0);
     }
diff --git a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/pipeline/FilesInDirectoryMultiOutputStrategyTest.java b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/pipeline/FilesInDirectoryMultiOutputStrategyTest.java
index c3c6e6d..f17a329 100644
--- a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/pipeline/FilesInDirectoryMultiOutputStrategyTest.java
+++ b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/pipeline/FilesInDirectoryMultiOutputStrategyTest.java
@@ -73,6 +73,7 @@ public class FilesInDirectoryMultiOutputStrategyTest {
         
         checkOneFile(tempDir, "preabcabc.txt");
         wipeDirectory(tempDir);
+        strategy.destroy();
     }
 
     // Test with defaults
@@ -93,6 +94,7 @@ public class FilesInDirectoryMultiOutputStrategyTest {
         
         checkOneFile(tempDir, "abc");
         wipeDirectory(tempDir);
+        strategy.destroy();
     }
 
 }
diff --git a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/pipeline/ItemOrderingStageTest.java b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/pipeline/ItemOrderingStageTest.java
index 9372a0f..d8a8457 100644
--- a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/pipeline/ItemOrderingStageTest.java
+++ b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/pipeline/ItemOrderingStageTest.java
@@ -42,6 +42,8 @@ public class ItemOrderingStageTest {
         Assert.assertEquals(items.get(0).unwrap(), "one");
         Assert.assertEquals(items.get(1).unwrap(), "two");
         Assert.assertEquals(items.get(2).unwrap(), "three");
+
+        stage.destroy();
     }
 
     @Test
@@ -62,6 +64,8 @@ public class ItemOrderingStageTest {
         Assert.assertEquals(items.get(2).unwrap(), "one");
         Assert.assertEquals(items.get(1).unwrap(), "two");
         Assert.assertEquals(items.get(0).unwrap(), "three");
+
+        stage.destroy();
     }
 
 }
diff --git a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/pipeline/MultiOutputSerializationStageTest.java b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/pipeline/MultiOutputSerializationStageTest.java
index 8e826f0..8eeec27 100644
--- a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/pipeline/MultiOutputSerializationStageTest.java
+++ b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/pipeline/MultiOutputSerializationStageTest.java
@@ -108,6 +108,7 @@ public class MultiOutputSerializationStageTest {
         stage.initialize();
         
         stage.execute(items);
+        stage.destroy();
         
         final Map<String, String> map = strategy.map;
         Assert.assertEquals(map.size(), 3);
diff --git a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/pipeline/PipelineDemultiplexerStageTest.java b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/pipeline/PipelineDemultiplexerStageTest.java
index 2a9bc5a..cd72bac 100644
--- a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/pipeline/PipelineDemultiplexerStageTest.java
+++ b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/pipeline/PipelineDemultiplexerStageTest.java
@@ -112,6 +112,7 @@ public class PipelineDemultiplexerStageTest {
         stage.execute(items);
 
         Assert.assertEquals(countStage.getInvocationCount(), 1);
+        stage.destroy();
     }
     
     @Test public void testThrow() throws Exception {
diff --git a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/pipeline/PipelineMergeStageTest.java b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/pipeline/PipelineMergeStageTest.java
index 2e02d5a..01c5b7f 100644
--- a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/pipeline/PipelineMergeStageTest.java
+++ b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/pipeline/PipelineMergeStageTest.java
@@ -81,6 +81,7 @@ public class PipelineMergeStageTest {
 
         final ArrayList<Item<String>> metadataCollection = new ArrayList<>();
         joinSource.execute(metadataCollection);
+        joinSource.destroy();
         Assert.assertEquals(metadataCollection.size(), 2);
 
         boolean md1CloneMatch = false;
@@ -235,4 +236,4 @@ public class PipelineMergeStageTest {
         }
     }
 
-}
\ No newline at end of file
+}
diff --git a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/pipeline/SimplePipelineTest.java b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/pipeline/SimplePipelineTest.java
index 2fe83af..3713842 100644
--- a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/pipeline/SimplePipelineTest.java
+++ b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/pipeline/SimplePipelineTest.java
@@ -51,6 +51,7 @@ public class SimplePipelineTest {
         Assert.assertTrue(pipeline.getStages().get(0).isInitialized());
         Assert.assertTrue(pipeline.getStages().get(1).isInitialized());
         Assert.assertTrue(pipeline.getStages().get(2).isInitialized());
+        pipeline.destroy();
 
         try {
             pipeline = new SimplePipeline<>();
@@ -105,6 +106,7 @@ public class SimplePipelineTest {
         Assert.assertEquals(metadata.size(), 2);
         Assert.assertEquals(((CountingStage<String>) stages.get(1)).getInvocationCount(), 2);
         Assert.assertEquals(((CountingStage<String>) stages.get(2)).getInvocationCount(), 2);
+        pipeline.destroy();
     }
 
     protected List<Stage<String>> buildStages() {
diff --git a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/pipeline/SplitMergeStageTest.java b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/pipeline/SplitMergeStageTest.java
index db102c7..3d89b77 100644
--- a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/pipeline/SplitMergeStageTest.java
+++ b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/pipeline/SplitMergeStageTest.java
@@ -140,6 +140,7 @@ public class SplitMergeStageTest {
         stage.initialize();
 
         stage.execute(items);
+        stage.destroy();
 
         Assert.assertEquals(selectedCount.getInvocationCount(), 1);
         Assert.assertEquals(selectedCount.getItemCount(), 3);
@@ -257,6 +258,7 @@ public class SplitMergeStageTest {
         stage.initialize();
         
         stage.execute(items);
+        stage.destroy();
         Assert.assertEquals(3, items.size());
     }
 
@@ -288,6 +290,7 @@ public class SplitMergeStageTest {
         stage.initialize();
         
         stage.execute(items);
+        stage.destroy();
         Assert.assertEquals(3, items.size());
     }
 }
diff --git a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/validate/x509/X509RSAOpenSSLBlacklistValidatorTest.java b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/validate/x509/X509RSAOpenSSLBlacklistValidatorTest.java
index e118c38..1d79dab 100644
--- a/aggregator-pipeline/src/test/java/net/shibboleth/metadata/validate/x509/X509RSAOpenSSLBlacklistValidatorTest.java
+++ b/aggregator-pipeline/src/test/java/net/shibboleth/metadata/validate/x509/X509RSAOpenSSLBlacklistValidatorTest.java
@@ -47,6 +47,7 @@ public class X509RSAOpenSSLBlacklistValidatorTest extends BaseX509ValidatorTest
         final X509Certificate cert = getCertificate("ok.pem");
         Assert.assertEquals(val.validate(cert, item, "stage"), Validator.Action.CONTINUE);
         errorsAndWarnings(item, 0, 0);
+        val.destroy();
     }
 
     @Test
@@ -61,6 +62,7 @@ public class X509RSAOpenSSLBlacklistValidatorTest extends BaseX509ValidatorTest
         final X509Certificate cert = getCertificate("1024.pem");
         Assert.assertEquals(val.validate(cert, item, "stage"), Validator.Action.CONTINUE);
         errorsAndWarnings(item, 1, 0);
+        val.destroy();
     }
 
     @Test
@@ -75,6 +77,7 @@ public class X509RSAOpenSSLBlacklistValidatorTest extends BaseX509ValidatorTest
         final X509Certificate cert = getCertificate("1024.pem");
         Assert.assertEquals(val.validate(cert, item, "stage"), Validator.Action.CONTINUE);
         errorsAndWarnings(item, 1, 0);
+        val.destroy();
     }
 
     @Test
@@ -89,6 +92,7 @@ public class X509RSAOpenSSLBlacklistValidatorTest extends BaseX509ValidatorTest
         final X509Certificate cert = getCertificate("1024.pem");
         Assert.assertEquals(val.validate(cert, item, "stage"), Validator.Action.CONTINUE);
         errorsAndWarnings(item, 0, 0);
+        val.destroy();
     }
 
     @Test
@@ -103,6 +107,7 @@ public class X509RSAOpenSSLBlacklistValidatorTest extends BaseX509ValidatorTest
         final X509Certificate cert = getCertificate("2048.pem");
         val.validate(cert, item, "stage");
         Assert.assertEquals(val.validate(cert, item, "stage"), Validator.Action.CONTINUE);
+        val.destroy();
     }
 
     @Test
@@ -117,6 +122,7 @@ public class X509RSAOpenSSLBlacklistValidatorTest extends BaseX509ValidatorTest
         final X509Certificate cert = getCertificate("2048.pem");
         val.validate(cert, item, "stage");
         Assert.assertEquals(val.validate(cert, item, "stage"), Validator.Action.CONTINUE);
+        val.destroy();
     }
 
     @Test
@@ -131,6 +137,7 @@ public class X509RSAOpenSSLBlacklistValidatorTest extends BaseX509ValidatorTest
         final X509Certificate cert = getCertificate("2048.pem");
         val.validate(cert, item, "stage");
         Assert.assertEquals(val.validate(cert, item, "stage"), Validator.Action.CONTINUE);
+        val.destroy();
     }
 
     @Test
@@ -145,6 +152,7 @@ public class X509RSAOpenSSLBlacklistValidatorTest extends BaseX509ValidatorTest
         final X509Certificate cert = getCertificate("2048.pem");
         Assert.assertEquals(val.validate(cert, item, "stage"), Validator.Action.CONTINUE);
         errorsAndWarnings(item, 0, 0);
+        val.destroy();
     }
 
     @Test
@@ -153,6 +161,7 @@ public class X509RSAOpenSSLBlacklistValidatorTest extends BaseX509ValidatorTest
         val.setBlacklistResource(getClasspathResource("issue9.txt"));
         val.setId("test");
         val.initialize();
+        val.destroy();
     }
 
     @Test
@@ -180,4 +189,25 @@ public class X509RSAOpenSSLBlacklistValidatorTest extends BaseX509ValidatorTest
             Assert.assertTrue(cause instanceof IOException, "cause should have been an IOException");
         }
     }
+    
+    @Test
+    public void testGetResource() throws Exception {
+        final var val = new X509RSAOpenSSLBlacklistValidator();
+        val.setId("test");
+        Assert.assertNull(val.getBlacklistResource());
+        final var resource = getClasspathResource("1024.txt");
+        Assert.assertNotNull(resource);
+        val.setBlacklistResource(resource);
+        Assert.assertSame(val.getBlacklistResource(), resource);
+        val.initialize();
+        val.destroy();
+    }
+
+    @Test(expectedExceptions = ComponentInitializationException.class)
+    public void testNoResource() throws Exception {
+        final var val = new X509RSAOpenSSLBlacklistValidator();
+        val.setId("test");
+        val.initialize();
+    }
+
 }

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the commits mailing list