Add more test cases for sms-client 63/44263/3
authorManjunath Ranganathaiah <manjunath.ranganathaiah@intel.com>
Mon, 23 Apr 2018 22:24:03 +0000 (15:24 -0700)
committerManjunath Ranganathaiah <manjunath.ranganathaiah@intel.com>
Tue, 24 Apr 2018 13:29:26 +0000 (13:29 +0000)
This patch adds unit test cases for:
 Storing and deleting secrets.
 Listing the secret names.
 Getting the secret details.

Change-Id: Ida8d08202305be818926993d676c778605e130f3
Issue-ID: AAF-183
Signed-off-by: Manjunath Ranganathaiah <manjunath.ranganathaiah@intel.com>
sms-client/src/test/java/org/onap/aaf/sms/ClientTestRunner.java
sms-client/src/test/java/org/onap/aaf/sms/SmsDeleteSecretTest.java [new file with mode: 0644]
sms-client/src/test/java/org/onap/aaf/sms/SmsGetSecretNamesTest.java [new file with mode: 0644]
sms-client/src/test/java/org/onap/aaf/sms/SmsGetSecretTest.java [new file with mode: 0644]
sms-client/src/test/java/org/onap/aaf/sms/SmsStoreSecretTest.java [new file with mode: 0644]
sms-client/src/test/java/org/onap/aaf/sms/SmsTest.java

index d209b2c..5ddaa7d 100644 (file)
@@ -24,7 +24,11 @@ public class ClientTestRunner {
     public static void main(String[] args) {
         Result r = JUnitCore.runClasses(
             SmsCreateDomainTest.class,
-            SmsDeleteDomainTest.class
+            SmsDeleteDomainTest.class,
+            SmsStoreSecretTest.class,
+            SmsGetSecretNamesTest.class,
+            SmsGetSecretTest.class,
+            SmsDeleteSecretTest.class
         );
 
         for( Failure f : r.getFailures()) {
diff --git a/sms-client/src/test/java/org/onap/aaf/sms/SmsDeleteSecretTest.java b/sms-client/src/test/java/org/onap/aaf/sms/SmsDeleteSecretTest.java
new file mode 100644 (file)
index 0000000..93b3a67
--- /dev/null
@@ -0,0 +1,43 @@
+/*
+ * Copyright 2018 Intel Corporation, Inc
+ *
+ * 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.aaf.sms;
+
+import junit.framework.*;
+import org.onap.aaf.sms.SmsClient;
+import org.onap.aaf.sms.SmsResponse;
+import org.onap.aaf.sms.SmsSecureSocket;
+import javax.net.ssl.SSLSocketFactory;
+import java.util.HashMap;
+import java.util.Map;
+
+public class SmsDeleteSecretTest extends TestCase {
+
+    public void testSmsDeleteSecret() {
+        try {
+            SmsTest sms = new SmsTest("otconap4.sc.intel.com", 10443, null);
+            SmsResponse resp = sms.deleteSecret("onap.new.test.sms0", "testsec1");
+            assertTrue(resp.getSuccess());
+            if ( resp.getSuccess() ) {
+                assertEquals(204, resp.getResponseCode());
+            } else {
+                fail("Unexpected response while deleting secret");
+            }
+        } catch ( Exception e ) {
+            fail("Exception while deleting secret");
+        }
+    }
+}
diff --git a/sms-client/src/test/java/org/onap/aaf/sms/SmsGetSecretNamesTest.java b/sms-client/src/test/java/org/onap/aaf/sms/SmsGetSecretNamesTest.java
new file mode 100644 (file)
index 0000000..bd9dd7c
--- /dev/null
@@ -0,0 +1,46 @@
+/*
+ * Copyright 2018 Intel Corporation, Inc
+ *
+ * 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.aaf.sms;
+
+import junit.framework.*;
+import org.onap.aaf.sms.SmsClient;
+import org.onap.aaf.sms.SmsResponse;
+import org.onap.aaf.sms.SmsSecureSocket;
+import javax.net.ssl.SSLSocketFactory;
+import java.util.HashMap;
+import java.util.Map;
+
+public class SmsGetSecretNamesTest extends TestCase {
+
+    public void testSmsGetSecretNames() {
+        try {
+            SmsTest sms = new SmsTest("otconap4.sc.intel.com", 10443, null);
+            Map<String, Object> m;
+            SmsResponse resp = sms.getSecretNames("onap.new.test.sms0");
+            assertTrue(resp.getSuccess());
+            if ( resp.getSuccess() ) {
+                assertEquals(200, resp.getResponseCode());
+                m = resp.getResponse();
+                assertEquals("[testsec1, newtest]", m.get("secretnames").toString());
+            } else {
+                fail("Unexpected response while getting secret names");
+            }
+        } catch ( Exception e ) {
+            fail("Exception while getting secret names");
+        }
+    }
+}
diff --git a/sms-client/src/test/java/org/onap/aaf/sms/SmsGetSecretTest.java b/sms-client/src/test/java/org/onap/aaf/sms/SmsGetSecretTest.java
new file mode 100644 (file)
index 0000000..887171c
--- /dev/null
@@ -0,0 +1,47 @@
+/*
+ * Copyright 2018 Intel Corporation, Inc
+ *
+ * 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.aaf.sms;
+
+import junit.framework.*;
+import org.onap.aaf.sms.SmsClient;
+import org.onap.aaf.sms.SmsResponse;
+import org.onap.aaf.sms.SmsSecureSocket;
+import javax.net.ssl.SSLSocketFactory;
+import java.util.HashMap;
+import java.util.Map;
+
+public class SmsGetSecretTest extends TestCase {
+
+    public void testSmsGetSecret() {
+        try {
+            SmsTest sms = new SmsTest("otconap4.sc.intel.com", 10443, null);
+            Map<String, Object> m;
+            SmsResponse resp = sms.getSecret("onap.new.test.sms0", "testsec1");
+            assertTrue(resp.getSuccess());
+            if ( resp.getSuccess() ) {
+                assertEquals(200, resp.getResponseCode());
+                m = resp.getResponse();
+                assertEquals("dbuser", m.get("username").toString());
+                assertEquals("jdX784i-5k", m.get("passwd").toString());
+            } else {
+                fail("Unexpected response while getting secret");
+            }
+        } catch ( Exception e ) {
+            fail("Exception while getting secret");
+        }
+    }
+}
diff --git a/sms-client/src/test/java/org/onap/aaf/sms/SmsStoreSecretTest.java b/sms-client/src/test/java/org/onap/aaf/sms/SmsStoreSecretTest.java
new file mode 100644 (file)
index 0000000..c49a72e
--- /dev/null
@@ -0,0 +1,46 @@
+/*
+ * Copyright 2018 Intel Corporation, Inc
+ *
+ * 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.aaf.sms;
+
+import junit.framework.*;
+import org.onap.aaf.sms.SmsClient;
+import org.onap.aaf.sms.SmsResponse;
+import org.onap.aaf.sms.SmsSecureSocket;
+import javax.net.ssl.SSLSocketFactory;
+import java.util.HashMap;
+import java.util.Map;
+
+public class SmsStoreSecretTest extends TestCase {
+
+    public void testSmsStoreSecret() {
+        try {
+            SmsTest sms = new SmsTest("otconap4.sc.intel.com", 10443, null);
+            Map<String, Object> v = new HashMap<String, Object>();
+            v.put("username", "dbuser");
+            v.put("password", "kmngjhk");
+            SmsResponse resp = sms.storeSecret("onap.new.test.sms0", "dbs", v);
+            assertTrue(resp.getSuccess());
+            if ( resp.getSuccess() ) {
+                assertEquals(201, resp.getResponseCode());
+            } else {
+                fail("Unexpected response while storing secret");
+            }
+        } catch ( Exception e ) {
+            fail("Exception while storing secret");
+        }
+    }
+}
index 4bdf54c..5277557 100644 (file)
@@ -60,6 +60,39 @@ public class SmsTest extends SmsClient {
                         return(resp);
                     }
                     resp.setResponse(m);
+                } else {
+                    if ( t.matches("(.*)/v1/sms/(.*)/secret") ) {
+                        resp.setSuccess(true);
+                        resp.setResponseCode(201);
+                    }
+                }
+            break;
+            case "GET":
+                if ( t.matches("(.*)/v1/sms/(.*)/secret") ) {
+                    resp.setSuccess(true);
+                    resp.setResponseCode(200);
+                    String jstr = "{\"secretnames\":[\"testsec1\",\"newtest\"]}";
+                    try {
+                        m = strtomap(jstr);
+                    } catch ( Exception e ) {
+                        resp.setResponse(null);
+                        return(resp);
+                    }
+                    resp.setResponse(m);
+                } else {
+                    if ( t.matches("(.*)/v1/sms/(.*)/secret/testsec1")) {
+                        resp.setSuccess(true);
+                        resp.setResponseCode(200);
+                        String js = "{\"name\":\"testsec1\",\"values\":{\"username\":\"dbuser\",\"passwd\":\"jdX784i-5k\"}}";
+                        try {
+                            m = strtomap(js);
+                            Map<String, Object> sm = (Map<String, Object>)m.get("values");
+                        } catch ( Exception e ) {
+                            resp.setResponse(null);
+                            return(resp);
+                        }
+                        resp.setResponse(m);
+                    }
                 }
             break;
             case "DELETE":