You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by ol...@apache.org on 2022/09/13 21:15:41 UTC
[sling-org-apache-sling-clam] 02/02: SLING-11478 Update Testing PaxExam to 4.0.0
This is an automated email from the ASF dual-hosted git repository.
olli pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-clam.git
commit 75ea1d8e14f845f4f7c4643f5669ae158eabb153
Author: Oliver Lietz <ol...@apache.org>
AuthorDate: Tue Sep 13 23:15:19 2022 +0200
SLING-11478 Update Testing PaxExam to 4.0.0
* use Testing PaxExam 4.0.0-SNAPSHOT
* update test dependencies
* use Hamcrest's assertThat
---
pom.xml | 39 ++++++----------------
.../sling/clam/it/tests/ClamEventsServletIT.java | 4 +--
.../sling/clam/it/tests/ClamJcrScanServletIT.java | 8 +++--
.../sling/clam/it/tests/ClamTestSupport.java | 31 +++--------------
.../it/tests/JcrPropertyScanJobConsumerIT.java | 5 +--
.../it/tests/MailSendingScanResultHandlerIT.java | 26 +++++++++------
.../ResourcePersistingScanResultHandlerIT.java | 9 ++---
7 files changed, 44 insertions(+), 78 deletions(-)
diff --git a/pom.xml b/pom.xml
index c1f3327..4f0fa39 100644
--- a/pom.xml
+++ b/pom.xml
@@ -246,7 +246,7 @@
<dependency>
<groupId>org.apache.felix</groupId>
<artifactId>org.apache.felix.framework</artifactId>
- <version>7.0.3</version>
+ <version>7.0.5</version>
<scope>test</scope>
</dependency>
<!-- Apache Jackrabbit -->
@@ -321,7 +321,7 @@
<groupId>org.apache.sling</groupId>
<artifactId>org.apache.sling.resource.presence</artifactId>
<version>0.0.2</version>
- <scope>provided</scope>
+ <scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.sling</groupId>
@@ -360,6 +360,12 @@
<artifactId>junit</artifactId>
<scope>test</scope>
</dependency>
+ <dependency>
+ <groupId>org.apache.servicemix.bundles</groupId>
+ <artifactId>org.apache.servicemix.bundles.hamcrest</artifactId>
+ <scope>test</scope>
+ <version>1.3_1</version>
+ </dependency>
<dependency>
<groupId>io.rest-assured</groupId>
<artifactId>rest-assured</artifactId>
@@ -369,13 +375,13 @@
<dependency>
<groupId>org.awaitility</groupId>
<artifactId>awaitility</artifactId>
- <version>4.2.0</version>
+ <version>3.1.6</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.testcontainers</groupId>
<artifactId>testcontainers</artifactId>
- <version>1.17.1</version>
+ <version>1.17.3</version>
<scope>test</scope>
</dependency>
<dependency>
@@ -420,31 +426,6 @@
<version>2.6.7</version>
<scope>test</scope>
</dependency>
- <!-- testing – truth and dependencies -->
- <dependency>
- <groupId>com.google.truth</groupId>
- <artifactId>truth</artifactId>
- <version>1.1.3</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>com.google.guava</groupId>
- <artifactId>guava</artifactId>
- <version>31.1-jre</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>com.google.guava</groupId>
- <artifactId>failureaccess</artifactId>
- <version>1.0.1</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>com.googlecode.java-diff-utils</groupId>
- <artifactId>diffutils</artifactId>
- <version>1.3.0</version>
- <scope>test</scope>
- </dependency>
</dependencies>
</project>
diff --git a/src/test/java/org/apache/sling/clam/it/tests/ClamEventsServletIT.java b/src/test/java/org/apache/sling/clam/it/tests/ClamEventsServletIT.java
index b166078..e774ef6 100644
--- a/src/test/java/org/apache/sling/clam/it/tests/ClamEventsServletIT.java
+++ b/src/test/java/org/apache/sling/clam/it/tests/ClamEventsServletIT.java
@@ -61,7 +61,7 @@ import static org.ops4j.pax.exam.cm.ConfigurationAdminOptions.factoryConfigurati
public class ClamEventsServletIT extends ClamTestSupport {
@Inject
- @Filter(value = "(path=/content/starter)", timeout = 300000)
+ @Filter(value = "(path=/content/starter/img/sling-logo.svg)", timeout = 300000)
private ResourcePresence resourcePresence;
@Inject
@@ -80,7 +80,7 @@ public class ClamEventsServletIT extends ClamTestSupport {
clamdConfiguration(),
slingResourcePresence(),
factoryConfiguration("org.apache.sling.resource.presence.internal.ResourcePresenter")
- .put("path", "/content/starter")
+ .put("path", "/content/starter/img/sling-logo.svg")
.asOption(),
slingStarterContent(),
// ok io/http/eventsource
diff --git a/src/test/java/org/apache/sling/clam/it/tests/ClamJcrScanServletIT.java b/src/test/java/org/apache/sling/clam/it/tests/ClamJcrScanServletIT.java
index 99377fa..6811a51 100644
--- a/src/test/java/org/apache/sling/clam/it/tests/ClamJcrScanServletIT.java
+++ b/src/test/java/org/apache/sling/clam/it/tests/ClamJcrScanServletIT.java
@@ -38,6 +38,7 @@ import org.ops4j.pax.exam.util.Filter;
import static io.restassured.RestAssured.given;
import static java.util.concurrent.TimeUnit.MINUTES;
import static java.util.concurrent.TimeUnit.SECONDS;
+import static org.apache.sling.testing.paxexam.SlingOptions.slingJcrJackrabbitUsermanager;
import static org.apache.sling.testing.paxexam.SlingOptions.slingResourcePresence;
import static org.apache.sling.testing.paxexam.SlingOptions.slingStarterContent;
import static org.awaitility.Awaitility.with;
@@ -49,7 +50,7 @@ import static org.ops4j.pax.exam.cm.ConfigurationAdminOptions.factoryConfigurati
public class ClamJcrScanServletIT extends ClamTestSupport {
@Inject
- @Filter(value = "(path=/content/starter)", timeout = 300000)
+ @Filter(value = "(path=/content/starter/img/sling-logo.svg)", timeout = 300000)
private ResourcePresence resourcePresence;
private static final String URL_TEMPLATE = "http://localhost:%s/system/clam-jcr-scan";
@@ -61,9 +62,10 @@ public class ClamJcrScanServletIT extends ClamTestSupport {
clamdConfiguration(),
slingResourcePresence(),
factoryConfiguration("org.apache.sling.resource.presence.internal.ResourcePresenter")
- .put("path", "/content/starter")
+ .put("path", "/content/starter/img/sling-logo.svg")
.asOption(),
- slingStarterContent()
+ slingStarterContent(),
+ slingJcrJackrabbitUsermanager()
);
}
diff --git a/src/test/java/org/apache/sling/clam/it/tests/ClamTestSupport.java b/src/test/java/org/apache/sling/clam/it/tests/ClamTestSupport.java
index 9bec34f..d3089e6 100644
--- a/src/test/java/org/apache/sling/clam/it/tests/ClamTestSupport.java
+++ b/src/test/java/org/apache/sling/clam/it/tests/ClamTestSupport.java
@@ -19,7 +19,6 @@
package org.apache.sling.clam.it.tests;
import java.util.Collections;
-import java.util.Objects;
import java.util.regex.Pattern;
import javax.inject.Inject;
@@ -33,26 +32,18 @@ import org.apache.sling.clam.jcr.NodeDescendingJcrPropertyDigger;
import org.apache.sling.commons.clam.ClamService;
import org.apache.sling.event.jobs.JobManager;
import org.apache.sling.jcr.api.SlingRepository;
-import org.apache.sling.testing.paxexam.SlingOptions;
import org.apache.sling.testing.paxexam.TestSupport;
import org.ops4j.pax.exam.Option;
import org.ops4j.pax.exam.options.ModifiableCompositeOption;
-import org.ops4j.pax.exam.options.OptionalCompositeOption;
-import org.ops4j.pax.exam.options.extra.VMOption;
import org.osgi.framework.BundleContext;
import static org.apache.sling.testing.paxexam.SlingOptions.awaitility;
import static org.apache.sling.testing.paxexam.SlingOptions.restassured;
+import static org.apache.sling.testing.paxexam.SlingOptions.slingCommonsClam;
import static org.apache.sling.testing.paxexam.SlingOptions.slingEvent;
import static org.apache.sling.testing.paxexam.SlingOptions.slingQuickstartOakTar;
import static org.apache.sling.testing.paxexam.SlingOptions.testcontainers;
-import static org.apache.sling.testing.paxexam.SlingVersionResolver.SLING_GROUP_ID;
import static org.ops4j.pax.exam.CoreOptions.composite;
-import static org.ops4j.pax.exam.CoreOptions.junitBundles;
-import static org.ops4j.pax.exam.CoreOptions.mavenBundle;
-import static org.ops4j.pax.exam.CoreOptions.vmOption;
-import static org.ops4j.pax.exam.CoreOptions.when;
-import static org.ops4j.pax.exam.CoreOptions.wrappedBundle;
import static org.ops4j.pax.exam.cm.ConfigurationAdminOptions.factoryConfiguration;
import static org.ops4j.pax.exam.cm.ConfigurationAdminOptions.newConfiguration;
@@ -79,46 +70,32 @@ public abstract class ClamTestSupport extends TestSupport {
static final String USER_PASSWORD = "foo";
protected ModifiableCompositeOption baseConfiguration() {
- SlingOptions.versionResolver.setVersionFromProject(SLING_GROUP_ID, "org.apache.sling.commons.threads");
return composite(
- // Truth first to prevent version issues with Guava
- wrappedBundle(mavenBundle().groupId("com.google.truth").artifactId("truth").versionAsInProject()),
- mavenBundle().groupId("com.google.guava").artifactId("guava").versionAsInProject(),
- mavenBundle().groupId("com.google.guava").artifactId("failureaccess").versionAsInProject(),
- mavenBundle().groupId("com.googlecode.java-diff-utils").artifactId("diffutils").versionAsInProject(),
super.baseConfiguration(),
quickstart(),
// Sling Clam
testBundle("bundle.filename"),
factoryConfiguration("org.apache.sling.jcr.repoinit.RepositoryInitializer")
- .put("scripts", new String[]{"create service user sling-clam\ncreate path (sling:Folder) /var/clam/results\nset ACL for sling-clam\nallow jcr:all on /var/clam\nend"})
+ .put("scripts", new String[]{"create service user sling-clam with path system/sling\ncreate path (sling:Folder) /var/clam/results(sling:OrderedFolder)\nset principal ACL for sling-clam\nallow jcr:read on /\nallow rep:write on /var/clam\nend"})
.asOption(),
factoryConfiguration("org.apache.sling.jcr.repoinit.RepositoryInitializer")
.put("scripts", new String[]{"create user bob with password foo\ncreate group sling-clam-scan\nadd bob to group sling-clam-scan"})
.asOption(),
factoryConfiguration("org.apache.sling.serviceusermapping.impl.ServiceUserMapperImpl.amended")
- .put("user.mapping", new String[]{"org.apache.sling.clam=sling-clam", "org.apache.sling.clam:result-writer=sling-clam"})
+ .put("user.mapping", new String[]{"org.apache.sling.clam=[sling-clam]", "org.apache.sling.clam:result-writer=[sling-clam]"})
.asOption(),
// Sling Commons Clam
- mavenBundle().groupId(SLING_GROUP_ID).artifactId("org.apache.sling.commons.clam").versionAsInProject(),
+ slingCommonsClam(),
// testing
newConfiguration("org.apache.sling.jcr.base.internal.LoginAdminWhitelist")
.put("whitelist.bundles.regexp", "PAXEXAM-PROBE-.*")
.asOption(),
- junitBundles(),
awaitility(),
restassured(),
testcontainers()
);
}
- // remove with Testing PaxExam 4.0
- protected OptionalCompositeOption jacoco() {
- final String jacocoCommand = System.getProperty("jacoco.command");
- final VMOption option = Objects.nonNull(jacocoCommand) && !jacocoCommand.trim().isEmpty() ? vmOption(jacocoCommand) : null;
- return when(Objects.nonNull(option)).useOptions(option);
- }
-
protected Option quickstart() {
final int httpPort = findFreePort();
final String workingDirectory = workingDirectory();
diff --git a/src/test/java/org/apache/sling/clam/it/tests/JcrPropertyScanJobConsumerIT.java b/src/test/java/org/apache/sling/clam/it/tests/JcrPropertyScanJobConsumerIT.java
index 9028683..381edbe 100644
--- a/src/test/java/org/apache/sling/clam/it/tests/JcrPropertyScanJobConsumerIT.java
+++ b/src/test/java/org/apache/sling/clam/it/tests/JcrPropertyScanJobConsumerIT.java
@@ -30,7 +30,8 @@ import org.ops4j.pax.exam.spi.reactors.ExamReactorStrategy;
import org.ops4j.pax.exam.spi.reactors.PerClass;
import org.ops4j.pax.exam.util.Filter;
-import static com.google.common.truth.Truth.assertThat;
+import static org.hamcrest.MatcherAssert.assertThat;
+import static org.hamcrest.Matchers.notNullValue;
import static org.ops4j.pax.exam.CoreOptions.options;
@RunWith(PaxExam.class)
@@ -50,7 +51,7 @@ public class JcrPropertyScanJobConsumerIT extends ClamTestSupport {
@Test
public void testJobConsumer() {
- assertThat(jobConsumer).isNotNull();
+ assertThat(jobConsumer, notNullValue());
}
}
diff --git a/src/test/java/org/apache/sling/clam/it/tests/MailSendingScanResultHandlerIT.java b/src/test/java/org/apache/sling/clam/it/tests/MailSendingScanResultHandlerIT.java
index 72fcfcb..c28d162 100644
--- a/src/test/java/org/apache/sling/clam/it/tests/MailSendingScanResultHandlerIT.java
+++ b/src/test/java/org/apache/sling/clam/it/tests/MailSendingScanResultHandlerIT.java
@@ -44,12 +44,16 @@ import org.ops4j.pax.exam.spi.reactors.PerClass;
import org.ops4j.pax.exam.util.Filter;
import org.ops4j.pax.exam.util.PathUtils;
-import static com.google.common.truth.Truth.assertThat;
import static org.apache.sling.testing.paxexam.SlingOptions.greenmail;
import static org.apache.sling.testing.paxexam.SlingOptions.slingCommonsMessagingMail;
import static org.apache.sling.testing.paxexam.SlingOptions.slingResourcePresence;
import static org.apache.sling.testing.paxexam.SlingOptions.slingStarterContent;
import static org.apache.sling.testing.paxexam.SlingOptions.thymeleaf;
+import static org.hamcrest.MatcherAssert.assertThat;
+import static org.hamcrest.Matchers.containsString;
+import static org.hamcrest.Matchers.is;
+import static org.hamcrest.Matchers.notNullValue;
+import static org.hamcrest.Matchers.startsWith;
import static org.ops4j.pax.exam.CoreOptions.options;
import static org.ops4j.pax.exam.cm.ConfigurationAdminOptions.factoryConfiguration;
import static org.ops4j.pax.exam.cm.ConfigurationAdminOptions.newConfiguration;
@@ -63,7 +67,7 @@ public class MailSendingScanResultHandlerIT extends ClamTestSupport {
private JcrPropertyScanResultHandler jcrPropertyScanResultHandler;
@Inject
- @Filter(value = "(path=/content/starter)", timeout = 300000)
+ @Filter(value = "(path=/content/starter/img/sling-logo.svg)", timeout = 300000)
private ResourcePresence resourcePresence;
@Inject
@@ -80,7 +84,7 @@ public class MailSendingScanResultHandlerIT extends ClamTestSupport {
clamdConfiguration(),
slingResourcePresence(),
factoryConfiguration("org.apache.sling.resource.presence.internal.ResourcePresenter")
- .put("path", "/content/starter")
+ .put("path", "/content/starter/img/sling-logo.svg")
.asOption(),
newConfiguration("org.apache.sling.clam.result.internal.MailSendingScanResultHandler")
.put("mail.from", "from@example.org")
@@ -144,7 +148,7 @@ public class MailSendingScanResultHandlerIT extends ClamTestSupport {
@Test
public void testJcrPropertyScanResultHandler() {
- assertThat(jcrPropertyScanResultHandler).isNotNull();
+ assertThat(jcrPropertyScanResultHandler, notNullValue());
}
@Test
@@ -152,16 +156,16 @@ public class MailSendingScanResultHandlerIT extends ClamTestSupport {
digBinaries(nodeDescendingJcrPropertyDigger, "/content/starter");
greenMail.waitForIncomingEmail(60000, 8);
final MimeMessage[] messages = greenMail.getReceivedMessages();
- assertThat(messages.length).isEqualTo(8);
+ assertThat(messages.length, is(8));
for (final MimeMessage message : messages) {
- assertThat(message.getSubject()).startsWith("Clam scan result: OK for /content/starter/");
+ assertThat(message.getSubject(), startsWith("Clam scan result: OK for /content/starter/"));
final MimeMessageParser parser = new MimeMessageParser(message).parse();
final String text = parser.getPlainContent();
- assertThat(text).contains("status: OK");
- assertThat(text).contains("message: ");
- assertThat(text).contains("path: /content/starter/");
- assertThat(text).contains("started: ");
- assertThat(text).contains("timestamp: ");
+ assertThat(text, containsString("status: OK"));
+ assertThat(text, containsString("message: "));
+ assertThat(text, containsString("path: /content/starter/"));
+ assertThat(text, containsString("started: "));
+ assertThat(text, containsString("timestamp: "));
}
}
diff --git a/src/test/java/org/apache/sling/clam/it/tests/ResourcePersistingScanResultHandlerIT.java b/src/test/java/org/apache/sling/clam/it/tests/ResourcePersistingScanResultHandlerIT.java
index d5769ca..d161532 100644
--- a/src/test/java/org/apache/sling/clam/it/tests/ResourcePersistingScanResultHandlerIT.java
+++ b/src/test/java/org/apache/sling/clam/it/tests/ResourcePersistingScanResultHandlerIT.java
@@ -36,12 +36,13 @@ import org.ops4j.pax.exam.spi.reactors.ExamReactorStrategy;
import org.ops4j.pax.exam.spi.reactors.PerClass;
import org.ops4j.pax.exam.util.Filter;
-import static com.google.common.truth.Truth.assertThat;
import static java.util.concurrent.TimeUnit.MINUTES;
import static java.util.concurrent.TimeUnit.SECONDS;
import static org.apache.sling.testing.paxexam.SlingOptions.slingResourcePresence;
import static org.apache.sling.testing.paxexam.SlingOptions.slingStarterContent;
import static org.awaitility.Awaitility.with;
+import static org.hamcrest.MatcherAssert.assertThat;
+import static org.hamcrest.Matchers.notNullValue;
import static org.ops4j.pax.exam.CoreOptions.options;
import static org.ops4j.pax.exam.cm.ConfigurationAdminOptions.factoryConfiguration;
import static org.ops4j.pax.exam.cm.ConfigurationAdminOptions.newConfiguration;
@@ -55,7 +56,7 @@ public class ResourcePersistingScanResultHandlerIT extends ClamTestSupport {
private JcrPropertyScanResultHandler jcrPropertyScanResultHandler;
@Inject
- @Filter(value = "(path=/content/starter)", timeout = 300000)
+ @Filter(value = "(path=/content/starter/img/sling-logo.svg)", timeout = 300000)
private ResourcePresence resourcePresence;
@Inject
@@ -68,7 +69,7 @@ public class ResourcePersistingScanResultHandlerIT extends ClamTestSupport {
clamdConfiguration(),
slingResourcePresence(),
factoryConfiguration("org.apache.sling.resource.presence.internal.ResourcePresenter")
- .put("path", "/content/starter")
+ .put("path", "/content/starter/img/sling-logo.svg")
.asOption(),
newConfiguration("org.apache.sling.clam.result.internal.ResourcePersistingScanResultHandler")
.put("result.status.ok.persist", true)
@@ -80,7 +81,7 @@ public class ResourcePersistingScanResultHandlerIT extends ClamTestSupport {
@Test
public void testJcrPropertyScanResultHandler() {
- assertThat(jcrPropertyScanResultHandler).isNotNull();
+ assertThat(jcrPropertyScanResultHandler, notNullValue());
}
@Test