summaryrefslogtreecommitdiffstats
path: root/validation
diff options
context:
space:
mode:
authorKanagaraj Manickam k00365106 <kanagaraj.manickam@huawei.com>2017-08-30 12:28:29 +0530
committerKanagaraj Manickam k00365106 <kanagaraj.manickam@huawei.com>2017-08-30 12:29:17 +0530
commit6dd7fd8b3a96e15c121d6e4a5e7b5743afb1b99b (patch)
tree4ecb6a228867b3afa494b76ddaa0d7275d0fa648 /validation
parentaf8413e2b168187d7a1683b8b8bf9d1ab16fafbf (diff)
Add validation for all commands
Add new project to validate the commands and optionally add required test cases CLI-35 Change-Id: I8bd437c77421a590b0e60e4aec12cc99997451a1 Signed-off-by: Kanagaraj Manickam k00365106 <kanagaraj.manickam@huawei.com>
Diffstat (limited to 'validation')
-rw-r--r--validation/pom.xml38
-rw-r--r--validation/src/test/java/org/onap/cli/validation/OnapCliMainTest.java76
2 files changed, 114 insertions, 0 deletions
diff --git a/validation/pom.xml b/validation/pom.xml
index adeb49b8..dc42e2f7 100644
--- a/validation/pom.xml
+++ b/validation/pom.xml
@@ -37,5 +37,43 @@
<version>4.11</version>
<scope>test</scope>
</dependency>
+ <dependency>
+ <groupId>org.onap.cli</groupId>
+ <artifactId>cli-main</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.onap.cli</groupId>
+ <artifactId>cli-plugins-msb</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.onap.cli</groupId>
+ <artifactId>cli-plugins-sdc</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.onap.cli</groupId>
+ <artifactId>cli-plugins-aai</artifactId>
+ <version>${project.version}</version>
+ </dependency>
</dependencies>
+<!-- <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <version>2.9</version>
+ <configuration>
+ <useManifestOnlyJar>false</useManifestOnlyJar>
+ <useSystemClassLoader>false</useSystemClassLoader>
+ <additionalClasspathElements>
+ <additionalClasspathElement>
+ ${project.build.directory}/../../deployment/zip/target/deployunzip/lib/*.jar
+ </additionalClasspathElement>
+ </additionalClasspathElements>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build> -->
</project>
diff --git a/validation/src/test/java/org/onap/cli/validation/OnapCliMainTest.java b/validation/src/test/java/org/onap/cli/validation/OnapCliMainTest.java
new file mode 100644
index 00000000..f89e265d
--- /dev/null
+++ b/validation/src/test/java/org/onap/cli/validation/OnapCliMainTest.java
@@ -0,0 +1,76 @@
+/*
+ * Copyright 2017 Huawei Technologies Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.onap.cli.validation;
+
+import java.io.IOException;
+import java.util.Map;
+import java.util.Set;
+
+import org.aspectj.lang.annotation.After;
+import org.junit.Test;
+import org.onap.cli.fw.OnapCommandRegistrar;
+import org.onap.cli.fw.error.OnapCommandException;
+import org.onap.cli.fw.utils.ExternalSchema;
+import org.onap.cli.fw.utils.OnapCommandUtils;
+import org.onap.cli.main.OnapCli;
+
+public class OnapCliMainTest {
+
+ OnapCli cli = null;
+
+ /**
+ * Clean up.
+ */
+ @After(value = "")
+ public void cleanup() {
+ if (this.cli != null) {
+ if (cli.getExitCode() != 0) {
+ // Fail test case
+ }
+ }
+ }
+
+ private void handle(String[] args) {
+ cli = new OnapCli(args);
+ cli.handle();
+ }
+
+ @Test
+ public void validateCommands() throws IOException, OnapCommandException {
+ OnapCommandRegistrar.getRegistrar().setEnabledProductVersion("cli-1.0");
+ for (ExternalSchema sch : OnapCommandRegistrar.getRegistrar().listCommandInfo()) {
+ System.out.println(
+ "************************* validate '" + sch.getCmdName() + "' *******************************");
+ this.handle(new String[] { "schema-validate", "-l", sch.getSchemaName(), "-i"});
+ }
+ }
+
+ @Test
+ public void commandHelpTest() throws OnapCommandException {
+ for (String version: OnapCommandRegistrar.getRegistrar().getAvailableProductVersions()) {
+ OnapCommandRegistrar.getRegistrar().setEnabledProductVersion(version);
+ for (ExternalSchema sch : OnapCommandRegistrar.getRegistrar().listCommandInfo()) {
+ if (sch.getCmdVersion().equals(version)) {
+ System.out.println(
+ "************************* help '" + sch.getCmdName() + "' *******************************");
+ this.handle(new String[] { sch.getCmdName(), "-h"});
+ }
+ }
+ }
+ }
+
+ }