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 2018/12/27 13:50:07 UTC

[sling-org-apache-sling-karaf-integration-tests] branch master updated (ecea924 -> f7c01a9)

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

olli pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-karaf-integration-tests.git.


    from ecea924  ignore resource events test until 100% stable with MongoDB also
     new 236c9a9  SLING-3017 Improve Karaf integration tests
     new f7c01a9  SLING-8195 Stop mongod processes created during test execution

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 pom.xml                                            | 18 ++++++++-----
 .../bootstrap/SlingQuickstartNosqlMongoIT.java     | 27 ++++++-------------
 .../tests/bootstrap/SlingQuickstartOakMongoIT.java | 27 ++++++-------------
 .../karaf/tests/support/MongodProcessStopper.java} | 30 +++++++++++++++++++---
 4 files changed, 55 insertions(+), 47 deletions(-)
 copy src/{main/java/org/apache/sling/karaf/testing/package-info.java => test/java/org/apache/sling/karaf/tests/support/MongodProcessStopper.java} (55%)


[sling-org-apache-sling-karaf-integration-tests] 02/02: SLING-8195 Stop mongod processes created during test execution

Posted by ol...@apache.org.
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-karaf-integration-tests.git

commit f7c01a98b49eead4367766b2b7f1f08e67473034
Author: Oliver Lietz <ol...@apache.org>
AuthorDate: Thu Dec 27 14:49:46 2018 +0100

    SLING-8195 Stop mongod processes created during test execution
---
 pom.xml                                            |  6 +++
 .../bootstrap/SlingQuickstartNosqlMongoIT.java     | 18 ++-------
 .../tests/bootstrap/SlingQuickstartOakMongoIT.java | 18 ++-------
 .../karaf/tests/support/MongodProcessStopper.java  | 46 ++++++++++++++++++++++
 4 files changed, 60 insertions(+), 28 deletions(-)

diff --git a/pom.xml b/pom.xml
index c04c4d7..1840577 100644
--- a/pom.xml
+++ b/pom.xml
@@ -280,6 +280,12 @@
             </executions>
             <configuration>
               <redirectTestOutputToFile>true</redirectTestOutputToFile>
+              <properties>
+                <property>
+                  <name>listener</name>
+                  <value>org.apache.sling.karaf.tests.support.MongodProcessStopper</value>
+                </property>
+              </properties>
             </configuration>
           </plugin>
         </plugins>
diff --git a/src/test/java/org/apache/sling/karaf/tests/bootstrap/SlingQuickstartNosqlMongoIT.java b/src/test/java/org/apache/sling/karaf/tests/bootstrap/SlingQuickstartNosqlMongoIT.java
index fc0d879..b865d4c 100644
--- a/src/test/java/org/apache/sling/karaf/tests/bootstrap/SlingQuickstartNosqlMongoIT.java
+++ b/src/test/java/org/apache/sling/karaf/tests/bootstrap/SlingQuickstartNosqlMongoIT.java
@@ -32,7 +32,7 @@ import de.flapdoodle.embed.mongo.distribution.Version;
 import de.flapdoodle.embed.process.runtime.Network;
 import org.apache.sling.api.resource.ResourceProviderFactory;
 import org.apache.sling.karaf.testing.KarafTestSupport;
-import org.junit.AfterClass;
+import org.apache.sling.karaf.tests.support.MongodProcessStopper;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.ops4j.pax.exam.Configuration;
@@ -52,10 +52,6 @@ import static org.ops4j.pax.exam.karaf.options.KarafDistributionOption.editConfi
 @ExamReactorStrategy(PerClass.class)
 public class SlingQuickstartNosqlMongoIT extends KarafTestSupport {
 
-    private static MongodExecutable executable;
-
-    private static MongodProcess process;
-
     @Inject
     @Filter(timeout = 300000)
     public ResourceProviderFactory resourceProviderFactory;
@@ -64,15 +60,9 @@ public class SlingQuickstartNosqlMongoIT extends KarafTestSupport {
         final MongodStarter starter = MongodStarter.getDefaultInstance();
         final Net net = new Net(port, Network.localhostIsIPv6());
         final IMongodConfig mongodConfig = new MongodConfigBuilder().version(Version.Main.PRODUCTION).net(net).build();
-        executable = starter.prepare(mongodConfig);
-        process = executable.start();
-    }
-
-    @AfterClass // TODO does it work? (no - not supported by Pax Exam)
-    public static void stopMongo() throws Exception {
-        if (executable != null) {
-            executable.stop();
-        }
+        final MongodExecutable executable = starter.prepare(mongodConfig);
+        final MongodProcess process = executable.start();
+        MongodProcessStopper.add(process);
     }
 
     @Configuration
diff --git a/src/test/java/org/apache/sling/karaf/tests/bootstrap/SlingQuickstartOakMongoIT.java b/src/test/java/org/apache/sling/karaf/tests/bootstrap/SlingQuickstartOakMongoIT.java
index 8c0d688..f014c37 100644
--- a/src/test/java/org/apache/sling/karaf/tests/bootstrap/SlingQuickstartOakMongoIT.java
+++ b/src/test/java/org/apache/sling/karaf/tests/bootstrap/SlingQuickstartOakMongoIT.java
@@ -28,7 +28,7 @@ import de.flapdoodle.embed.mongo.config.MongodConfigBuilder;
 import de.flapdoodle.embed.mongo.config.Net;
 import de.flapdoodle.embed.mongo.distribution.Version;
 import de.flapdoodle.embed.process.runtime.Network;
-import org.junit.AfterClass;
+import org.apache.sling.karaf.tests.support.MongodProcessStopper;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.ops4j.pax.exam.Configuration;
@@ -48,23 +48,13 @@ import static org.ops4j.pax.exam.karaf.options.KarafDistributionOption.editConfi
 @ExamReactorStrategy(PerClass.class)
 public class SlingQuickstartOakMongoIT extends AbstractSlingQuickstartOakTestSupport {
 
-    private static MongodExecutable executable;
-
-    private static MongodProcess process;
-
     protected void startMongo(final int port) throws IOException {
         final MongodStarter starter = MongodStarter.getDefaultInstance();
         final Net net = new Net(port, Network.localhostIsIPv6());
         final IMongodConfig mongodConfig = new MongodConfigBuilder().version(Version.Main.PRODUCTION).net(net).build();
-        executable = starter.prepare(mongodConfig);
-        process = executable.start();
-    }
-
-    @AfterClass // TODO does it work? (no - not supported by Pax Exam)
-    public static void stopMongo() throws Exception {
-        if (executable != null) {
-            executable.stop();
-        }
+        final MongodExecutable executable = starter.prepare(mongodConfig);
+        final MongodProcess process = executable.start();
+        MongodProcessStopper.add(process);
     }
 
     @Configuration
diff --git a/src/test/java/org/apache/sling/karaf/tests/support/MongodProcessStopper.java b/src/test/java/org/apache/sling/karaf/tests/support/MongodProcessStopper.java
new file mode 100644
index 0000000..e29841a
--- /dev/null
+++ b/src/test/java/org/apache/sling/karaf/tests/support/MongodProcessStopper.java
@@ -0,0 +1,46 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.sling.karaf.tests.support;
+
+import java.util.HashSet;
+import java.util.Set;
+
+import de.flapdoodle.embed.mongo.MongodProcess;
+import org.junit.runner.Result;
+import org.junit.runner.notification.RunListener;
+
+public class MongodProcessStopper extends RunListener {
+
+    private static Set<MongodProcess> processes = new HashSet<>();
+
+    public MongodProcessStopper() {
+    }
+
+    public static void add(final MongodProcess process) {
+        processes.add(process);
+    }
+
+    @Override
+    public void testRunFinished(Result result) {
+        for (final MongodProcess process : processes) {
+            process.stop();
+        }
+    }
+
+}


[sling-org-apache-sling-karaf-integration-tests] 01/02: SLING-3017 Improve Karaf integration tests

Posted by ol...@apache.org.
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-karaf-integration-tests.git

commit 236c9a98b6a9d816f59355bc4fa02eb792f4a959
Author: Oliver Lietz <ol...@apache.org>
AuthorDate: Thu Dec 27 14:45:55 2018 +0100

    SLING-3017 Improve Karaf integration tests
    
    use latest releases
---
 pom.xml                                                      | 12 ++++++------
 .../karaf/tests/bootstrap/SlingQuickstartNosqlMongoIT.java   |  9 ++++-----
 .../karaf/tests/bootstrap/SlingQuickstartOakMongoIT.java     |  9 ++++-----
 3 files changed, 14 insertions(+), 16 deletions(-)

diff --git a/pom.xml b/pom.xml
index bd5cfcd..c04c4d7 100644
--- a/pom.xml
+++ b/pom.xml
@@ -78,7 +78,7 @@
     <dependency>
       <groupId>org.apache.sling</groupId>
       <artifactId>org.apache.sling.api</artifactId>
-      <version>2.18.4</version>
+      <version>2.20.0</version>
       <scope>test</scope>
     </dependency>
     <dependency>
@@ -111,7 +111,7 @@
     <dependency>
       <groupId>org.apache.jackrabbit</groupId>
       <artifactId>jackrabbit-jcr-commons</artifactId>
-      <version>2.16.3</version>
+      <version>2.18.0</version>
       <scope>test</scope>
     </dependency>
     <!-- bnd -->
@@ -179,26 +179,26 @@
     <dependency>
       <groupId>net.java.dev.jna</groupId>
       <artifactId>jna</artifactId>
-      <version>4.5.1</version>
+      <version>5.2.0</version>
       <scope>test</scope>
     </dependency>
     <dependency>
       <groupId>net.java.dev.jna</groupId>
       <artifactId>jna-platform</artifactId>
-      <version>4.5.1</version>
+      <version>5.2.0</version>
       <scope>test</scope>
     </dependency>
     <dependency>
       <groupId>org.apache.commons</groupId>
       <artifactId>commons-compress</artifactId>
-      <version>1.16.1</version>
+      <version>1.18</version>
       <scope>test</scope>
     </dependency>
     <!-- Couchbase -->
     <dependency>
       <groupId>com.couchbase.mock</groupId>
       <artifactId>CouchbaseMock</artifactId>
-      <version>1.5.19</version>
+      <version>1.5.22</version>
       <scope>test</scope>
     </dependency>
     <dependency>
diff --git a/src/test/java/org/apache/sling/karaf/tests/bootstrap/SlingQuickstartNosqlMongoIT.java b/src/test/java/org/apache/sling/karaf/tests/bootstrap/SlingQuickstartNosqlMongoIT.java
index 4e65857..fc0d879 100644
--- a/src/test/java/org/apache/sling/karaf/tests/bootstrap/SlingQuickstartNosqlMongoIT.java
+++ b/src/test/java/org/apache/sling/karaf/tests/bootstrap/SlingQuickstartNosqlMongoIT.java
@@ -46,7 +46,6 @@ import org.ops4j.pax.exam.util.Filter;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
 import static org.ops4j.pax.exam.CoreOptions.mavenBundle;
-import static org.ops4j.pax.exam.CoreOptions.wrappedBundle;
 import static org.ops4j.pax.exam.karaf.options.KarafDistributionOption.editConfigurationFilePut;
 
 @RunWith(PaxExam.class)
@@ -84,10 +83,10 @@ public class SlingQuickstartNosqlMongoIT extends KarafTestSupport {
         return OptionUtils.combine(baseConfiguration(),
             editConfigurationFilePut("etc/org.apache.karaf.features.cfg", "featuresBoot", "(wrap)"),
             editConfigurationFilePut("etc/org.apache.sling.nosql.mongodb.resourceprovider.MongoDBNoSqlResourceProviderFactory.factory.config.config", "connectionString", connectionString),
-            wrappedBundle(mavenBundle().groupId("de.flapdoodle.embed").artifactId("de.flapdoodle.embed.mongo").versionAsInProject()),
-            wrappedBundle(mavenBundle().groupId("de.flapdoodle.embed").artifactId("de.flapdoodle.embed.process").versionAsInProject()),
-            wrappedBundle(mavenBundle().groupId("net.java.dev.jna").artifactId("jna").versionAsInProject()),
-            wrappedBundle(mavenBundle().groupId("net.java.dev.jna").artifactId("jna-platform").versionAsInProject()),
+            mavenBundle().groupId("de.flapdoodle.embed").artifactId("de.flapdoodle.embed.mongo").versionAsInProject(),
+            mavenBundle().groupId("de.flapdoodle.embed").artifactId("de.flapdoodle.embed.process").versionAsInProject(),
+            mavenBundle().groupId("net.java.dev.jna").artifactId("jna").versionAsInProject(),
+            mavenBundle().groupId("net.java.dev.jna").artifactId("jna-platform").versionAsInProject(),
             mavenBundle().groupId("org.apache.commons").artifactId("commons-compress").versionAsInProject(),
             addSlingFeatures("sling-quickstart-nosql-mongodb")
         );
diff --git a/src/test/java/org/apache/sling/karaf/tests/bootstrap/SlingQuickstartOakMongoIT.java b/src/test/java/org/apache/sling/karaf/tests/bootstrap/SlingQuickstartOakMongoIT.java
index 75dac9c..8c0d688 100644
--- a/src/test/java/org/apache/sling/karaf/tests/bootstrap/SlingQuickstartOakMongoIT.java
+++ b/src/test/java/org/apache/sling/karaf/tests/bootstrap/SlingQuickstartOakMongoIT.java
@@ -42,7 +42,6 @@ import org.osgi.framework.Bundle;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
 import static org.ops4j.pax.exam.CoreOptions.mavenBundle;
-import static org.ops4j.pax.exam.CoreOptions.wrappedBundle;
 import static org.ops4j.pax.exam.karaf.options.KarafDistributionOption.editConfigurationFilePut;
 
 @RunWith(PaxExam.class)
@@ -76,10 +75,10 @@ public class SlingQuickstartOakMongoIT extends AbstractSlingQuickstartOakTestSup
         return OptionUtils.combine(baseConfiguration(),
             editConfigurationFilePut("etc/org.apache.karaf.features.cfg", "featuresBoot", "(wrap)"),
             editConfigurationFilePut("etc/org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreService.config", "mongouri", mongoUri),
-            wrappedBundle(mavenBundle().groupId("de.flapdoodle.embed").artifactId("de.flapdoodle.embed.mongo").versionAsInProject()),
-            wrappedBundle(mavenBundle().groupId("de.flapdoodle.embed").artifactId("de.flapdoodle.embed.process").versionAsInProject()),
-            wrappedBundle(mavenBundle().groupId("net.java.dev.jna").artifactId("jna").versionAsInProject()),
-            wrappedBundle(mavenBundle().groupId("net.java.dev.jna").artifactId("jna-platform").versionAsInProject()),
+            mavenBundle().groupId("de.flapdoodle.embed").artifactId("de.flapdoodle.embed.mongo").versionAsInProject(),
+            mavenBundle().groupId("de.flapdoodle.embed").artifactId("de.flapdoodle.embed.process").versionAsInProject(),
+            mavenBundle().groupId("net.java.dev.jna").artifactId("jna").versionAsInProject(),
+            mavenBundle().groupId("net.java.dev.jna").artifactId("jna-platform").versionAsInProject(),
             mavenBundle().groupId("org.apache.commons").artifactId("commons-compress").versionAsInProject(),
             addSlingFeatures("sling-quickstart-oak-mongo")
         );