Author: bdelacretaz
Date: Mon Feb 29 13:10:27 2016
New Revision: 1732889
URL: http://svn.apache.org/viewvc?rev=1732889&view=rev
Log:
SLING-5569 - move Health Checks core integration tests to the core module
Added:
sling/trunk/bundles/extensions/healthcheck/core/src/test/java/org/apache/sling/hc/core/it/
sling/trunk/bundles/extensions/healthcheck/core/src/test/java/org/apache/sling/hc/core/it/AsyncHealthCheckIT.java
- copied, changed from r1732831,
sling/trunk/bundles/extensions/healthcheck/it/src/test/java/org/apache/sling/hc/it/core/AsyncHealthCheckTest.java
sling/trunk/bundles/extensions/healthcheck/core/src/test/java/org/apache/sling/hc/core/it/HealthCheckExecutorSelectionIT.java
- copied, changed from r1732831,
sling/trunk/bundles/extensions/healthcheck/it/src/test/java/org/apache/sling/hc/it/core/HealthCheckExecutorSelectionTest.java
sling/trunk/bundles/extensions/healthcheck/core/src/test/java/org/apache/sling/hc/core/it/HealthCheckFilterIT.java
- copied, changed from r1732831,
sling/trunk/bundles/extensions/healthcheck/it/src/test/java/org/apache/sling/hc/it/core/HealthCheckFilterTest.java
sling/trunk/bundles/extensions/healthcheck/core/src/test/java/org/apache/sling/hc/core/it/HealthCheckServletIT.java
- copied, changed from r1732831,
sling/trunk/bundles/extensions/healthcheck/it/src/test/java/org/apache/sling/hc/it/core/HealthCheckServletTest.java
sling/trunk/bundles/extensions/healthcheck/core/src/test/java/org/apache/sling/hc/core/it/JmxAdjustableStatusForTestingIT.java
- copied, changed from r1732840,
sling/trunk/bundles/extensions/healthcheck/it/src/test/java/org/apache/sling/hc/it/core/JmxAdjustableStatusForTestingTest.java
sling/trunk/bundles/extensions/healthcheck/core/src/test/java/org/apache/sling/hc/core/it/MockHttpService.java
- copied, changed from r1732831,
sling/trunk/bundles/extensions/healthcheck/it/src/test/java/org/apache/sling/hc/it/core/MockHttpService.java
sling/trunk/bundles/extensions/healthcheck/core/src/test/java/org/apache/sling/hc/core/it/U.java
- copied, changed from r1732831,
sling/trunk/bundles/extensions/healthcheck/it/src/test/java/org/apache/sling/hc/it/core/U.java
Removed:
sling/trunk/bundles/extensions/healthcheck/it/src/test/java/org/apache/sling/hc/it/core/AsyncHealthCheckTest.java
sling/trunk/bundles/extensions/healthcheck/it/src/test/java/org/apache/sling/hc/it/core/HealthCheckExecutorSelectionTest.java
sling/trunk/bundles/extensions/healthcheck/it/src/test/java/org/apache/sling/hc/it/core/HealthCheckFilterTest.java
sling/trunk/bundles/extensions/healthcheck/it/src/test/java/org/apache/sling/hc/it/core/HealthCheckServletTest.java
sling/trunk/bundles/extensions/healthcheck/it/src/test/java/org/apache/sling/hc/it/core/JmxAdjustableStatusForTestingTest.java
sling/trunk/bundles/extensions/healthcheck/it/src/test/java/org/apache/sling/hc/it/core/MockHttpService.java
Modified:
sling/trunk/bundles/extensions/healthcheck/core/pom.xml
Modified: sling/trunk/bundles/extensions/healthcheck/core/pom.xml
URL:
http://svn.apache.org/viewvc/sling/trunk/bundles/extensions/healthcheck/core/pom.xml?rev=1732889&r1=1732888&r2=1732889&view=diff
==============================================================================
--- sling/trunk/bundles/extensions/healthcheck/core/pom.xml (original)
+++ sling/trunk/bundles/extensions/healthcheck/core/pom.xml Mon Feb 29 13:10:27
2016
@@ -40,6 +40,13 @@
The Sling Health Check Core
</description>
+ <properties>
+ <pax-exam.version>4.6.0</pax-exam.version>
+ <pax-link.version>2.4.3</pax-link.version>
+
<org.ops4j.pax.logging.DefaultServiceLog.level>INFO</org.ops4j.pax.logging.DefaultServiceLog.level>
+ <felix.shell>false</felix.shell>
+ </properties>
+
<scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/sling/trunk/bundles/extensions/healthcheck/core</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/sling/trunk/bundles/extensions/healthcheck/core</developerConnection>
@@ -57,6 +64,41 @@
<artifactId>maven-bundle-plugin</artifactId>
<extensions>true</extensions>
</plugin>
+ <plugin>
+ <groupId>org.jacoco</groupId>
+ <artifactId>jacoco-maven-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>prepare-agent-integration</id>
+ <goals>
+ <goal>prepare-agent-integration</goal>
+ </goals>
+ <configuration>
+ <propertyName>coverage.command</propertyName>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-failsafe-plugin</artifactId>
+ <executions>
+ <execution>
+ <goals>
+ <goal>integration-test</goal>
+ <goal>verify</goal>
+ </goals>
+ </execution>
+ </executions>
+ <configuration>
+ <systemProperties>
+
<org.ops4j.pax.logging.DefaultServiceLog.level>${org.ops4j.pax.logging.DefaultServiceLog.level}</org.ops4j.pax.logging.DefaultServiceLog.level>
+
<sling.hc.core.version>${project.version}</sling.hc.core.version>
+ <felix.shell>${felix.shell}</felix.shell>
+ <coverage.command>${coverage.command}</coverage.command>
+ </systemProperties>
+ </configuration>
+ </plugin>
</plugins>
</build>
@@ -102,6 +144,48 @@
<scope>test</scope>
</dependency>
<dependency>
+ <groupId>org.ops4j.pax.exam</groupId>
+ <artifactId>pax-exam-container-forked</artifactId>
+ <version>${pax-exam.version}</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.ops4j.pax.exam</groupId>
+ <artifactId>pax-exam-junit4</artifactId>
+ <version>${pax-exam.version}</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.ops4j.pax.exam</groupId>
+ <artifactId>pax-exam-link-mvn</artifactId>
+ <version>${pax-exam.version}</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.ops4j.pax.url</groupId>
+ <artifactId>pax-url-aether</artifactId>
+ <version>${pax-link.version}</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.ops4j.pax.url</groupId>
+ <artifactId>pax-url-wrap</artifactId>
+ <version>${pax-link.version}</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.geronimo.specs</groupId>
+ <artifactId>geronimo-atinject_1.0_spec</artifactId>
+ <version>1.0</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>org.apache.felix.framework</artifactId>
+ <version>5.4.0</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
<groupId>org.apache.sling</groupId>
<artifactId>org.apache.sling.commons.osgi</artifactId>
<version>2.2.0</version>
Copied:
sling/trunk/bundles/extensions/healthcheck/core/src/test/java/org/apache/sling/hc/core/it/AsyncHealthCheckIT.java
(from r1732831,
sling/trunk/bundles/extensions/healthcheck/it/src/test/java/org/apache/sling/hc/it/core/AsyncHealthCheckTest.java)
URL:
http://svn.apache.org/viewvc/sling/trunk/bundles/extensions/healthcheck/core/src/test/java/org/apache/sling/hc/core/it/AsyncHealthCheckIT.java?p2=sling/trunk/bundles/extensions/healthcheck/core/src/test/java/org/apache/sling/hc/core/it/AsyncHealthCheckIT.java&p1=sling/trunk/bundles/extensions/healthcheck/it/src/test/java/org/apache/sling/hc/it/core/AsyncHealthCheckTest.java&r1=1732831&r2=1732889&rev=1732889&view=diff
==============================================================================
---
sling/trunk/bundles/extensions/healthcheck/it/src/test/java/org/apache/sling/hc/it/core/AsyncHealthCheckTest.java
(original)
+++
sling/trunk/bundles/extensions/healthcheck/core/src/test/java/org/apache/sling/hc/core/it/AsyncHealthCheckIT.java
Mon Feb 29 13:10:27 2016
@@ -15,7 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations under the License.
*/
-package org.apache.sling.hc.it.core;
+package org.apache.sling.hc.core.it;
import static org.junit.Assert.assertTrue;
@@ -38,7 +38,7 @@ import org.osgi.framework.BundleContext;
import org.osgi.framework.ServiceRegistration;
@RunWith(PaxExam.class)
-public class AsyncHealthCheckTest {
+public class AsyncHealthCheckIT {
@Inject
private HealthCheckExecutor executor;
@@ -70,7 +70,7 @@ public class AsyncHealthCheckTest {
props.put(HealthCheck.ASYNC_CRON_EXPRESSION, "*/1 * * * * ?");
@SuppressWarnings("rawtypes")
- final ServiceRegistration reg =
bundleContext.registerService(HealthCheck.class, hc, props);
+ final ServiceRegistration reg =
bundleContext.registerService(HealthCheck.class.getName(), hc, props);
try {
// Wait for HC to be registered
Copied:
sling/trunk/bundles/extensions/healthcheck/core/src/test/java/org/apache/sling/hc/core/it/HealthCheckExecutorSelectionIT.java
(from r1732831,
sling/trunk/bundles/extensions/healthcheck/it/src/test/java/org/apache/sling/hc/it/core/HealthCheckExecutorSelectionTest.java)
URL:
http://svn.apache.org/viewvc/sling/trunk/bundles/extensions/healthcheck/core/src/test/java/org/apache/sling/hc/core/it/HealthCheckExecutorSelectionIT.java?p2=sling/trunk/bundles/extensions/healthcheck/core/src/test/java/org/apache/sling/hc/core/it/HealthCheckExecutorSelectionIT.java&p1=sling/trunk/bundles/extensions/healthcheck/it/src/test/java/org/apache/sling/hc/it/core/HealthCheckExecutorSelectionTest.java&r1=1732831&r2=1732889&rev=1732889&view=diff
==============================================================================
---
sling/trunk/bundles/extensions/healthcheck/it/src/test/java/org/apache/sling/hc/it/core/HealthCheckExecutorSelectionTest.java
(original)
+++
sling/trunk/bundles/extensions/healthcheck/core/src/test/java/org/apache/sling/hc/core/it/HealthCheckExecutorSelectionIT.java
Mon Feb 29 13:10:27 2016
@@ -15,7 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations under the License.
*/
-package org.apache.sling.hc.it.core;
+package org.apache.sling.hc.core.it;
import java.util.ArrayList;
import java.util.Dictionary;
@@ -42,7 +42,7 @@ import org.osgi.framework.ServiceRegistr
/** Test the HealthCheckExecutor selection mechanism */
@RunWith(PaxExam.class)
-public class HealthCheckExecutorSelectionTest {
+public class HealthCheckExecutorSelectionIT {
@Inject
private HealthCheckExecutor executor;
@@ -75,7 +75,7 @@ public class HealthCheckExecutorSelectio
props.put(HealthCheck.NAME, "name_" + tags[0]);
props.put(HealthCheck.TAGS, tags);
- regs.add(bundleContext.registerService(HealthCheck.class, hc, props));
+ regs.add(bundleContext.registerService(HealthCheck.class.getName(),
hc, props));
}
@BeforeClass
Copied:
sling/trunk/bundles/extensions/healthcheck/core/src/test/java/org/apache/sling/hc/core/it/HealthCheckFilterIT.java
(from r1732831,
sling/trunk/bundles/extensions/healthcheck/it/src/test/java/org/apache/sling/hc/it/core/HealthCheckFilterTest.java)
URL:
http://svn.apache.org/viewvc/sling/trunk/bundles/extensions/healthcheck/core/src/test/java/org/apache/sling/hc/core/it/HealthCheckFilterIT.java?p2=sling/trunk/bundles/extensions/healthcheck/core/src/test/java/org/apache/sling/hc/core/it/HealthCheckFilterIT.java&p1=sling/trunk/bundles/extensions/healthcheck/it/src/test/java/org/apache/sling/hc/it/core/HealthCheckFilterTest.java&r1=1732831&r2=1732889&rev=1732889&view=diff
==============================================================================
---
sling/trunk/bundles/extensions/healthcheck/it/src/test/java/org/apache/sling/hc/it/core/HealthCheckFilterTest.java
(original)
+++
sling/trunk/bundles/extensions/healthcheck/core/src/test/java/org/apache/sling/hc/core/it/HealthCheckFilterIT.java
Mon Feb 29 13:10:27 2016
@@ -15,7 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations under the License.
*/
-package org.apache.sling.hc.it.core;
+package org.apache.sling.hc.core.it;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNotNull;
@@ -46,7 +46,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@RunWith(PaxExam.class)
-public class HealthCheckFilterTest {
+public class HealthCheckFilterIT {
private final Logger log = LoggerFactory.getLogger(getClass());
@@ -61,7 +61,7 @@ public class HealthCheckFilterTest {
class TestHealthCheck implements HealthCheck {
private final int id;
- private final ServiceRegistration<?> reg;
+ private final ServiceRegistration reg;
final String[] tags;
TestHealthCheck(String... tags) {
Copied:
sling/trunk/bundles/extensions/healthcheck/core/src/test/java/org/apache/sling/hc/core/it/HealthCheckServletIT.java
(from r1732831,
sling/trunk/bundles/extensions/healthcheck/it/src/test/java/org/apache/sling/hc/it/core/HealthCheckServletTest.java)
URL:
http://svn.apache.org/viewvc/sling/trunk/bundles/extensions/healthcheck/core/src/test/java/org/apache/sling/hc/core/it/HealthCheckServletIT.java?p2=sling/trunk/bundles/extensions/healthcheck/core/src/test/java/org/apache/sling/hc/core/it/HealthCheckServletIT.java&p1=sling/trunk/bundles/extensions/healthcheck/it/src/test/java/org/apache/sling/hc/it/core/HealthCheckServletTest.java&r1=1732831&r2=1732889&rev=1732889&view=diff
==============================================================================
---
sling/trunk/bundles/extensions/healthcheck/it/src/test/java/org/apache/sling/hc/it/core/HealthCheckServletTest.java
(original)
+++
sling/trunk/bundles/extensions/healthcheck/core/src/test/java/org/apache/sling/hc/core/it/HealthCheckServletIT.java
Mon Feb 29 13:10:27 2016
@@ -15,7 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations under the License.
*/
-package org.apache.sling.hc.it.core;
+package org.apache.sling.hc.core.it;
import static org.junit.Assert.assertEquals;
@@ -45,7 +45,7 @@ import org.osgi.service.http.HttpService
* after creating the corresponding config
*/
@RunWith(PaxExam.class)
-public class HealthCheckServletTest {
+public class HealthCheckServletIT {
@Inject
private ConfigurationAdmin configAdmin;
@@ -62,7 +62,7 @@ public class HealthCheckServletTest {
}
private int countServletServices(String packageNamePrefix) throws
InvalidSyntaxException {
- final ServiceReference<?> [] refs =
bundleContext.getServiceReferences("javax.servlet.Servlet", null);
+ final ServiceReference [] refs =
bundleContext.getServiceReferences("javax.servlet.Servlet", null);
int count = 0;
if(refs != null) {
for(ServiceReference ref : refs) {
@@ -79,7 +79,7 @@ public class HealthCheckServletTest {
@Before
public void setup() {
httpService = new MockHttpService();
- reg = bundleContext.registerService(HttpService.class, httpService,
null);
+ reg = bundleContext.registerService(HttpService.class.getName(),
httpService, null);
}
@After
Copied:
sling/trunk/bundles/extensions/healthcheck/core/src/test/java/org/apache/sling/hc/core/it/JmxAdjustableStatusForTestingIT.java
(from r1732840,
sling/trunk/bundles/extensions/healthcheck/it/src/test/java/org/apache/sling/hc/it/core/JmxAdjustableStatusForTestingTest.java)
URL:
http://svn.apache.org/viewvc/sling/trunk/bundles/extensions/healthcheck/core/src/test/java/org/apache/sling/hc/core/it/JmxAdjustableStatusForTestingIT.java?p2=sling/trunk/bundles/extensions/healthcheck/core/src/test/java/org/apache/sling/hc/core/it/JmxAdjustableStatusForTestingIT.java&p1=sling/trunk/bundles/extensions/healthcheck/it/src/test/java/org/apache/sling/hc/it/core/JmxAdjustableStatusForTestingTest.java&r1=1732840&r2=1732889&rev=1732889&view=diff
==============================================================================
---
sling/trunk/bundles/extensions/healthcheck/it/src/test/java/org/apache/sling/hc/it/core/JmxAdjustableStatusForTestingTest.java
(original)
+++
sling/trunk/bundles/extensions/healthcheck/core/src/test/java/org/apache/sling/hc/core/it/JmxAdjustableStatusForTestingIT.java
Mon Feb 29 13:10:27 2016
@@ -15,7 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations under the License.
*/
-package org.apache.sling.hc.it.core;
+package org.apache.sling.hc.core.it;
import static org.junit.Assert.assertEquals;
@@ -47,7 +47,7 @@ import org.osgi.framework.ServiceRegistr
/** Test jmx-adjustable status for testing HC. */
@RunWith(PaxExam.class)
-public class JmxAdjustableStatusForTestingTest {
+public class JmxAdjustableStatusForTestingIT {
@Inject
private HealthCheckExecutor executor;
@@ -131,12 +131,12 @@ public class JmxAdjustableStatusForTesti
props.put(HealthCheck.NAME, "name_" + tags[0]);
props.put(HealthCheck.TAGS, tags);
- regs.add(bundleContext.registerService(HealthCheck.class, hc,
props));
+
regs.add(bundleContext.registerService(HealthCheck.class.getName(), hc, props));
}
private void invokeMBean(String operation, Object[] args, String[]
signature) throws Exception {
- ServiceReference<?>[] serviceReference =
bundleContext.getServiceReferences(DynamicMBean.class.getName(),
+ ServiceReference[] serviceReference =
bundleContext.getServiceReferences(DynamicMBean.class.getName(),
"(jmx.objectname=org.apache.sling.healthcheck:type=AdjustableHealthCheckForTesting)");
DynamicMBean mBean = (DynamicMBean)
bundleContext.getService(serviceReference[0]);
mBean.invoke(operation, args, signature);
Copied:
sling/trunk/bundles/extensions/healthcheck/core/src/test/java/org/apache/sling/hc/core/it/MockHttpService.java
(from r1732831,
sling/trunk/bundles/extensions/healthcheck/it/src/test/java/org/apache/sling/hc/it/core/MockHttpService.java)
URL:
http://svn.apache.org/viewvc/sling/trunk/bundles/extensions/healthcheck/core/src/test/java/org/apache/sling/hc/core/it/MockHttpService.java?p2=sling/trunk/bundles/extensions/healthcheck/core/src/test/java/org/apache/sling/hc/core/it/MockHttpService.java&p1=sling/trunk/bundles/extensions/healthcheck/it/src/test/java/org/apache/sling/hc/it/core/MockHttpService.java&r1=1732831&r2=1732889&rev=1732889&view=diff
==============================================================================
---
sling/trunk/bundles/extensions/healthcheck/it/src/test/java/org/apache/sling/hc/it/core/MockHttpService.java
(original)
+++
sling/trunk/bundles/extensions/healthcheck/core/src/test/java/org/apache/sling/hc/core/it/MockHttpService.java
Mon Feb 29 13:10:27 2016
@@ -15,7 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations under the License.
*/
-package org.apache.sling.hc.it.core;
+package org.apache.sling.hc.core.it;
import java.util.ArrayList;
import java.util.Collections;
Copied:
sling/trunk/bundles/extensions/healthcheck/core/src/test/java/org/apache/sling/hc/core/it/U.java
(from r1732831,
sling/trunk/bundles/extensions/healthcheck/it/src/test/java/org/apache/sling/hc/it/core/U.java)
URL:
http://svn.apache.org/viewvc/sling/trunk/bundles/extensions/healthcheck/core/src/test/java/org/apache/sling/hc/core/it/U.java?p2=sling/trunk/bundles/extensions/healthcheck/core/src/test/java/org/apache/sling/hc/core/it/U.java&p1=sling/trunk/bundles/extensions/healthcheck/it/src/test/java/org/apache/sling/hc/it/core/U.java&r1=1732831&r2=1732889&rev=1732889&view=diff
==============================================================================
---
sling/trunk/bundles/extensions/healthcheck/it/src/test/java/org/apache/sling/hc/it/core/U.java
(original)
+++
sling/trunk/bundles/extensions/healthcheck/core/src/test/java/org/apache/sling/hc/core/it/U.java
Mon Feb 29 13:10:27 2016
@@ -15,7 +15,7 @@
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations under the License.
*/
-package org.apache.sling.hc.it.core;
+package org.apache.sling.hc.core.it;
import static org.junit.Assert.fail;
import static org.ops4j.pax.exam.CoreOptions.junitBundles;
@@ -31,6 +31,7 @@ import java.util.List;
import org.apache.sling.hc.api.execution.HealthCheckExecutionOptions;
import org.apache.sling.hc.api.execution.HealthCheckExecutionResult;
import org.apache.sling.hc.api.execution.HealthCheckExecutor;
+import org.ops4j.pax.exam.CoreOptions;
import org.ops4j.pax.exam.Option;
/** Test utilities */
@@ -62,15 +63,21 @@ public class U {
static Option[] config() {
final String coreVersion = System.getProperty("sling.hc.core.version");
- final String samplesVersion =
System.getProperty("sling.hc.samples.version");
final String localRepo = System.getProperty("maven.repo.local", "");
final boolean felixShell =
"true".equals(System.getProperty("felix.shell", "false"));
+
+ // As we're using the forked pax exam container, we need to add a VM
+ // option to activate the jacoco test coverage agent.
+ final String coverageCommand = System.getProperty("coverage.command");
return options(
when(localRepo.length() > 0).useOptions(
systemProperty("org.ops4j.pax.url.mvn.localRepository").value(localRepo)
),
junitBundles(),
+ when(coverageCommand != null && coverageCommand.trim().length() >
0).useOptions(
+ CoreOptions.vmOption(coverageCommand)
+ ),
when(felixShell).useOptions(
provision(
mavenBundle("org.apache.felix",
"org.apache.felix.gogo.shell", "0.10.0"),
@@ -84,7 +91,6 @@ public class U {
mavenBundle("org.apache.felix",
"org.apache.felix.configadmin", "1.8.8"),
mavenBundle("org.apache.felix",
"org.apache.felix.http.servlet-api", "1.1.0"),
mavenBundle("org.apache.sling",
"org.apache.sling.hc.core", coreVersion),
- mavenBundle("org.apache.sling",
"org.apache.sling.hc.samples", samplesVersion),
mavenBundle("org.apache.sling",
"org.apache.sling.commons.osgi", "2.2.0"),
mavenBundle("org.apache.sling",
"org.apache.sling.commons.json", "2.0.10"),
mavenBundle("org.apache.sling",
"org.apache.sling.jcr.jcr-wrapper", "2.0.0"),