Added unit tests for SpringCLITool 35/89635/2
authorPiotr Borelowski <p.borelowski@partner.samsung.com>
Mon, 10 Jun 2019 11:29:13 +0000 (13:29 +0200)
committerOren Kleks <orenkle@amdocs.com>
Thu, 13 Jun 2019 06:37:57 +0000 (06:37 +0000)
Improved the unit test coverage in the package
org.openecomp.sdc.asdctool.cli

Issue-ID: SDC-2327
Signed-off-by: Piotr Borelowski <p.borelowski@partner.samsung.com>
Change-Id: Ie5b262587ae704952eb75f8f4008f4d321a4acbd

asdctool/src/test/java/org/openecomp/sdc/asdctool/cli/SpringCLIToolTest.java [new file with mode: 0644]
asdctool/test-dir/configuration.yaml [new file with mode: 0644]

diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/cli/SpringCLIToolTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/cli/SpringCLIToolTest.java
new file mode 100644 (file)
index 0000000..c91a694
--- /dev/null
@@ -0,0 +1,61 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP SDC
+ * ================================================================================
+ * Copyright (C) 2019 Samsung. All rights reserved.
+ * ================================================================================
+ * 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.
+ * ============LICENSE_END============================================
+ * ===================================================================
+ */
+
+package org.openecomp.sdc.asdctool.cli;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertTrue;
+
+import org.junit.Test;
+import org.springframework.context.annotation.Configuration;
+
+public class SpringCLIToolTest {
+
+    private static final String DIR_NAME = "test-dir";
+
+    private SpringCLITool impl = new SpringCLIToolImplTest();
+
+    @Test
+    public void testInit() {
+        // when
+        final CLIToolData init = impl.init(new String[]{"-c", DIR_NAME});
+
+        // then
+        assertEquals(DIR_NAME, init.getCommandLine().getOptionValue("c"));
+        assertTrue(init.getSpringApplicationContext().containsBean("config"));
+    }
+
+    private static class SpringCLIToolImplTest extends SpringCLITool {
+        @Override
+        protected Class<?> getSpringConfigurationClass() {
+            return Config.class;
+        }
+
+        @Override
+        protected String commandName() {
+            return "run";
+        }
+    }
+}
+
+@Configuration
+class Config {
+}
diff --git a/asdctool/test-dir/configuration.yaml b/asdctool/test-dir/configuration.yaml
new file mode 100644 (file)
index 0000000..339d41a
--- /dev/null
@@ -0,0 +1,64 @@
+identificationHeaderFields:
+  - HTTP_IV_USER
+
+# catalog backend hostname
+beFqdn: localhost
+# sdccatalog.com
+
+appVersion: 2.3.77
+
+# catalog backend http port
+beHttpPort: 8080
+
+# catalog backend http context
+beContext: /sdc/rest/config/get
+
+# catalog backend protocol
+beProtocol: http
+
+# catalog backend ssl port
+beSslPort: 8443
+
+version: 1.1.0
+released: 2012-11-30
+toscaConformanceLevel: 8.0
+minToscaConformanceLevel: 3.0
+
+titanCfgFile: /home/vagrant/catalog-be/config/catalog-be/titan.properties
+titanInMemoryGraph: false
+titanLockTimeout: 1800
+
+# The interval to try and reconnect to titan DB when it is down during ASDC startup:
+titanReconnectIntervalInSeconds: 3
+
+# The read timeout towards Titan DB when health check is invoked:
+titanHealthCheckReadTimeout: 1
+
+# The interval to try and reconnect to Elasticsearch when it is down during ASDC startup:
+esReconnectIntervalInSeconds: 3
+uebHealthCheckReconnectIntervalInSeconds: 15
+uebHealthCheckReadTimeout: 4
+
+# Protocols
+protocols:
+  - http
+  - https
+
+# Default imports
+defaultImports:
+  - nodes:
+      file: nodes.yml
+  - datatypes:
+      file: data.yml
+  - capabilities:
+      file: capabilities.yml
+  - relationships:
+      file: relationships.yml
+  - groups:
+      file: groups.yml
+  - policies:
+      file: policies.yml
+
+# Users
+users:
+  tom: passwd