This is an automated email from the ASF dual-hosted git repository.

tmaret pushed a commit to branch SLING-10095-4
in repository 
https://gitbox.apache.org/repos/asf/sling-org-apache-sling-distribution-journal.git

commit 721bb7f3225fda39d19ce89557cc3ac421849a76
Author: tmaret <[email protected]>
AuthorDate: Fri Dec 17 23:27:45 2021 +0100

    SLING-10095 - Add negative test case
---
 .../journal/bookkeeper/ContentPackageExtractorTest.java    | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git 
a/src/test/java/org/apache/sling/distribution/journal/bookkeeper/ContentPackageExtractorTest.java
 
b/src/test/java/org/apache/sling/distribution/journal/bookkeeper/ContentPackageExtractorTest.java
index 5f6eaa2..ace5025 100644
--- 
a/src/test/java/org/apache/sling/distribution/journal/bookkeeper/ContentPackageExtractorTest.java
+++ 
b/src/test/java/org/apache/sling/distribution/journal/bookkeeper/ContentPackageExtractorTest.java
@@ -19,6 +19,7 @@
 package org.apache.sling.distribution.journal.bookkeeper;
 
 import static java.util.Collections.singletonList;
+import static org.mockito.Mockito.doThrow;
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;
 
@@ -33,10 +34,12 @@ import javax.jcr.nodetype.NodeType;
 import org.apache.jackrabbit.vault.fs.io.ImportOptions;
 import org.apache.jackrabbit.vault.packaging.JcrPackage;
 import org.apache.jackrabbit.vault.packaging.JcrPackageManager;
+import org.apache.jackrabbit.vault.packaging.PackageException;
 import org.apache.jackrabbit.vault.packaging.Packaging;
 import org.apache.sling.api.resource.PersistenceException;
 import org.apache.sling.api.resource.Resource;
 import org.apache.sling.api.resource.ResourceResolver;
+import org.apache.sling.distribution.common.DistributionException;
 import org.apache.sling.testing.mock.osgi.MockOsgi;
 import org.apache.sling.testing.mock.sling.MockSling;
 import org.apache.sling.testing.mock.sling.ResourceResolverType;
@@ -135,6 +138,17 @@ public class ContentPackageExtractorTest {
         verify(pkg).install(Mockito.any(ImportOptions.class));
     }
 
+    @Test(expected = DistributionException.class)
+    public void testFailedInstall() throws Exception {
+
+        doThrow(new PackageException()).when(pkg)
+                .install(Mockito.any(ImportOptions.class));
+
+        Resource node = createImportedPackage();
+        ContentPackageExtractor extractor = new 
ContentPackageExtractor(packaging, PackageHandling.Install);
+        extractor.handle(resourceResolver, singletonList(node.getPath()));
+    }
+
 
     private Resource createImportedPackage() throws PersistenceException {
         Resource packages = createEtcPackages();

Reply via email to