diff options
Diffstat (limited to 'framework/src')
-rw-r--r-- | framework/src/main/resources/open-cli-schema/default_input_parameters.yaml | 9 | ||||
-rw-r--r-- | framework/src/test/java/org/onap/cli/fw/utils/OnapCommandUtilsTest.java | 41 |
2 files changed, 48 insertions, 2 deletions
diff --git a/framework/src/main/resources/open-cli-schema/default_input_parameters.yaml b/framework/src/main/resources/open-cli-schema/default_input_parameters.yaml index bb35ac26..1dbeedb4 100644 --- a/framework/src/main/resources/open-cli-schema/default_input_parameters.yaml +++ b/framework/src/main/resources/open-cli-schema/default_input_parameters.yaml @@ -42,4 +42,11 @@ parameters: short_option: t long_option: no-title default_value: false - is_default_param: true
\ No newline at end of file + is_default_param: true + - name: context + type: map + description: command context + short_option: D + long_option: context + is_default_param: true + is_optional: true
\ No newline at end of file diff --git a/framework/src/test/java/org/onap/cli/fw/utils/OnapCommandUtilsTest.java b/framework/src/test/java/org/onap/cli/fw/utils/OnapCommandUtilsTest.java index 11f97070..6b465c09 100644 --- a/framework/src/test/java/org/onap/cli/fw/utils/OnapCommandUtilsTest.java +++ b/framework/src/test/java/org/onap/cli/fw/utils/OnapCommandUtilsTest.java @@ -46,6 +46,7 @@ import java.util.HashMap; import java.util.HashSet; import java.util.List; import java.util.Map; +import java.util.Optional; import java.util.Set; import static org.junit.Assert.assertEquals; @@ -182,7 +183,45 @@ public class OnapCommandUtilsTest { } Map<String, OnapCommandParameter> map = OnapCommandUtils.getInputMap(cmd.getParameters()); - assertTrue(map.size() == 16); + assertTrue(map.size() == 17); + } + + @Test + public void contextParameterTest() throws OnapCommandException { + OnapCommand cmd = new OnapCommandSample(); + OnapCommandSchemaLoader.loadSchema(cmd, "sample-test-schema.yaml", true, false); + Optional<OnapCommandParameter> contextOpt = cmd.getParameters().stream() + .filter(e -> e.getName().equals("context")) + .findFirst(); + + if (contextOpt.isPresent()) { + OnapCommandParameter context = contextOpt.get(); + assertTrue(context.getDefaultValue() instanceof HashMap); + } else { + fail("context parameter is not available"); + } + } + + @Test + public void contextParameterSetAndGetTest() throws OnapCommandException { + OnapCommand cmd = new OnapCommandSample(); + OnapCommandSchemaLoader.loadSchema(cmd, "sample-test-schema.yaml", true, false); + Optional<OnapCommandParameter> contextOpt = cmd.getParameters().stream() + .filter(e -> e.getName().equals("context")) + .findFirst(); + + if (contextOpt.isPresent()) { + OnapCommandParameter context = contextOpt.get(); + HashMap<String, String> map = new HashMap(); + map.put("a", "b"); + context.setValue(map); + + map = (HashMap<String, String>) context.getValue(); + assertTrue(map.keySet().contains("a")); + assertTrue(map.values().contains("b")); + } else { + fail("context parameter is not available"); + } } @Test |