You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by ro...@apache.org on 2017/11/07 10:23:26 UTC
[sling-org-apache-sling-testing-sling-mock] 10/37: SLING-5043
sling-mocks: Execute commit() after ContentLoader operations
This is an automated email from the ASF dual-hosted git repository.
rombert pushed a commit to annotated tag org.apache.sling.testing.sling-mock-1.6.0
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-testing-sling-mock.git
commit 81238685c332d76339bf5b36b65fa0dca3704d64
Author: Stefan Seifert <ss...@apache.org>
AuthorDate: Fri Sep 18 08:05:36 2015 +0000
SLING-5043 sling-mocks: Execute commit() after ContentLoader operations
git-svn-id: https://svn.apache.org/repos/asf/sling/trunk/testing/mocks/sling-mock@1703762 13f79535-47bb-0310-9956-ffa450edef68
---
.../sling/testing/mock/sling/loader/ContentLoader.java | 10 ++++++++--
.../mock/sling/loader/AbstractContentLoaderBinaryTest.java | 14 ++++++++++++++
.../sling/loader/AbstractContentLoaderJsonDamTest.java | 14 ++++++++++++++
.../mock/sling/loader/AbstractContentLoaderJsonTest.java | 14 ++++++++++++++
4 files changed, 50 insertions(+), 2 deletions(-)
diff --git a/src/main/java/org/apache/sling/testing/mock/sling/loader/ContentLoader.java b/src/main/java/org/apache/sling/testing/mock/sling/loader/ContentLoader.java
index 8473527..7729618 100644
--- a/src/main/java/org/apache/sling/testing/mock/sling/loader/ContentLoader.java
+++ b/src/main/java/org/apache/sling/testing/mock/sling/loader/ContentLoader.java
@@ -52,6 +52,7 @@ import com.google.common.collect.ImmutableSet;
/**
* Imports JSON data and binary data into Sling resource hierarchy.
+ * After all import operations from json or binaries {@link ResourceResolver#commit()} is called.
*/
public final class ContentLoader {
@@ -173,7 +174,9 @@ public final class ContentLoader {
String jsonString = convertToJsonString(inputStream).trim();
JSONObject json = new JSONObject(jsonString);
- return this.createResource(parentResource, childName, json);
+ Resource resource = this.createResource(parentResource, childName, json);
+ resourceResolver.commit();
+ return resource;
} catch (JSONException ex) {
throw new RuntimeException(ex);
} catch (IOException ex) {
@@ -467,6 +470,7 @@ public final class ContentLoader {
resourceResolver.create(file, JcrConstants.JCR_CONTENT,
ImmutableMap.<String, Object> builder().put(JcrConstants.JCR_PRIMARYTYPE, JcrConstants.NT_RESOURCE)
.put(JcrConstants.JCR_DATA, inputStream).put(JcrConstants.JCR_MIMETYPE, mimeType).build());
+ resourceResolver.commit();
return file;
} catch (PersistenceException ex) {
throw new RuntimeException("Unable to create resource at " + parentResource.getPath() + "/" + name, ex);
@@ -579,9 +583,11 @@ public final class ContentLoader {
*/
public Resource binaryResource(InputStream inputStream, Resource parentResource, String name, String mimeType) {
try {
- return resourceResolver.create(parentResource, name,
+ Resource resource = resourceResolver.create(parentResource, name,
ImmutableMap.<String, Object> builder().put(JcrConstants.JCR_PRIMARYTYPE, JcrConstants.NT_RESOURCE)
.put(JcrConstants.JCR_DATA, inputStream).put(JcrConstants.JCR_MIMETYPE, mimeType).build());
+ resourceResolver.commit();
+ return resource;
} catch (PersistenceException ex) {
throw new RuntimeException("Unable to create resource at " + parentResource.getPath() + "/" + name, ex);
}
diff --git a/src/test/java/org/apache/sling/testing/mock/sling/loader/AbstractContentLoaderBinaryTest.java b/src/test/java/org/apache/sling/testing/mock/sling/loader/AbstractContentLoaderBinaryTest.java
index 5765612..df41247 100644
--- a/src/test/java/org/apache/sling/testing/mock/sling/loader/AbstractContentLoaderBinaryTest.java
+++ b/src/test/java/org/apache/sling/testing/mock/sling/loader/AbstractContentLoaderBinaryTest.java
@@ -19,6 +19,7 @@
package org.apache.sling.testing.mock.sling.loader;
import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNotNull;
import static org.mockito.Mockito.when;
@@ -35,6 +36,7 @@ import org.apache.sling.commons.mime.MimeTypeService;
import org.apache.sling.testing.mock.osgi.MockOsgi;
import org.apache.sling.testing.mock.sling.MockSling;
import org.apache.sling.testing.mock.sling.ResourceResolverType;
+import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -70,6 +72,18 @@ public abstract class AbstractContentLoaderBinaryTest {
when(mimeTypeService.getMimeType("gif")).thenReturn("image/gif");
}
+ @After
+ public final void tearDown() throws Exception {
+ // make sure all changes from ContentLoader are committed
+ assertFalse(resourceResolver.hasChanges());
+ // remove everything below /content
+ Resource content = resourceResolver.getResource("/content");
+ if (content != null) {
+ resourceResolver.delete(content);
+ resourceResolver.commit();
+ }
+ }
+
@Test
public void testBinaryFile() throws IOException {
contentLoader.binaryFile("/sample-image.gif", "/content/binary/sample-image.gif");
diff --git a/src/test/java/org/apache/sling/testing/mock/sling/loader/AbstractContentLoaderJsonDamTest.java b/src/test/java/org/apache/sling/testing/mock/sling/loader/AbstractContentLoaderJsonDamTest.java
index 54fdb67..db83b99 100644
--- a/src/test/java/org/apache/sling/testing/mock/sling/loader/AbstractContentLoaderJsonDamTest.java
+++ b/src/test/java/org/apache/sling/testing/mock/sling/loader/AbstractContentLoaderJsonDamTest.java
@@ -20,6 +20,7 @@ package org.apache.sling.testing.mock.sling.loader;
import static org.junit.Assert.assertArrayEquals;
import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNotNull;
import java.io.IOException;
@@ -37,6 +38,7 @@ import org.apache.sling.api.resource.ResourceUtil;
import org.apache.sling.api.resource.ValueMap;
import org.apache.sling.testing.mock.sling.MockSling;
import org.apache.sling.testing.mock.sling.ResourceResolverType;
+import org.junit.After;
import org.junit.Before;
import org.junit.Test;
@@ -73,6 +75,18 @@ public abstract class AbstractContentLoaderJsonDamTest {
contentLoader.json("/json-import-samples/dam.json", "/content/dam/sample");
}
+ @After
+ public final void tearDown() throws Exception {
+ // make sure all changes from ContentLoader are committed
+ assertFalse(resourceResolver.hasChanges());
+ // remove everything below /content
+ Resource content = resourceResolver.getResource("/content");
+ if (content != null) {
+ resourceResolver.delete(content);
+ resourceResolver.commit();
+ }
+ }
+
@Test
public void testDamAssetMetadata() throws IOException {
Resource assetMetadata = this.resourceResolver
diff --git a/src/test/java/org/apache/sling/testing/mock/sling/loader/AbstractContentLoaderJsonTest.java b/src/test/java/org/apache/sling/testing/mock/sling/loader/AbstractContentLoaderJsonTest.java
index 702294a..ff1471b 100644
--- a/src/test/java/org/apache/sling/testing/mock/sling/loader/AbstractContentLoaderJsonTest.java
+++ b/src/test/java/org/apache/sling/testing/mock/sling/loader/AbstractContentLoaderJsonTest.java
@@ -20,6 +20,7 @@ package org.apache.sling.testing.mock.sling.loader;
import static org.junit.Assert.assertArrayEquals;
import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNotNull;
import java.util.Calendar;
@@ -37,6 +38,7 @@ import org.apache.sling.api.resource.ResourceUtil;
import org.apache.sling.api.resource.ValueMap;
import org.apache.sling.testing.mock.sling.MockSling;
import org.apache.sling.testing.mock.sling.ResourceResolverType;
+import org.junit.After;
import org.junit.Before;
import org.junit.Test;
@@ -73,6 +75,18 @@ public abstract class AbstractContentLoaderJsonTest {
contentLoader.json("/json-import-samples/content.json", "/content/sample/en");
}
+ @After
+ public final void tearDown() throws Exception {
+ // make sure all changes from ContentLoader are committed
+ assertFalse(resourceResolver.hasChanges());
+ // remove everything below /content
+ Resource content = resourceResolver.getResource("/content");
+ if (content != null) {
+ resourceResolver.delete(content);
+ resourceResolver.commit();
+ }
+ }
+
@Test
public void testPageResourceType() {
Resource resource = this.resourceResolver.getResource("/content/sample/en");
--
To stop receiving notification emails like this one, please contact
"commits@sling.apache.org" <co...@sling.apache.org>.