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

jbonofre pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/karaf.git


The following commit(s) were added to refs/heads/main by this push:
     new dd91b44cc4 [KARAF-5194] add state column to feature:version-list 
command
     new e9c65775f0 Merge pull request #1625 from awrb/KARAF-5194
dd91b44cc4 is described below

commit dd91b44cc48cad06328d26fd004c6c5f009b7fae
Author: Aleksy Wróblewski <aleksy.wroblew...@bbbit.io>
AuthorDate: Wed Sep 21 20:45:05 2022 +0200

    [KARAF-5194] add state column to feature:version-list command
---
 .../features/command/ListFeatureVersionsCommand.java      |  4 ++--
 .../test/java/org/apache/karaf/itests/FeatureTest.java    | 15 +++++++++++++++
 2 files changed, 17 insertions(+), 2 deletions(-)

diff --git 
a/features/command/src/main/java/org/apache/karaf/features/command/ListFeatureVersionsCommand.java
 
b/features/command/src/main/java/org/apache/karaf/features/command/ListFeatureVersionsCommand.java
index 4d69a68c0d..a03384560f 100644
--- 
a/features/command/src/main/java/org/apache/karaf/features/command/ListFeatureVersionsCommand.java
+++ 
b/features/command/src/main/java/org/apache/karaf/features/command/ListFeatureVersionsCommand.java
@@ -45,13 +45,13 @@ public class ListFeatureVersionsCommand extends 
FeaturesCommandSupport {
         table.column("Version");
         table.column("Repository");
         table.column("Repository URL");
+        table.column("State");
         table.emptyTableText("No versions available for features '" + feature 
+ "'");
              
         for (Repository r : Arrays.asList(admin.listRepositories())) {
             for (Feature f : r.getFeatures()) {
-
                 if (f.getName().equals(feature)) {
-                    table.addRow().addContent(f.getVersion(), r.getName(), 
r.getURI());
+                    table.addRow().addContent(f.getVersion(), r.getName(), 
r.getURI(), admin.getState(f.getId()));
                 }
             }
         }
diff --git a/itests/test/src/test/java/org/apache/karaf/itests/FeatureTest.java 
b/itests/test/src/test/java/org/apache/karaf/itests/FeatureTest.java
index 977433c8c0..eb2b69ce87 100644
--- a/itests/test/src/test/java/org/apache/karaf/itests/FeatureTest.java
+++ b/itests/test/src/test/java/org/apache/karaf/itests/FeatureTest.java
@@ -81,6 +81,21 @@ public class FeatureTest extends BaseTest {
         assertTrue(features.size() > 0);
     }
 
+    @Test
+    public void versionListCommand() {
+        executeCommand("feature:install wrapper", new RolePrincipal("admin"));
+        String featureVersionListOutput = executeCommand("feature:version-list 
wrapper");
+        String[] lines = featureVersionListOutput.split("\\R");
+        String headers = lines[0];
+        assertContains("Version", headers);
+        assertContains("Repository", headers);
+        assertContains("Repository URL", headers);
+        assertContains("State", headers);
+        // lines[1] separates headers and rows
+        String row = lines[2];
+        assertTrue(row.matches("(.*|){3}Started"));
+    }
+
     @Test
     public void installUninstallCommand() throws Exception {
         System.out.println(executeCommand("feature:install -v -r wrapper", new 
RolePrincipal("admin")));

Reply via email to