You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@karaf.apache.org by jb...@apache.org on 2012/09/10 15:34:41 UTC
svn commit: r1382831 - in
/karaf/trunk/itests/src/test/java/org/apache/karaf/itests: FeatureTest.java
KarafFeatureCommandsTest.java
Author: jbonofre
Date: Mon Sep 10 13:34:40 2012
New Revision: 1382831
URL: http://svn.apache.org/viewvc?rev=1382831&view=rev
Log:
[KARAF-1798] Add feature management itest
Added:
karaf/trunk/itests/src/test/java/org/apache/karaf/itests/FeatureTest.java
- copied, changed from r1382820, karaf/trunk/itests/src/test/java/org/apache/karaf/itests/KarafFeatureCommandsTest.java
Removed:
karaf/trunk/itests/src/test/java/org/apache/karaf/itests/KarafFeatureCommandsTest.java
Copied: karaf/trunk/itests/src/test/java/org/apache/karaf/itests/FeatureTest.java (from r1382820, karaf/trunk/itests/src/test/java/org/apache/karaf/itests/KarafFeatureCommandsTest.java)
URL: http://svn.apache.org/viewvc/karaf/trunk/itests/src/test/java/org/apache/karaf/itests/FeatureTest.java?p2=karaf/trunk/itests/src/test/java/org/apache/karaf/itests/FeatureTest.java&p1=karaf/trunk/itests/src/test/java/org/apache/karaf/itests/KarafFeatureCommandsTest.java&r1=1382820&r2=1382831&rev=1382831&view=diff
==============================================================================
--- karaf/trunk/itests/src/test/java/org/apache/karaf/itests/KarafFeatureCommandsTest.java (original)
+++ karaf/trunk/itests/src/test/java/org/apache/karaf/itests/FeatureTest.java Mon Sep 10 13:34:40 2012
@@ -19,15 +19,21 @@ import org.ops4j.pax.exam.junit.ExamReac
import org.ops4j.pax.exam.junit.JUnit4TestRunner;
import org.ops4j.pax.exam.spi.reactors.AllConfinedStagedReactorFactory;
+import javax.management.MBeanServerConnection;
+import javax.management.ObjectName;
+import javax.management.openmbean.TabularData;
+import javax.management.openmbean.TabularDataSupport;
+import javax.management.remote.JMXConnector;
+
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
@RunWith(JUnit4TestRunner.class)
@ExamReactorStrategy(AllConfinedStagedReactorFactory.class)
-public class KarafFeatureCommandsTest extends KarafTestSupport {
+public class FeatureTest extends KarafTestSupport {
@Test
- public void testBootFeatures() throws Exception {
+ public void bootFeatures() throws Exception {
String featureListOutput = executeCommand("feature:list -i");
System.out.println(featureListOutput);
assertTrue(featureListOutput.contains("standard"));
@@ -40,7 +46,7 @@ public class KarafFeatureCommandsTest ex
}
@Test
- public void testFeatureListCommand() throws Exception {
+ public void listCommand() throws Exception {
String featureListOutput = executeCommand("feature:list");
System.out.println(featureListOutput);
assertFalse(featureListOutput.isEmpty());
@@ -50,7 +56,22 @@ public class KarafFeatureCommandsTest ex
}
@Test
- public void testFeatureInstallUninstallCommand() throws Exception {
+ public void listViaMBean() throws Exception {
+ JMXConnector connector = null;
+ try {
+ connector = this.getJMXConnector();
+ MBeanServerConnection connection = connector.getMBeanServerConnection();
+ ObjectName name = new ObjectName("org.apache.karaf:type=feature,name=root");
+ TabularData features = (TabularData) connection.getAttribute(name, "Features");
+ assertTrue(features.size() > 0);
+ } finally {
+ if (connector != null)
+ connector.close();
+ }
+ }
+
+ @Test
+ public void installUninstallCommand() throws Exception {
String featureInstallOutput = executeCommand("feature:install -v eventadmin");
System.out.println(featureInstallOutput);
assertFalse(featureInstallOutput.isEmpty());
@@ -64,7 +85,22 @@ public class KarafFeatureCommandsTest ex
}
@Test
- public void testRepoAddRemoveCommand() throws Exception {
+ public void installUninstallViaMBean() throws Exception {
+ JMXConnector connector = null;
+ try {
+ connector = this.getJMXConnector();
+ MBeanServerConnection connection = connector.getMBeanServerConnection();
+ ObjectName name = new ObjectName("org.apache.karaf:type=feature,name=root");
+ connection.invoke(name, "installFeature", new Object[] { "eventadmin" }, new String[]{ "java.lang.String" });
+ connection.invoke(name, "uninstallFeature", new Object[] { "eventadmin" }, new String[]{ "java.lang.String" });
+ } finally {
+ if (connector != null)
+ connector.close();
+ }
+ }
+
+ @Test
+ public void repoAddRemoveCommand() throws Exception {
System.out.println(executeCommand("feature:repo-add mvn:org.apache.karaf.cellar/apache-karaf-cellar/2.2.4/xml/features"));
String repoListOutput = executeCommand("feature:repo-list");
System.out.println(repoListOutput);
@@ -75,4 +111,19 @@ public class KarafFeatureCommandsTest ex
assertFalse(repoListOutput.contains("apache-karaf-cellar"));
}
+ @Test
+ public void repoAddRemoveViaMBean() throws Exception {
+ JMXConnector connector = null;
+ try {
+ connector = this.getJMXConnector();
+ MBeanServerConnection connection = connector.getMBeanServerConnection();
+ ObjectName name = new ObjectName("org.apache.karaf:type=feature,name=root");
+ connection.invoke(name, "addRepository", new Object[] { "mvn:org.apache.karaf.cellar/apache-karaf-cellar/2.2.4/xml/features" }, new String[]{ "java.lang.String" });
+ connection.invoke(name, "removeRepository", new Object[] { "mvn:org.apache.karaf.cellar/apache-karaf-cellar/2.2.4/xml/features" }, new String[]{ "java.lang.String" });
+ } finally {
+ if (connector != null)
+ connector.close();
+ }
+ }
+
}