Merge branch 'KARAF-129' of https://github.com/cit-consulting/karaf
Project: http://git-wip-us.apache.org/repos/asf/karaf/repo Commit: http://git-wip-us.apache.org/repos/asf/karaf/commit/4d05d52a Tree: http://git-wip-us.apache.org/repos/asf/karaf/tree/4d05d52a Diff: http://git-wip-us.apache.org/repos/asf/karaf/diff/4d05d52a Branch: refs/heads/master Commit: 4d05d52a5a65c2cb3b270e97a25cc6ffb063ee5d Parents: 3a8c9e1 d1bd28f Author: Jean-Baptiste Onofré <[email protected]> Authored: Wed Feb 17 16:25:51 2016 +0100 Committer: Jean-Baptiste Onofré <[email protected]> Committed: Wed Feb 17 16:25:51 2016 +0100 ---------------------------------------------------------------------- .../features/command/InstallFeatureCommand.java | 4 +++ .../apache/karaf/features/FeaturesService.java | 3 +- .../internal/service/FeaturesServiceImpl.java | 37 +++++++++++++++----- .../org/apache/karaf/itests/FeatureTest.java | 12 +++++++ 4 files changed, 46 insertions(+), 10 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/karaf/blob/4d05d52a/itests/src/test/java/org/apache/karaf/itests/FeatureTest.java ---------------------------------------------------------------------- diff --cc itests/src/test/java/org/apache/karaf/itests/FeatureTest.java index b6b3e99,febfcb3..862cc2d --- a/itests/src/test/java/org/apache/karaf/itests/FeatureTest.java +++ b/itests/src/test/java/org/apache/karaf/itests/FeatureTest.java @@@ -66,13 -71,31 +66,25 @@@ public class FeatureTest extends KarafT } @Test + public void installWithUpgradeCommand() throws Exception { + final String featureToUpgrade = "transaction-api"; + final String oldVersion = "1.1.0"; + final String newVersion = "1.2.0"; + System.out.println(executeCommand("feature:install -v -r " + featureToUpgrade + "/" + oldVersion, new RolePrincipal("admin"))); + assertFeatureInstalled(featureToUpgrade, oldVersion); + System.out.println(executeCommand("feature:install -r --upgrade " + featureToUpgrade + "/" + newVersion, new RolePrincipal("admin"))); + assertFeatureNotInstalled(featureToUpgrade, oldVersion); + assertFeatureInstalled(featureToUpgrade, newVersion); + } + + @Test 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[] { "wrapper", true }, new String[]{ "java.lang.String", "boolean" }); - assertFeatureInstalled("wrapper"); - connection.invoke(name, "uninstallFeature", new Object[] { "wrapper", true }, new String[]{ "java.lang.String", "boolean" }); - assertFeatureNotInstalled("wrapper"); - } finally { - close(connector); - } + MBeanServer mbeanServer = ManagementFactory.getPlatformMBeanServer(); + ObjectName name = new ObjectName("org.apache.karaf:type=feature,name=root"); + mbeanServer.invoke(name, "installFeature", new Object[]{"wrapper", true}, new String[]{"java.lang.String", "boolean"}); + assertFeatureInstalled("wrapper"); + mbeanServer.invoke(name, "uninstallFeature", new Object[]{"wrapper", true}, new String[]{"java.lang.String", "boolean"}); + assertFeatureNotInstalled("wrapper"); } @Test
