Chameleon API Tests

Change-Id: I8002eb19add6e296f034adcdf7801d2ee54744cf
diff --git a/src/test/cord-api/Framework/restApi.py b/src/test/cord-api/Framework/restApi.py
index 5c22097..a14d196 100644
--- a/src/test/cord-api/Framework/restApi.py
+++ b/src/test/cord-api/Framework/restApi.py
@@ -90,11 +90,23 @@
         data = json.dumps(jsonData)
         print "url, data..", url, data
         resp = requests.post(url, data=data, headers=self.jsonHeader, auth=(self.user, self.password))
-        passed = self.checkResult(resp, requests.codes.created)
+        print "requests.codes.....",requests.codes.created
+        passed = self.checkResult(resp, requests.codes.created) or self.checkResult(resp, requests.codes.ok)
         return passed
 
     def ApiGet(self, key, urlSuffix=""):
         url = self.getURL(key) + str(urlSuffix)
+        print "get url...",url
+        resp = requests.get(url, auth=(self.user, self.password))
+        passed = self.checkResult(resp, requests.codes.ok)
+        if not passed:
+            return None
+        else:
+            return resp.json()
+
+    def ApiChameleonGet(self, key, urlSuffix=""):
+        url = self.getURL(key) + "/" + str(urlSuffix)
+        print "get url...",url
         resp = requests.get(url, auth=(self.user, self.password))
         passed = self.checkResult(resp, requests.codes.ok)
         if not passed:
@@ -110,11 +122,29 @@
         passed = self.checkResult(resp, requests.codes.ok)
         return passed
 
+    def ApiChameleonPut(self, key, jsonData, urlSuffix=""):
+        print "urlSuffix....",type(urlSuffix)
+        url = self.getURL(key) + "/" + str(urlSuffix)
+        print "url", url
+        data = json.dumps(jsonData)
+        resp = requests.put(url, data=data, headers=self.jsonHeader, auth=(self.user, self.password))
+        passed = self.checkResult(resp, requests.codes.ok)
+        return passed
+
     def ApiDelete(self, key, urlSuffix=""):
         url = self.getURL(key) + str(urlSuffix)
         print "url",url
         resp = requests.delete(url, auth=(self.user, self.password))
-        passed = self.checkResult(resp, requests.codes.no_content)
+        #passed = self.checkResult(resp, requests.codes.no_content)
+        passed = self.checkResult(resp, requests.codes.created) or self.checkResult(resp, requests.codes.ok)
+        return passed
+
+    def ApiChameleonDelete(self, key, urlSuffix=""):
+        url = self.getURL(key) + "/" + str(urlSuffix)
+        print "url",url
+        resp = requests.delete(url, auth=(self.user, self.password))
+        #passed = self.checkResult(resp, requests.codes.no_content)
+        passed = self.checkResult(resp, requests.codes.created) or self.checkResult(resp, requests.codes.ok)
         return passed
 
 #test
@@ -142,30 +172,40 @@
 #jsonGetData = test.ApiGet(key)
 #jsonResponse = test.ApiPost(key,{"identity":{"name":"My House 22"}})
 #jsonResponse = test.ApiPost(key,{"firstname":"Test002","lastname":"User002","email":"test002@onlab.us","password":"TestUser002","site": "http://localhost:8000/api/core/sites/1/"})
-#jsonResponse = test.ApiDelete(key,15)
+key = "VOLT_TENANT"
+key = "VOLT_SUBSCRIBER"
+#jsonResponse = test.ApiDelete(key,204)
 #jsonResponse = test.ApiPut(key,{"firstname":"Test002","lastname":"User002","email":"test002update@onlab.us","password":"TestUser002","site": "http://localhost:8000/api/core/sites/1/"},14)
 #jsonResponse = test.ApiPost(key2,{"username":"test002update@onlab.us","password":"TestUser002"})
 #jsonResponse = test.ApiPost(key2,{"username":"padmin@vicci.org","password":"letmein"})
 #jsonResponse = test.ApiPut(key,{"username":"testuser","password":"TestUser001"},"9")
-#key = "UTILS_SYNCHRONIZER"
-key = "CORE_SANITY_INSTANCES"
-key1 = "CORE_SANITY_SLICES"
-key2 = "CORE_SLICES"
+#key = "CORE_INSTANCES"
+#key1 = "CORE_SANITY_SLICES"
+#key2 = "CORE_SLICES"
 #input_dict = { "s_tag" : "111", "c_tag" : "222", "subscriber" : 23}
 input_dict = {
-           "name": "test-instance",
-           "image": 1,
-           "slice": 1,
-           "deployment": 1,
-           "node": 1
-           }
-input_dict1 = { "name" : "mysite_Test1", "site" : 1 , "creator" : 1}
-jsonResponse = test.ApiPost(key1,input_dict1)
-#jsonGetData = test.ApiGet(key)
-print "========="
+         "s_tag" : 117,
+         "c_tag" : 227
+        }
+
+#input_dict1 = { "name" : "mysite_Test1", "site" : 1 , "creator" : 1}
+input_dict2 = {
+ 
+            "cdn_enable": "true",
+            "uplink_speed": 1000000000,
+            "downlink_speed": 1000000000,
+            "enable_uverse": "true",
+            "status": "enabled",
+            "service_specific_id": "100",
+            "name": "My House"
+    }
+#jsonResponse = test.ApiPost(key,input_dict)
+#jsonResponse = test.ApiChameleonPut(key,input_dict,12)
+#jsonGetData = test.ApiGet(key,"/12")
+#print "========="
 #print jsonGetData
 #jsonEdit = test.ApiPut(key,{"c_tag" : "666","s_tag" : "123"},"30")
-#jsonO = test.ApiDelete(key2,"1")
+jsonO = test.ApiDelete(key,"/7")
 #jsonResponse = test.ApiPut(key,{"identity":{"name":"My House 22"}},"71")
 #jsonResponse = test.ApiPost(key,{"name":"test-2"})
 #jsonResponse = test.ApiPut(key,{"name":"test1-changed"},"9")
diff --git a/src/test/cord-api/Framework/utils/utils.py b/src/test/cord-api/Framework/utils/utils.py
index fb1a797..832bee2 100644
--- a/src/test/cord-api/Framework/utils/utils.py
+++ b/src/test/cord-api/Framework/utils/utils.py
@@ -128,10 +128,12 @@
         return_dict = {}
         result = ''
         for data in getJsonDataList:
+            print "data..",data
             return_dict = {}
             found = False
             input_keys = data.keys()
             for key in input_keys:
+                print "key in input_keys...",key
                 if key == searchKey and str(data[key]) == str(searchKeyValue):
                    found = True
                    return_dict = data
@@ -220,19 +222,251 @@
 '''
 #Test
 dict_list = {
- "humanReadableName": "cordSubscriber-17",
-        "id": 17,
-        "features": {
-            "uplink_speed": 1000000000,
-            "downlink_speed": 1000000000,
-            "status": "enabled"
+[
+    {
+        "humanReadableName": "mysite_vsg-1",
+        "validators": {
+            "policed": [],
+            "creator": [],
+            "ip": [],
+            "image": [
+                "notBlank"
+            ],
+            "backend_register": [
+                "notBlank"
+            ],
+            "flavor": [
+                "notBlank"
+            ],
+            "backend_status": [
+                "notBlank"
+            ],
+            "id": [],
+            "instance_name": [],
+            "slice": [
+                "notBlank"
+            ],
+            "backend_need_delete": [],
+            "enacted": [],
+            "no_sync": [],
+            "node": [
+                "notBlank"
+            ],
+            "userData": [],
+            "updated": [
+                "notBlank"
+            ],
+            "parent": [],
+            "deleted": [],
+            "lazy_blocked": [],
+            "deployment": [
+                "notBlank"
+            ],
+            "backend_need_reap": [],
+            "instance_uuid": [],
+            "numberCores": [
+                "notBlank"
+            ],
+            "name": [
+                "notBlank"
+            ],
+            "created": [],
+            "write_protect": [],
+            "isolation": [
+                "notBlank"
+            ],
+            "no_policy": [],
+            "instance_id": [],
+            "volumes": []
         },
-        "identity": {
-            "account_num": "20",
-            "name": "My House"
+        "id": 1,
+        "created": "2017-03-13T22:23:48.805109Z",
+        "updated": "2017-03-13T22:38:06.084074Z",
+        "enacted": "2017-03-13T22:38:43.894253Z",
+        "policed": "2017-03-13T22:38:08.086489Z",
+        "backend_register": "{\"next_run\": 0, \"last_success\": 1489444729.019414, \"exponent\": 0}",
+        "backend_status": "1 - OK",
+        "instance_id": "instance-00000001",
+        "instance_uuid": "a46d716f-e82c-4088-a042-72c3a97ed3ff",
+        "name": "mysite_vsg",
+        "instance_name": "mysite_vsg-1",
+        "ip": "10.1.0.17",
+        "image": "http://ms1333.utah.cloudlab.us:8080/api/core/images/1/",
+        "creator": "http://ms1333.utah.cloudlab.us:8080/api/core/users/1/",
+        "slice": "http://ms1333.utah.cloudlab.us:8080/api/core/slices/2/",
+        "deployment": "http://ms1333.utah.cloudlab.us:8080/api/core/deployments/1/",
+        "node": "http://ms1333.utah.cloudlab.us:8080/api/core/nodes/1/",
+        "numberCores": 0,
+        "flavor": "http://ms1333.utah.cloudlab.us:8080/api/core/flavors/1/",
+        "isolation": "vm",
+        "volumes": "/etc/dnsmasq.d,/etc/ufw",
+        "networks": [
+            "http://ms1333.utah.cloudlab.us:8080/api/core/networks/1/",
+            "http://ms1333.utah.cloudlab.us:8080/api/core/networks/2/"
+        ]
+    },
+    {
+        "humanReadableName": "mysite_exampleservice-2",
+        "validators": {
+            "policed": [],
+            "creator": [],
+            "ip": [],
+            "image": [
+                "notBlank"
+            ],
+            "backend_register": [
+                "notBlank"
+            ],
+            "flavor": [
+                "notBlank"
+            ],
+            "backend_status": [
+                "notBlank"
+            ],
+            "id": [],
+            "instance_name": [],
+            "slice": [
+                "notBlank"
+            ],
+            "backend_need_delete": [],
+            "enacted": [],
+            "no_sync": [],
+            "node": [
+                "notBlank"
+            ],
+            "userData": [],
+            "updated": [
+                "notBlank"
+            ],
+            "parent": [],
+            "deleted": [],
+            "lazy_blocked": [],
+            "deployment": [
+                "notBlank"
+            ],
+            "backend_need_reap": [],
+            "instance_uuid": [],
+            "numberCores": [
+                "notBlank"
+            ],
+            "name": [
+                "notBlank"
+            ],
+            "created": [],
+            "write_protect": [],
+            "isolation": [
+                "notBlank"
+            ],
+            "no_policy": [],
+            "instance_id": [],
+            "volumes": []
         },
-        "related": {}
+        "id": 2,
+        "created": "2017-03-13T22:38:03.872267Z",
+        "updated": "2017-03-13T22:38:06.047153Z",
+        "enacted": "2017-03-13T22:39:07.002800Z",
+        "policed": "2017-03-13T22:38:07.895147Z",
+        "backend_register": "{\"next_run\": 0, \"last_success\": 1489444774.726988, \"exponent\": 0}",
+        "backend_status": "1 - OK",
+        "instance_id": "instance-00000002",
+        "instance_uuid": "cb219739-0d11-48a2-9f19-1e2aba1f004e",
+        "name": "mysite_exampleservice",
+        "instance_name": "mysite_exampleservice-2",
+        "ip": "10.1.0.17",
+        "image": "http://ms1333.utah.cloudlab.us:8080/api/core/images/3/",
+        "creator": "http://ms1333.utah.cloudlab.us:8080/api/core/users/1/",
+        "slice": "http://ms1333.utah.cloudlab.us:8080/api/core/slices/4/",
+        "deployment": "http://ms1333.utah.cloudlab.us:8080/api/core/deployments/1/",
+        "node": "http://ms1333.utah.cloudlab.us:8080/api/core/nodes/1/",
+        "numberCores": 0,
+        "flavor": "http://ms1333.utah.cloudlab.us:8080/api/core/flavors/1/",
+        "isolation": "vm",
+        "networks": [
+            "http://ms1333.utah.cloudlab.us:8080/api/core/networks/3/",
+            "http://ms1333.utah.cloudlab.us:8080/api/core/networks/1/",
+            "http://ms1333.utah.cloudlab.us:8080/api/core/networks/4/"
+        ]
+    },
+    {
+        "humanReadableName": "mysite_vsg-3",
+        "validators": {
+            "policed": [],
+            "creator": [],
+            "ip": [],
+            "image": [
+                "notBlank"
+            ],
+            "backend_register": [
+                "notBlank"
+            ],
+            "flavor": [
+                "notBlank"
+            ],
+            "backend_status": [
+                "notBlank"
+            ],
+            "id": [],
+            "instance_name": [],
+            "slice": [
+                "notBlank"
+            ],
+            "backend_need_delete": [],
+            "enacted": [],
+            "no_sync": [],
+            "node": [
+                "notBlank"
+            ],
+            "userData": [],
+            "updated": [
+                "notBlank"
+            ],
+            "parent": [],
+            "deleted": [],
+            "lazy_blocked": [],
+            "deployment": [
+                "notBlank"
+            ],
+            "backend_need_reap": [],
+            "instance_uuid": [],
+            "numberCores": [
+                "notBlank"
+            ],
+            "name": [
+                "notBlank"
+            ],
+            "created": [],
+            "write_protect": [],
+            "isolation": [
+                "notBlank"
+            ],
+            "no_policy": [],
+            "instance_id": [],
+            "volumes": []
+        },
+        "id": 3,
+        "created": "2017-03-17T23:15:13.556863Z",
+        "updated": "2017-03-17T23:15:13.555271Z",
+        "enacted": "2017-03-17T23:15:24.376854Z",
+        "policed": "2017-03-17T23:15:14.991037Z",
+        "backend_register": "{\"next_run\": 0, \"last_success\": 1489792538.996003, \"exponent\": 0}",
+        "backend_status": "1 - OK",
+        "instance_id": "instance-00000003",
+        "instance_uuid": "ec5ece6d-bebe-4165-98c5-3a026a41c63c",
+        "name": "mysite_vsg",
+        "instance_name": "mysite_vsg-3",
+        "ip": "10.1.0.17",
+        "image": "http://ms1333.utah.cloudlab.us:8080/api/core/images/1/",
+        "creator": "http://ms1333.utah.cloudlab.us:8080/api/core/users/1/",
+        "slice": "http://ms1333.utah.cloudlab.us:8080/api/core/slices/2/",
+        "deployment": "http://ms1333.utah.cloudlab.us:8080/api/core/deployments/1/",
+        "node": "http://ms1333.utah.cloudlab.us:8080/api/core/nodes/1/",
+        "numberCores": 0,
+        "flavor": "http://ms1333.utah.cloudlab.us:8080/api/core/flavors/1/",
+        "isolation": "vm",
+        "volumes": "/etc/dnsmasq.d,/etc/ufw"
     }
+   ]
+  }
 input_dict = {
  "s_tag" : "111",
  "c_tag" : "222",
@@ -243,10 +477,10 @@
 #data=test.jsonToList("Subscribers.json","SubscriberInfo")
 #print  test.jsonToList("Subscribers.json","SubscriberInfo")
 #print "index 1...",test.listToDict(data,1)
-#result = test.getDictFromListOfDict(dict_list,"email",21)
+result = test.getDictFromListOfDict(dict_list,"instance_name","mysite_vsg-3")
 #result = test.getFieldValueFromDict(dict_list,"id")
 #result = test.getDictFromListOfDict(dict_list,"account_num",21)
 #result = test.setFieldValueInDict(input_dict,"subscriber",new_value)
-result = test.getAllFieldValues(list1,"instance_name")
+#result = test.getAllFieldValues(list1,"instance_name")
 print "finalllllll result....", result
 '''
diff --git a/src/test/cord-api/Properties/RestApiProperties.py b/src/test/cord-api/Properties/RestApiProperties.py
index fc96dc5..f3f7418 100644
--- a/src/test/cord-api/Properties/RestApiProperties.py
+++ b/src/test/cord-api/Properties/RestApiProperties.py
@@ -1,22 +1,34 @@
 #!/usr/bin/env python
-SERVER_IP = '10.128.100.9'
+SERVER_IP = 'ms0903.utah.cloudlab.us'
 SERVER_PORT = '8080'
-USER = 'padmin@vicci.org'
-PASSWD = 'letmein'
+USER = 'xosadmin@opencord.org'
+PASSWD = 'AwHMOBEa9hhDMH4SuSUN'
+VOLT_SUBSCRIBER = '/xosapi/v1/rcord/cordsubscriberroots'
+VOLT_TENANT = '/xosapi/v1/volt/volttenants'
 TENANT_SUBSCRIBER = '/api/tenant/cord/subscriber/'
 TENANT_VOLT = '/api/tenant/cord/volt/'
 UTILS_SYNCHRONIZER = '/api/utility/synchronizer/'
 UTILS_LOGIN = '/api/utility/login/'
 CORE_USERS = '/api/core/users/'
+CH_CORE_USERS = '/xosapi/v1/core/users'
 CORE_SERVICES = '/api/core/services/'
+CH_CORE_SERVICES = '/xosapi/v1/core/services'
 CORE_INSTANCES = '/api/core/instances/'
+CH_CORE_INSTANCES = '/xosapi/v1/core/instances'
 CORE_DEPLOYMENTS = '/api/core/deployments/'
+CH_CORE_DEPLOYMENTS = '/xosapi//v1/core/deployments'
 CORE_SANITY_INSTANCES = '/api/core/instances/?no_hyperlinks=1'
 CORE_SANITY_SLICES = '/api/core/slices/?no_hyperlinks=1'
 CORE_SLICES = '/api/core/slices/'
+CH_CORE_SLICES = '/xosapi/v1/core/slices'
 CORE_SANITY_NODES = '/api/core/nodes/?no_hyperlinks=1'
 CORE_NODES = '/api/core/nodes/'
+CH_CORE_NODES = '/xosapi/v1/core/nodes'
 CORE_FLAVORS = '/api/core/flavors/'
+CH_CORE_FLAVORS = '/xosapi/v1/core/flavors'
 CORE_SITES = '/api/core/sites/'
+CH_CORE_SITES = '/xosapi/v1/core/sites'
 CORE_IMAGES = '/api/core/images/'
+CH_CORE_IMAGES = '/xosapi/v1/core/images'
 CORE_SITEDEPLOYMENTS = '/api/core/sitedeployments'
+CH_CORE_SITEDEPLOYMENTS = '/xosapi/v1/core/sitedeployments'
diff --git a/src/test/cord-api/Tests/.gitignore b/src/test/cord-api/Tests/.gitignore
new file mode 100644
index 0000000..633ea0f
--- /dev/null
+++ b/src/test/cord-api/Tests/.gitignore
@@ -0,0 +1,3 @@
+log.html
+report.html
+output.xml
diff --git a/src/test/cord-api/Tests/Ch_DefaultServiceCheck.txt b/src/test/cord-api/Tests/Ch_DefaultServiceCheck.txt
new file mode 100644
index 0000000..2d9b5f2
--- /dev/null
+++ b/src/test/cord-api/Tests/Ch_DefaultServiceCheck.txt
@@ -0,0 +1,37 @@
+*** Settings ***
+Documentation     Test suite for checking default services
+Suite Setup       Read InputFile
+Test Template     Verify Service Sanity
+Library           Collections
+Library           String
+Library           OperatingSystem
+Library           XML
+Library           RequestsLibrary
+Library           ../Framework/utils/utils.py
+Library           ../Framework/restApi.py
+
+*** Variables ***
+${USER}           admin
+${PASSWORD}       admin
+${PATHFILE}       ${CURDIR}/data/Ch_defaultServices.json
+
+*** Test Cases ***    TYPE
+Test Service Sanity
+                      SANITY
+
+*** Keywords ***
+Read InputFile
+    ${serviceList}=    utils.jsonToList    ${PATHFILE}    ServiceInfo
+    Set Suite Variable    ${slist}    ${serviceList}
+
+Verify Service Sanity
+    [Arguments]    ${type}
+    Run Keyword If    "${type}" == "SANITY"    Test Service Sanity
+
+Test Service Sanity
+    ${json_result}=    restApi.ApiGet    CH_CORE_SERVICES
+    ${json_result_list}=    Get From Dictionary    ${json_result}    items
+    Log    ${json_result_list}
+    ${serviceList}=    Get Variable Value    ${slist}
+    ${test_result}=    utils.compare_list_of_dicts    ${serviceList}    ${json_result_list}
+    Should Be True    ${test_result}
diff --git a/src/test/cord-api/Tests/Ch_DeploymentTest.txt b/src/test/cord-api/Tests/Ch_DeploymentTest.txt
new file mode 100644
index 0000000..7a3de5d
--- /dev/null
+++ b/src/test/cord-api/Tests/Ch_DeploymentTest.txt
@@ -0,0 +1,100 @@
+*** Settings ***
+Documentation     Test suite for Deployment verification
+Suite Setup       Read InputFile
+Test Template     Verify Deployment functionality
+Library           Collections
+Library           String
+Library           OperatingSystem
+Library           XML
+Library           RequestsLibrary
+Library           ../Framework/utils/utils.py
+Library           ../Framework/restApi.py
+
+*** Variables ***
+${USER}           admin
+${PASSWORD}       admin
+${PATHFILE}       ${CURDIR}/data/Ch_Deployment.json
+${PATHFILE2}      ${CURDIR}/data/putDeployment.json
+
+*** Test Cases ***    TYPE                       LISTINDEX
+Test Post Deployment-1
+                      CREATE                     0
+
+Test Get Deployment-1
+                      RETRIEVE                   0
+                      #Test Edit Deployment-1    PUT          0
+
+Test Delete Deployment-1
+                      DELETE                     0
+
+Test Post Deployment-2
+                      CREATE                     1
+
+Test Get Deployment-2
+                      RETRIEVE                   1
+                      #Test Edit Deployment-2    PUT          1
+
+Test Delete Deployment-2
+                      DELETE                     1
+
+*** Keywords ***
+Read InputFile
+    ${deploymentList}=    utils.jsonToList    ${PATHFILE}    DeploymentInfo
+    Set Suite Variable    ${dlist}    ${deploymentList}
+    ${putDeploymentList}=    utils.jsonToList    ${PATHFILE2}    DeploymentInfo
+    Set Suite Variable    ${putList}    ${putDeploymentList}
+
+Verify Deployment functionality
+    [Arguments]    ${type}    ${listIndex}
+    Run Keyword If    "${type}" == "CREATE"    Test Post Deployment API    ${listIndex}
+    Run Keyword If    "${type}" == "RETRIEVE"    Test Get Deployment API    ${listIndex}
+    Run Keyword If    "${type}" == "PUT"    Test Edit Deployment API    ${listIndex}
+    Run Keyword If    "${type}" == "DELETE"    Test Delete Deployment API    ${listIndex}
+
+Test Post Deployment API
+    [Arguments]    ${listIndex}
+    ${deploymentList} =    Get Variable Value    ${dlist}
+    ${deploymentDict}=    utils.listToDict    ${deploymentList}    ${listIndex}
+    ${api_result}=    restApi.ApiPost    CH_CORE_DEPLOYMENTS    ${deploymentDict}
+    Should Be True    ${api_result}
+
+Test Get Deployment API
+    [Arguments]    ${listIndex}
+    ${json_result}=    restApi.ApiGet    CH_CORE_DEPLOYMENTS
+    ${json_result_list}=    Get From Dictionary    ${json_result}    items
+    Log    ${json_result_list}
+    ${deploymentList}=    Get Variable Value    ${dlist}
+    ${deploymentDict}=    utils.listToDict    ${deploymentList}    ${listIndex}
+    ${name}=    utils.getFieldValueFromDict    ${deploymentDict}    name
+    ${getJsonDict}=    utils.getDictFromListOfDict    ${json_result_list}    name    ${name}
+    ${test_result}=    utils.compare_dict    ${deploymentDict}    ${getJsonDict}
+    Should Be True    ${test_result}
+
+Test Edit Deployment API
+    [Arguments]    ${listIndex}
+    ${get_result}=    restApi.ApiGet    CH_CORE_DEPLOYMENTS
+    ${putDeploymentList}=    Get Variable Value    ${putList}
+    ${putDeploymentDict}=    utils.listToDict    ${putDeploymentList}    ${listIndex}
+    ${name}=    utils.getFieldValueFromDict    ${putDeploymentDict}    name
+    ${deploymentDict}=    utils.getDictFromListofDict    ${get_result}    name    ${name}
+    ${deploymentID}=    utils.getFieldValueFromDict    ${deploymentDict}    id
+    ${api_result}=    restApi.ApiPut    CH_CORE_DEPLOYMENTS    ${putDeploymentDict}    ${deploymentID}
+    Should Be True    ${api_result}
+    ${getResultAfterPut}=    restApi.ApiGet    CH_CORE_DEPLOYMENTS    ${deploymentID}
+    ${test_result}=    utils.compare_dict    ${putDeploymentDict}    ${getResultAfterPut}
+    Should Be True    ${test_result}
+
+Test Delete Deployment API
+    [Arguments]    ${listIndex}
+    ${json_result}=    restApi.ApiGet    CH_CORE_DEPLOYMENTS
+    ${json_result_list}=    Get From Dictionary    ${json_result}    items
+    ${deploymentList}=    Get Variable Value    ${dlist}
+    ${deploymentDict}=    utils.listToDict    ${deploymentList}    ${listIndex}
+    ${name}=    utils.getFieldValueFromDict    ${deploymentDict}    name
+    Log    ${name}
+    ${deploymentDict}=    utils.getDictFromListofDict    ${json_result_list}    name    ${name}
+    Log    ${deploymentDict}
+    ${deploymentId}=    utils.getFieldValueFromDict    ${deploymentDict}    id
+    Log    ${deploymentId}
+    ${test_result}=    restApi.ApiChameleonDelete    CH_CORE_DEPLOYMENTS    ${deploymentId}
+    Should Be True    ${test_result}
diff --git a/src/test/cord-api/Tests/Ch_NodeTest.txt b/src/test/cord-api/Tests/Ch_NodeTest.txt
new file mode 100644
index 0000000..b777dea
--- /dev/null
+++ b/src/test/cord-api/Tests/Ch_NodeTest.txt
@@ -0,0 +1,81 @@
+*** Settings ***
+Documentation     Test suite for Node API verification
+Suite Setup       Read InputFile
+Test Template     Verify Node API functionality
+Library           Collections
+Library           String
+Library           OperatingSystem
+Library           XML
+Library           RequestsLibrary
+Library           ../Framework/utils/utils.py
+Library           ../Framework/restApi.py
+Variables         ../Properties/RestApiProperties.py
+
+*** Variables ***
+${USER}           admin
+${PASSWORD}       admin
+${PATHFILE}       ${CURDIR}/data/Ch_Node.json
+${IP}             ${SERVER_IP}
+${PORT}           ${SERVER_PORT}
+
+*** Test Cases ***    TYPE        LISTINDEX
+Test Post Node-1      CREATE      0
+
+Test Get Node-1       RETRIEVE    0
+
+Test Delete Node-1    DELETE      0
+
+Test Post Node-2      CREATE      1
+
+Test Get Node-2       RETRIEVE    1
+
+Test Delete Node-2    DELETE      1
+
+*** Keywords ***
+Read InputFile
+    ${nodeList}=    utils.jsonToList    ${PATHFILE}    NodeInfo
+    Set Suite Variable    ${nlist}    ${nodeList}
+    ${siteDeployment}=    Catenate    SEPARATOR=    http://    ${IP}    :    ${PORT}
+    ...    /api/core/sitedeployments/1/
+    Set Suite Variable    ${siteDeployment}    ${siteDeployment}
+
+Verify Node API functionality
+    [Arguments]    ${type}    ${listIndex}
+    Run Keyword If    "${type}" == "CREATE"    Test Post Node API    ${listIndex}
+    Run Keyword If    "${type}" == "RETRIEVE"    Test Get Node API    ${listIndex}
+    Run Keyword If    "${type}" == "DELETE"    Test Delete Node API    ${listIndex}
+
+Test Post Node API
+    [Arguments]    ${listIndex}
+    ${nodeList}=    Get Variable Value    ${nlist}
+    ${nodeDict}=    utils.listToDict    ${nodeList}    ${listIndex}
+    ${api_result}=    restApi.ApiPost    CH_CORE_NODES    ${nodeDict}
+    Should Be True    ${api_result}
+
+Test Get Node API
+    [Arguments]    ${listIndex}
+    ${json_result}=    restApi.ApiGet    CH_CORE_NODES
+    ${json_result_list}=    Get From Dictionary    ${json_result}    items
+    Log    ${json_result_list}
+    ${nodeList}=    Get Variable Value    ${nlist}
+    ${nodeDict}=    utils.listToDict    ${nodeList}    ${listIndex}
+    ${name}=    utils.getFieldValueFromDict    ${nodeDict}    name
+    Log    ${name}
+    ${getJsonDict}=    utils.getDictFromListOfDict    ${json_result_list}    name    ${name}
+    ${test_result}=    utils.compare_dict    ${nodeDict}    ${getJsonDict}
+    Should Be True    ${test_result}
+
+Test Delete Node API
+    [Arguments]    ${listIndex}
+    ${json_result}=    restApi.ApiGet    CH_CORE_NODES
+    ${json_result_list}=    Get From Dictionary    ${json_result}    items
+    ${nodeList}=    Get Variable Value    ${nlist}
+    ${nodeDict}=    utils.listToDict    ${nodeList}    ${listIndex}
+    ${name}=    utils.getFieldValueFromDict    ${nodeDict}    name
+    Log    ${name}
+    ${nodeDict}=    utils.getDictFromListofDict    ${json_result_list}    name    ${name}
+    Log    ${nodeDict}
+    ${nodeId}=    utils.getFieldValueFromDict    ${nodeDict}    id
+    Log    ${nodeId}
+    ${test_result}=    restApi.ApiChameleonDelete    CH_CORE_NODES    ${nodeId}
+    Should Be True    ${test_result}
diff --git a/src/test/cord-api/Tests/Ch_SanityFlavors.txt b/src/test/cord-api/Tests/Ch_SanityFlavors.txt
new file mode 100644
index 0000000..72ced6e
--- /dev/null
+++ b/src/test/cord-api/Tests/Ch_SanityFlavors.txt
@@ -0,0 +1,76 @@
+*** Settings ***
+Documentation     Test suite for Sanity Test of Flavors API
+Suite Setup       Read InputFile
+Test Template     Verify Flavor API functionality
+Library           Collections
+Library           String
+Library           OperatingSystem
+Library           XML
+Library           RequestsLibrary
+Library           ../Framework/utils/utils.py
+Library           ../Framework/restApi.py
+
+*** Variables ***
+${USER}           admin
+${PASSWORD}       admin
+${PATHFILE}       ${CURDIR}/data/Ch_Flavors.json
+
+*** Test Cases ***    TYPE        LISTINDEX
+Test Add Flavor-1     CREATE      0
+
+Test Get Flavor-1     RETRIEVE    0
+
+Test Delete Flavor-1
+                      DELETE      0
+
+Test Add Flavor-2     CREATE      1
+
+Test Get Flavor-2     RETRIEVE    1
+
+Test Delete Flavor-2
+                      DELETE      1
+
+*** Keywords ***
+Read InputFile
+    ${flavorList} =    utils.jsonToList    ${PATHFILE}    flavorsInfo
+    Set Suite Variable    ${vList}    ${flavorList}
+
+Verify Flavor API functionality
+    [Arguments]    ${type}    ${listIndex}
+    Run Keyword If    "${type}" == "CREATE"    Test Post Flavors    ${listIndex}
+    Run Keyword If    "${type}" == "RETRIEVE"    Test Get Flavors    ${listIndex}
+    Run Keyword If    "${type}" == "DELETE"    Test Delete Flavors    ${listIndex}
+
+Test Post Flavors
+    [Arguments]    ${listIndex}
+    ${flavorList} =    Get Variable Value    ${vList}
+    ${flavorDict}=    utils.listToDict    ${flavorList}    ${listIndex}
+    ${api_result}=    restApi.ApiPost    CH_CORE_FLAVORS    ${flavorDict}
+    Should Be True    ${api_result}
+
+Test Get Flavors
+    [Arguments]    ${listIndex}
+    ${json_result}=    restApi.ApiGet    CH_CORE_FLAVORS
+    ${json_result_list}=    Get From Dictionary    ${json_result}    items
+    Log    ${json_result_list}
+    ${flavorList}=    Get Variable Value    ${vList}
+    ${inputDict}=    utils.listToDict    ${flavorList}    ${listIndex}
+    ${flavorName}=    utils.getFieldValueFromDict    ${inputDict}    name
+    ${getJsonDict}=    utils.getDictFromListOfDict    ${json_result_list}    name    ${flavorName}
+    ${test_result}=    utils.compare_dict    ${inputDict}    ${getJsonDict}
+    Should Be True    ${json_result}
+
+Test Delete Flavors
+    [Arguments]    ${listIndex}
+    ${json_getresult}=    restApi.ApiGet    CH_CORE_FLAVORS
+    ${json_getresult_list}=    Get From Dictionary    ${json_getresult}    items
+    ${flavorList}=    Get Variable Value    ${vList}
+    ${flavorDict}=    utils.listToDict    ${vList}    ${listIndex}
+    ${flavorName}=    utils.getFieldValueFromDict    ${flavorDict}    name
+    Log    ${flavorName}
+    ${getFlavorDict}=    utils.getDictFromListofDict    ${json_getresult_list}    name    ${flavorName}
+    Log    ${getFlavorDict}
+    ${flavorID}=    utils.getFieldValueFromDict    ${getFlavorDict}    id
+    Log    ${flavorID}
+    ${test_result}=    restApi.ApiChameleonDelete    CH_CORE_FLAVORS    ${flavorID}
+    Should be True    ${test_result}
diff --git a/src/test/cord-api/Tests/Ch_SanityInstance.txt b/src/test/cord-api/Tests/Ch_SanityInstance.txt
new file mode 100644
index 0000000..01a972d
--- /dev/null
+++ b/src/test/cord-api/Tests/Ch_SanityInstance.txt
@@ -0,0 +1,81 @@
+*** Settings ***
+Documentation     Test suite for Sanity Test of Instance API
+Suite Setup       Read InputFile
+Test Template     Verify Instance API functionality
+Library           Collections
+Library           String
+Library           OperatingSystem
+Library           XML
+Library           RequestsLibrary
+Library           ../Framework/utils/utils.py
+Library           ../Framework/restApi.py
+
+*** Variables ***
+${USER}           admin
+${PASSWORD}       admin
+${PATHFILE}       ${CURDIR}/data/Ch_SanityInstance.json
+
+*** Test Cases ***    TYPE        LISTINDEX
+Test Add Instance-1
+                      CREATE      0
+
+Test Get Instance-1
+                      RETRIEVE    0
+
+Test Delete Instance-1
+                      DELETE      0
+
+Test Add Instance-2
+                      CREATE      1
+
+Test Get Instance-2
+                      RETRIEVE    1
+
+Test Delete Instance-2
+                      DELETE      1
+
+*** Keywords ***
+Read InputFile
+    ${instanceList} =    utils.jsonToList    ${PATHFILE}    InstanceInfo
+    Set Suite Variable    ${iList}    ${instanceList}
+
+Verify Instance API functionality
+    [Arguments]    ${type}    ${listIndex}
+    Run Keyword If    "${type}" == "CREATE"    Test Post Instances    ${listIndex}
+    Run Keyword If    "${type}" == "RETRIEVE"    Test Get Instances    ${listIndex}
+    Run Keyword If    "${type}" == "DELETE"    Test Delete Instances    ${listIndex}
+
+Test Post Instances
+    [Arguments]    ${listIndex}
+    ${instanceList} =    Get Variable Value    ${iList}
+    ${instanceDict}=    utils.listToDict    ${instanceList}    ${listIndex}
+    ${api_result}=    restApi.ApiPost    CH_CORE_INSTANCES    ${instanceDict}
+    Should Be True    ${api_result}
+
+Test Get Instances
+    [Arguments]    ${listIndex}
+    ${json_result}=    restApi.ApiGet    CH_CORE_INSTANCES
+    Log    ${json_result}
+    ${json_result_list}=    Get From Dictionary    ${json_result}    items
+    Log    ${json_result_list}
+    ${instanceList}=    Get Variable Value    ${iList}
+    ${inputDict}=    utils.listToDict    ${instanceList}    ${listIndex}
+    ${instanceName}=    utils.getFieldValueFromDict    ${inputDict}    name
+    ${getJsonDict}=    utils.getDictFromListOfDict    ${json_result_list}    name    ${instanceName}
+    ${test_result}=    utils.compare_dict    ${inputDict}    ${getJsonDict}
+    Should Be True    ${json_result}
+
+Test Delete Instances
+    [Arguments]    ${listIndex}
+    ${json_getresult}=    restApi.ApiGet    CH_CORE_INSTANCES
+    ${json_getresult_list}=    Get From Dictionary    ${json_getresult}    items
+    ${instanceList}=    Get Variable Value    ${iList}
+    ${instanceDict}=    utils.listToDict    ${iList}    ${listIndex}
+    ${instanceName}=    utils.getFieldValueFromDict    ${instanceDict}    name
+    Log    ${instanceName}
+    ${getInstanceDict}=    utils.getDictFromListofDict    ${json_getresult_list}    name    ${instanceName}
+    Log    ${getInstanceDict}
+    ${instanceID}=    utils.getFieldValueFromDict    ${getInstanceDict}    id
+    Log    ${instanceID}
+    ${test_result}=    restApi.ApiChameleonDelete    CH_CORE_INSTANCES    ${instanceID}
+    Should be True    ${test_result}
diff --git a/src/test/cord-api/Tests/Ch_ServiceTest.txt b/src/test/cord-api/Tests/Ch_ServiceTest.txt
new file mode 100644
index 0000000..9f06ad1
--- /dev/null
+++ b/src/test/cord-api/Tests/Ch_ServiceTest.txt
@@ -0,0 +1,104 @@
+*** Settings ***
+Documentation     Test suite for Service verification
+Suite Setup       Read InputFile
+Test Template     Verify Service functionality
+Library           Collections
+Library           String
+Library           OperatingSystem
+Library           XML
+Library           RequestsLibrary
+Library           ../Framework/utils/utils.py
+Library           ../Framework/restApi.py
+
+*** Variables ***
+${USER}           admin
+${PASSWORD}       admin
+${PATHFILE}       ${CURDIR}/data/Ch_Service.json
+${PATHFILE2}      ${CURDIR}/data/Ch_putService.json
+
+*** Test Cases ***    TYPE        LISTINDEX
+Test Post Service-1
+                      CREATE      0
+
+Test Get Service-1    RETRIEVE    0
+
+Test Edit Service-1
+                      PUT         0
+
+Test Delete Service-1
+                      DELETE      0
+
+Test Post Service-2
+                      CREATE      1
+
+Test Get Service-2    RETRIEVE    1
+
+Test Edit Service-2
+                      PUT         1
+
+Test Delete Service-2
+                      DELETE      1
+
+*** Keywords ***
+Read InputFile
+    ${serviceList}=    utils.jsonToList    ${PATHFILE}    ServiceInfo
+    Set Suite Variable    ${slist}    ${serviceList}
+    ${putServiceList}=    utils.jsonToList    ${PATHFILE2}    ServiceInfo
+    Set Suite Variable    ${putList}    ${putServiceList}
+
+Verify Service functionality
+    [Arguments]    ${type}    ${listIndex}
+    Run Keyword If    "${type}" == "CREATE"    Test Post Service API    ${listIndex}
+    Run Keyword If    "${type}" == "RETRIEVE"    Test Get Service API    ${listIndex}
+    Run Keyword If    "${type}" == "PUT"    Test Edit Service API    ${listIndex}
+    Run Keyword If    "${type}" == "DELETE"    Test Delete Service API    ${listIndex}
+
+Test Post Service API
+    [Arguments]    ${listIndex}
+    ${serviceList} =    Get Variable Value    ${slist}
+    ${serviceDict}=    utils.listToDict    ${serviceList}    ${listIndex}
+    ${api_result}=    restApi.ApiPost    CH_CORE_SERVICES    ${serviceDict}
+    Should Be True    ${api_result}
+
+Test Get Service API
+    [Arguments]    ${listIndex}
+    ${json_result}=    restApi.ApiGet    CH_CORE_SERVICES
+    ${json_result_list}=    Get From Dictionary    ${json_result}    items
+    Log    ${json_result_list}
+    Log    ${json_result}
+    ${serviceList}=    Get Variable Value    ${slist}
+    ${serviceDict}=    utils.listToDict    ${serviceList}    ${listIndex}
+    ${name}=    utils.getFieldValueFromDict    ${serviceDict}    name
+    ${getJsonDict}=    utils.getDictFromListOfDict    ${json_result_list}    name    ${name}
+    ${test_result}=    utils.compare_dict    ${serviceDict}    ${getJsonDict}
+    Should Be True    ${test_result}
+
+Test Edit Service API
+    [Arguments]    ${listIndex}
+    ${get_result}=    restApi.ApiGet    CH_CORE_SERVICES
+    ${get_result_list}=    Get From Dictionary    ${get_result}    items
+    ${putServiceList}=    Get Variable Value    ${putList}
+    ${putServiceDict}=    utils.listToDict    ${putServiceList}    ${listIndex}
+    ${name}=    utils.getFieldValueFromDict    ${putServiceDict}    name
+    ${serviceDict}=    utils.getDictFromListofDict    ${get_result_list}    name    ${name}
+    ${serviceID}=    utils.getFieldValueFromDict    ${serviceDict}    id
+    ${api_result}=    restApi.ApiChameleonPut    CH_CORE_SERVICES    ${putServiceDict}    ${serviceID}
+    Should Be True    ${api_result}
+    ${getResultAfterPut}=    restApi.ApiChameleonGet    CH_CORE_SERVICES    ${serviceID}
+    ${test_result}=    utils.compare_dict    ${putServiceDict}    ${getResultAfterPut}
+    Should Be True    ${test_result}
+
+Test Delete Service API
+    [Arguments]    ${listIndex}
+    ${json_result}=    restApi.ApiGet    CH_CORE_SERVICES
+    ${json_result_list}=    Get From Dictionary    ${json_result}    items
+    ${serviceList}=    Get Variable Value    ${slist}
+    ${serviceDict}=    utils.listToDict    ${serviceList}    ${listIndex}
+    ${name}=    utils.getFieldValueFromDict    ${serviceDict}    name
+    Log    ${name}
+    ${serviceDict}=    utils.getDictFromListofDict    ${json_result_list}    name    ${name}
+    Log    ${serviceDict}
+    ${serviceId}=    utils.getFieldValueFromDict    ${serviceDict}    id
+    Log    ${serviceId}
+    ${test_result}=    restApi.ApiChameleonDelete    CH_CORE_SERVICES    ${serviceId}
+    Should Be True    ${test_result}
diff --git a/src/test/cord-api/Tests/Ch_SiteTest.txt b/src/test/cord-api/Tests/Ch_SiteTest.txt
new file mode 100644
index 0000000..0748d18
--- /dev/null
+++ b/src/test/cord-api/Tests/Ch_SiteTest.txt
@@ -0,0 +1,97 @@
+*** Settings ***
+Documentation     Test suite for Site verification
+Suite Setup       Read InputFile
+Test Template     Verify Site functionality
+Library           Collections
+Library           String
+Library           OperatingSystem
+Library           XML
+Library           RequestsLibrary
+Library           ../Framework/utils/utils.py
+Library           ../Framework/restApi.py
+
+*** Variables ***
+${USER}           admin
+${PASSWORD}       admin
+${PATHFILE}       ${CURDIR}/data/Ch_Site.json
+${PATHFILE2}      ${CURDIR}/data/Ch_putSite.json
+
+*** Test Cases ***    TYPE        LISTINDEX
+Test Post Site-1      CREATE      0
+
+Test Get Site-1       RETRIEVE    0
+
+Test Edit Site-1      PUT         0
+
+Test Delete Site-1    DELETE      0
+
+Test Post Site-2      CREATE      1
+
+Test Get Site-2       RETRIEVE    1
+
+Test Edit Site-2      PUT         1
+
+Test Delete Site-2    DELETE      1
+
+*** Keywords ***
+Read InputFile
+    ${siteList}=    utils.jsonToList    ${PATHFILE}    SiteInfo
+    Set Suite Variable    ${slist}    ${siteList}
+    ${putSiteList}=    utils.jsonToList    ${PATHFILE2}    SiteInfo
+    Set Suite Variable    ${putList}    ${putSiteList}
+
+Verify Site functionality
+    [Arguments]    ${type}    ${listIndex}
+    Run Keyword If    "${type}" == "CREATE"    Test Post Site API    ${listIndex}
+    Run Keyword If    "${type}" == "RETRIEVE"    Test Get Site API    ${listIndex}
+    Run Keyword If    "${type}" == "PUT"    Test Edit Site API    ${listIndex}
+    Run Keyword If    "${type}" == "DELETE"    Test Delete Site API    ${listIndex}
+
+Test Post Site API
+    [Arguments]    ${listIndex}
+    ${siteList} =    Get Variable Value    ${slist}
+    ${siteDict}=    utils.listToDict    ${siteList}    ${listIndex}
+    ${api_result}=    restApi.ApiPost    CH_CORE_SITES    ${siteDict}
+    Should Be True    ${api_result}
+
+Test Get Site API
+    [Arguments]    ${listIndex}
+    ${json_result}=    restApi.ApiGet    CH_CORE_SITES
+    ${json_result_list}=    Get From Dictionary    ${json_result}    items
+    Log    ${json_result_list}
+    ${siteList}=    Get Variable Value    ${slist}
+    ${siteDict}=    utils.listToDict    ${siteList}    ${listIndex}
+    ${name}=    utils.getFieldValueFromDict    ${siteDict}    name
+    ${getJsonDict}=    utils.getDictFromListOfDict    ${json_result_list}    name    ${name}
+    ${test_result}=    utils.compare_dict    ${siteDict}    ${getJsonDict}
+    Should Be True    ${test_result}
+
+Test Edit Site API
+    [Arguments]    ${listIndex}
+    ${get_result}=    restApi.ApiGet    CH_CORE_SITES
+    ${get_result_list}=    Get From Dictionary    ${get_result}    items
+    ${putSiteList}=    Get Variable Value    ${putList}
+    ${putSiteDict}=    utils.listToDict    ${putSiteList}    ${listIndex}
+    ${name}=    utils.getFieldValueFromDict    ${putSiteDict}    name
+    ${siteDict}=    utils.getDictFromListofDict    ${get_result_list}    name    ${name}
+    ${siteID}=    utils.getFieldValueFromDict    ${siteDict}    id
+    ${api_result}=    restApi.ApiChameleonPut    CH_CORE_SITES    ${putSiteDict}    ${siteID}
+    Should Be True    ${api_result}
+    ${getResultAfterPut}=    restApi.ApiChameleonGet    CH_CORE_SITES    ${siteID}
+    ${test_result}=    utils.compare_dict    ${putSiteDict}    ${getResultAfterPut}
+    Should Be True    ${test_result}
+
+Test Delete Site API
+    [Arguments]    ${listIndex}
+    ${json_result}=    restApi.ApiGet    CH_CORE_SITES
+    ${json_result_list}=    Get From Dictionary    ${json_result}    items
+    ${siteList}=    Get Variable Value    ${slist}
+    ${siteDict}=    utils.listToDict    ${siteList}    ${listIndex}
+    ${name}=    utils.getFieldValueFromDict    ${siteDict}    name
+    Log    ${name}
+    ${siteDict}=    utils.getDictFromListofDict    ${json_result_list}    name    ${name}
+    Log    ${siteDict}
+    ${siteId}=    utils.getFieldValueFromDict    ${siteDict}    id
+    Log    ${siteId}
+    ${test_result}=    restApi.ApiChameleonDelete    CH_CORE_SITES    ${siteId}
+    Should Be True    ${test_result}
diff --git a/src/test/cord-api/Tests/Ch_SliceTest.txt b/src/test/cord-api/Tests/Ch_SliceTest.txt
new file mode 100644
index 0000000..565e1cb
--- /dev/null
+++ b/src/test/cord-api/Tests/Ch_SliceTest.txt
@@ -0,0 +1,72 @@
+*** Settings ***
+Documentation     Test suite for Slice API verification
+Suite Setup       Read InputFile
+Test Template     Verify Slice API functionality
+Library           Collections
+Library           String
+Library           OperatingSystem
+Library           XML
+Library           RequestsLibrary
+Library           ../Framework/utils/utils.py
+Library           ../Framework/restApi.py
+Variables         ../Properties/RestApiProperties.py
+
+*** Variables ***
+${USER}           admin
+${PASSWORD}       admin
+${PATHFILE}       ${CURDIR}/data/Ch_Slice.json
+${IP}             ${SERVER_IP}
+${PORT}           ${SERVER_PORT}
+
+*** Test Cases ***    TYPE        LISTINDEX
+Test Add Slice-1      CREATE      0
+
+Test Get Slice-1      RETRIEVE    0
+
+Test Delete Slice-1
+                      DELETE      0
+
+*** Keywords ***
+Read InputFile
+    ${sliceList} =    utils.jsonToList    ${PATHFILE}    SliceInfo
+    Set Suite Variable    ${sList}    ${sliceList}
+
+Verify Slice API functionality
+    [Arguments]    ${type}    ${listIndex}
+    Run Keyword If    "${type}" == "CREATE"    Test Post Slice API    ${listIndex}
+    Run Keyword If    "${type}" == "RETRIEVE"    Test Get Slice API    ${listIndex}
+    Run Keyword If    "${type}" == "DELETE"    Test Delete Slice API    ${listIndex}
+
+Test Post Slice API
+    [Arguments]    ${listIndex}
+    ${sliceList} =    Get Variable Value    ${sList}
+    ${sliceDict}=    utils.listToDict    ${sliceList}    ${listIndex}
+    ${api_result}=    restApi.ApiPost    CH_CORE_SLICES    ${sliceDict}
+    Should Be True    ${api_result}
+
+Test Get Slice API
+    [Arguments]    ${listIndex}
+    ${json_result}=    restApi.ApiGet    CH_CORE_SLICES
+    ${json_result_list}=    Get From Dictionary    ${json_result}    items
+    Log    ${json_result_list}
+    ${sliceList}=    Get Variable Value    ${sList}
+    ${sliceDict}=    utils.listToDict    ${sliceList}    ${listIndex}
+    ${sliceName}=    Get From Dictionary    ${sliceDict}    name
+    ${getJsonDict}=    utils.getDictFromListOfDict    ${json_result_list}    name    ${sliceName}
+    ${test_result}=    utils.compare_dict    ${sliceDict}    ${getJsonDict}
+    Should Be True    ${json_result}
+
+Test Delete Slice API
+    [Arguments]    ${listIndex}
+    ${json_getresult}=    restApi.ApiGet    CH_CORE_SLICES
+    ${json_getresult_list}=    Get From Dictionary    ${json_getresult}    items
+    ${sliceList}=    Get Variable Value    ${sList}
+    ${sliceDict}=    utils.listToDict    ${sList}    ${listIndex}
+    ${sliceName}=    utils.getFieldValueFromDict    ${sliceDict}    name
+    Log    ${sliceName}
+    ${getSliceDict}=    utils.getDictFromListofDict    ${json_getresult_list}    name    ${sliceName}
+    Log    ${getSliceDict}
+    ${sliceID}=    utils.getFieldValueFromDict    ${getSliceDict}    id
+    Log    ${sliceID}
+    ${test_result}=    restApi.ApiChameleonDelete    CH_CORE_SLICES    ${sliceID}
+    Should be True    ${test_result}
diff --git a/src/test/cord-api/Tests/Ch_SubscriberTest.txt b/src/test/cord-api/Tests/Ch_SubscriberTest.txt
new file mode 100644
index 0000000..0d0e2e3
--- /dev/null
+++ b/src/test/cord-api/Tests/Ch_SubscriberTest.txt
@@ -0,0 +1,113 @@
+*** Settings ***
+Documentation     Test suite for Subscriber verification
+Suite Setup       Read InputFile
+Test Template     Verify Subscriber functionality
+Library           Collections
+Library           String
+Library           OperatingSystem
+Library           XML
+Library           RequestsLibrary
+Library           ../Framework/utils/utils.py
+Library           ../Framework/restApi.py
+
+*** Variables ***
+${USER}           admin
+${PASSWORD}       admin
+${PATHFILE}       ${CURDIR}/data/Ch_Subscriber.json
+${PATHFILE2}      ${CURDIR}/data/Ch_putSubscriber.json
+
+*** Test Cases ***    TYPE        LISTINDEX
+Test Create Subscriber-1
+                      CREATE      0
+
+Test Get_Subscriber-1
+                      RETRIEVE    0
+
+Test Edit Subscriber-1
+                      PUT         0
+
+Test Create Subscriber-2
+                      CREATE      1
+
+Test Get_Subscriber-2
+                      RETRIEVE    1
+
+Test Edit Subscriber-2
+                      PUT         1
+
+Test Create Subscriber-3
+                      CREATE      2
+
+Test Get_Subcriber-3
+                      RETRIEVE    2
+
+Test Edit Subscriber-3
+                      PUT         2
+
+*** Keywords ***
+Read InputFile
+    ${subscriberList} =    utils.jsonToList    ${PATHFILE}    SubscriberInfo
+    Set Suite Variable    ${slist}    ${subscriberList}
+    ${putSubscriberList}=    utils.jsonToList    ${PATHFILE2}    SubscriberInfo
+    Set Suite Variable    ${putList}    ${putSubscriberList}
+
+Verify Subscriber functionality
+    [Arguments]    ${type}    ${listIndex}
+    Run Keyword If    "${type}" == "CREATE"    Test Post Subscriber API    ${listIndex}
+    Run Keyword If    "${type}" == "RETRIEVE"    Test Get Subscriber API    ${listIndex}
+    Run Keyword If    "${type}" == "DELETE"    Test Delete Subscriber API    ${listIndex}
+    Run Keyword If    "${type}" == "PUT"    Test Edit Subscriber API    ${listIndex}
+
+Test Post Subscriber API
+    [Arguments]    ${listIndex}
+    ${subscriberList} =    Get Variable Value    ${slist}
+    ${subscriberDict}=    utils.listToDict    ${subscriberList}    ${listIndex}
+    ${api_result}=    restApi.ApiPost    VOLT_SUBSCRIBER    ${subscriberDict}
+    Should Be True    ${api_result}
+
+Test Get Subscriber API
+    [Arguments]    ${listIndex}
+    ${json_result}=    restApi.ApiGet    VOLT_SUBSCRIBER
+    Log    ${json_result}
+    ${subscriberList}=    Get Variable Value    ${slist}
+    ${subscriberDict}=    utils.listToDict    ${subscriberList}    ${listIndex}
+    ${AccountNum}=    utils.getFieldValueFromDict    ${subscriberDict}    service_specific_id
+    Log    ${AccountNum}
+    ${json_result_list}=    Get From dictionary    ${json_result}    items
+    ${getJsonDict}=    utils.getDictFromListOfDict    ${json_result_list}    service_specific_id    ${AccountNum}
+    Log    ${getJsonDict}
+    Log    ${subscriberDict}
+    ${test_result}=    utils.compare_dict    ${subscriberDict}    ${getJsonDict}
+    Should Be True    ${test_result}
+
+Test Edit Subscriber API
+    [Arguments]    ${listIndex}
+    ${get_result}=    restApi.ApiGet    VOLT_SUBSCRIBER
+    ${get_result_list}=    Get From Dictionary    ${get_result}    items
+    ${putSubscriberList}=    Get Variable Value    ${putList}
+    ${putSubscriberDict}=    utils.listToDict    ${putSubscriberList}    ${listIndex}
+    ${AcctNum}=    utils.getFieldValueFromDict    ${putSubscriberDict}    service_specific_id
+    Log    ${AcctNum}
+    ${subscriberDict}=    utils.getDictFromListofDict    ${get_result_list}    service_specific_id    ${AcctNum}
+    ${subscriberID}=    utils.getFieldValueFromDict    ${subscriberDict}    id
+    ${api_result}=    restApi.ApiChameleonPut    VOLT_SUBSCRIBER    ${putSubscriberDict}    ${subscriberID}
+    Should Be True    ${api_result}
+    ${getResultAfterPut}=    restApi.ApiGet    VOLT_SUBSCRIBER
+    ${getResultList_AfterPut}=    Get From Dictionary    ${getResultAfterPut}    items
+    ${getResultDict}=    utils.getDictFromListOfDict    ${getResultList_AfterPut}    service_specific_id    ${AcctNum}
+    ${test_result}=    utils.compare_dict    ${putSubscriberDict}    ${getResultDict}
+    Should Be True    ${test_result}
+
+Test Delete Subscriber API
+    [Arguments]    ${listIndex}
+    ${json_result}=    restApi.ApiGet    VOLT_SUBSCRIBER
+    ${subscriberList}=    Get Variable Value    ${slist}
+    ${subscriberDict}=    utils.listToDict    ${subscriberList}    ${listIndex}
+    ${AcctNum}=    utils.getFieldValueFromDict    ${subscriberDict}    service_specific_id
+    Log    ${AcctNum}
+    ${subscriberDict}=    utils.getDictFromListofDict    ${json_result}    service_specific_id    ${AcctNum}
+    Log    ${subscriberDict}
+    ${subscriberId}=    utils.getFieldValueFromDict    ${subscriberDict}    id
+    Log    ${subscriberId}
+    ${test_result}=    restApi.ApiDelete    VOLT_SUBSCRIBER    ${subscriberId}
+    Should Be True    ${test_result}
diff --git a/src/test/cord-api/Tests/Ch_UsersTest.txt b/src/test/cord-api/Tests/Ch_UsersTest.txt
new file mode 100644
index 0000000..cda8899
--- /dev/null
+++ b/src/test/cord-api/Tests/Ch_UsersTest.txt
@@ -0,0 +1,80 @@
+*** Settings ***
+Documentation     Test suite for Users API
+Suite Setup       Read InputFile
+Test Template     Verify User functionality
+Library           Collections
+Library           String
+Library           OperatingSystem
+Library           XML
+Library           RequestsLibrary
+Library           ../Framework/utils/utils.py
+Library           ../Framework/restApi.py
+
+*** Variables ***
+${USER}           admin
+${PASSWORD}       admin
+${PATHFILE}       ${CURDIR}/data/Ch_Users.json
+
+*** Test Cases ***    TYPE        LISTINDEX
+Test Add User-1       CREATE      0
+
+Test Get User-1       RETRIEVE    0
+
+Test Delete User-1    DELETE      0
+
+Test Add User-2       CREATE      1
+
+Test Get User-2       RETRIEVE    1
+
+Test Delete User-2    DELETE      1
+
+Test Add User-3       CREATE      2
+
+Test Get User-3       RETRIEVE    2
+
+Test Delete User-3    DELETE      2
+
+*** Keywords ***
+Read InputFile
+    ${userList} =    utils.jsonToList    ${PATHFILE}    UserInfo
+    Set Suite Variable    ${uList}    ${userList}
+
+Verify User functionality
+    [Arguments]    ${type}    ${listIndex}
+    Run Keyword If    "${type}" == "CREATE"    Test Post Users API    ${listIndex}
+    Run Keyword If    "${type}" == "RETRIEVE"    Test Get Users API    ${listIndex}
+    Run Keyword If    "${type}" == "DELETE"    Test Delete Users API    ${listIndex}
+
+Test Post Users API
+    [Arguments]    ${listIndex}
+    ${userList} =    Get Variable Value    ${uList}
+    ${userDict}=    utils.listToDict    ${userList}    ${listIndex}
+    ${api_result}=    restApi.ApiPost    CH_CORE_USERS    ${userDict}
+    Should Be True    ${api_result}
+
+Test Get Users API
+    [Arguments]    ${listIndex}
+    ${json_result}=    restApi.ApiGet    CH_CORE_USERS
+    ${json_result_list}=    Get From Dictionary    ${json_result}    items
+    Log    ${json_result_list}
+    ${userList}=    Get Variable Value    ${uList}
+    ${inputDict}=    utils.listToDict    ${userList}    ${listIndex}
+    ${email}=    utils.getFieldValueFromDict    ${inputDict}    email
+    ${getJsonDict}=    utils.getDictFromListOfDict    ${json_result_list}    email    ${email}
+    ${test_result}=    utils.compare_dict    ${inputDict}    ${getJsonDict}
+    Should Be True    ${json_result}
+
+Test Delete Users API
+    [Arguments]    ${listIndex}
+    ${json_getresult}=    restApi.ApiGet    CH_CORE_USERS
+    ${json_getresult_list}=    Get From Dictionary    ${json_getresult}    items
+    ${userList}=    Get Variable Value    ${uList}
+    ${userDict}=    utils.listToDict    ${uList}    ${listIndex}
+    ${email}=    utils.getFieldValueFromDict    ${userDict}    email
+    Log    ${email}
+    ${getUserDict}=    utils.getDictFromListofDict    ${json_getresult_list}    email    ${email}
+    Log    ${getUserDict}
+    ${userID}=    utils.getFieldValueFromDict    ${getUserDict}    id
+    Log    ${userID}
+    ${test_result}=    restApi.ApiChameleonDelete    CH_CORE_USERS    ${userID}
+    Should be True    ${test_result}
diff --git a/src/test/cord-api/Tests/Ch_VoltTenant.txt b/src/test/cord-api/Tests/Ch_VoltTenant.txt
new file mode 100644
index 0000000..60b4a41
--- /dev/null
+++ b/src/test/cord-api/Tests/Ch_VoltTenant.txt
@@ -0,0 +1,69 @@
+*** Settings ***
+Documentation     Test suite for volt Tenant Verification - Chameleon API
+Suite Setup       Read InputFile
+Test Template     Verify volt Tenant Functionality
+Library           Collections
+Library           String
+Library           OperatingSystem
+Library           XML
+Library           RequestsLibrary
+Library           ../Framework/utils/utils.py
+Library           ../Framework/restApi.py
+
+*** Variables ***
+${USER}           admin
+${PASSWORD}       admin
+${PATHFILE}       ${CURDIR}/data/Ch_VoltTenant.json
+${PATHFILE2}      ${CURDIR}/data/Ch_putVoltTenant.json
+
+*** Test Cases ***    TYPE      LISTINDEX
+Test volt Tenant-1    CREATE    0
+
+Test volt Tenant-2    CREATE    1
+
+Test volt Tenant-3    CREATE    2
+
+*** Keywords ***
+Read InputFile
+    ${voltList} =    utils.jsonToList    ${PATHFILE}    voltSubscriberInfo
+    Set Suite Variable    ${vlist}    ${voltList}
+    ${putvoltList}=    utils.jsonToList    ${PATHFILE2}    voltSubscriberInfo
+    Set Suite Variable    ${putList}    ${putvoltList}
+
+Verify volt Tenant Functionality
+    [Arguments]    ${type}    ${listIndex}
+    Run Keyword If    "${type}" == "CREATE"    Test Post volt Tenant API    ${listIndex}
+
+Test Post volt Tenant API
+    [Arguments]    ${listIndex}
+    ${voltTenantList} =    Get Variable Value    ${vlist}
+    ${voltTenantDict}=    utils.listToDict    ${voltTenantList}    ${listIndex}
+    ${voltDict}=    Get From Dictionary    ${voltTenantDict}    voltTenant
+    ${service_specific_id}=    Get From Dictionary    ${voltTenantDict}    service_specific_id
+    ${get_result}=    restApi.ApiGet    VOLT_SUBSCRIBER
+    ${get_result_list}=    Get From Dictionary    ${get_result}    items
+    ${subscriberDict}=    utils.getDictFromListofDict    ${get_result_list}    service_specific_id    ${service_specific_id}
+    ${subscriberID}=    utils.getFieldValueFromDict    ${subscriberDict}    id
+    Log    ${subscriberID}
+    ${updatedVoltDict}=    utils.setFieldValueInDict    ${voltDict}    subscriber_root_id    ${subscriberID}
+    ${api_result}=    restApi.ApiPost    VOLT_TENANT    ${updatedVoltDict}
+    Should Be True    ${api_result}
+    # Verifying Get operation after POST
+    ${getVolt_result}=    restApi.ApiGet    VOLT_TENANT
+    ${getVolt_result_list}=    Get From Dictionary    ${getVolt_result}    items
+    ${getJsonDict}=    utils.getDictFromListOfDict    ${getVolt_result_list}    subscriber_root_id    ${subscriberID}
+    ${test_result}=    utils.compare_dict    ${voltDict}    ${getJsonDict}
+    Should Be True    ${test_result}
+    # Verifying PUT operation
+    ${putvoltList}=    Get Variable Value    ${putList}
+    ${putVoltDict}=    utils.listToDict    ${putvoltList}    ${listIndex}
+    ${putvoltTenantDict}=    Get From Dictionary    ${putVoltDict}    voltTenant
+    ${voltID}=    utils.getFieldValueFromDict    ${getJsonDict}    id
+    ${put_result}=    restApi.ApiChameleonPut    VOLT_TENANT    ${putvoltTenantDict}    ${voltID}
+    Should Be True    ${put_result}
+    # Verifying Get after PUT operation
+    #${getVolt_afterPut}=    restApi.ApiGet    VOLT_TENANT
+    #${getVoltDict}=    utils.getDictFromListofDict    ${getVolt_afterPut}    id    ${voltID}
+    ${getVoltDict}=    utils.ApiChemeleonGet    VOLT_TENANT    ${voltID}
+    ${result_afterPut}=    utils.compare_dict    ${putvoltTenantDict}    ${getVoltDict}
+    Should Be True    ${result_afterPut}
diff --git a/src/test/cord-api/Tests/Ch_defaultImagesCheck.txt b/src/test/cord-api/Tests/Ch_defaultImagesCheck.txt
new file mode 100644
index 0000000..541cf80
--- /dev/null
+++ b/src/test/cord-api/Tests/Ch_defaultImagesCheck.txt
@@ -0,0 +1,37 @@
+*** Settings ***
+Documentation     Test suite for checking default images for R-CORD
+Suite Setup       Read InputFile
+Test Template     Verify Image Check
+Library           Collections
+Library           String
+Library           OperatingSystem
+Library           XML
+Library           RequestsLibrary
+Library           ../Framework/utils/utils.py
+Library           ../Framework/restApi.py
+
+*** Variables ***
+${USER}           admin
+${PASSWORD}       admin
+${PATHFILE}       ${CURDIR}/data/defaultImages.json
+
+*** Test Cases ***    TYPE
+Test Default Images on R-CORD
+                      IMAGE
+
+*** Keywords ***
+Read InputFile
+    ${imageList}=    utils.jsonToList    ${PATHFILE}    imagesInfo
+    Set Suite Variable    ${ilist}    ${imageList}
+
+Verify Image Check
+    [Arguments]    ${type}
+    Run Keyword If    "${type}" == "IMAGE"    Test Image Check
+
+Test Image Check
+    ${json_result}=    restApi.ApiGet    CH_CORE_IMAGES
+    ${json_result_list}=    Get From Dictionary    ${json_result}    items
+    Log    ${json_result_list}
+    ${imageList}=    Get Variable Value    ${ilist}
+    ${test_result}=    utils.compare_list_of_dicts    ${imageList}    ${json_result_list}
+    Should Be True    ${test_result}
diff --git a/src/test/cord-api/Tests/UISliceTest.txt b/src/test/cord-api/Tests/UISliceTest.txt
new file mode 100644
index 0000000..d1cd2e9
--- /dev/null
+++ b/src/test/cord-api/Tests/UISliceTest.txt
@@ -0,0 +1,87 @@
+*** Settings ***
+Documentation     Test suite for Slice API verification
+Suite Setup       Read InputFile
+Test Template     Verify Slice API functionality
+Library           Collections
+Library           String
+Library           OperatingSystem
+Library           XML
+Library           RequestsLibrary
+Library           ../Framework/utils/utils.py
+Library           ../Framework/restApi.py
+| Variables |     ../Properties/RestApiProperties.py
+
+*** Variables ***
+${USER}           admin
+${PASSWORD}       admin
+${PATHFILE}       ${CURDIR}/data/Slice.json
+| ${IP} |         ${SERVER_IP}
+| ${PORT} |       ${SERVER_PORT}
+
+*** Test Cases ***    TYPE        LISTINDEX
+Test Add Slice-1      CREATE      0
+
+Test Get Slice-1      RETRIEVE    0
+
+Test Delete Slice-1   DELETE      0
+
+Test Add Slice-2      CREATE      1
+
+Test Get Slice-2      RETRIEVE    1
+
+Test Delete Slice-2   DELETE      1
+
+*** Keywords ***
+Read InputFile
+    ${sliceList} =    utils.jsonToList    ${PATHFILE}    SliceInfo
+    Set Suite Variable    ${sList}    ${sliceList}
+    ${site}=    Catenate    SEPARATOR=    http://    ${IP}    :    ${PORT}    /api/core/sites/1/
+    Set Suite Variable    ${site}    ${site}
+    ${creator}=    Catenate    SEPARATOR=    http://    ${IP}    :    ${PORT}    /api/core/users/1/
+    Set Suite Variable    ${creator}    ${creator}
+
+Verify Slice API functionality
+    [Arguments]    ${type}    ${listIndex}
+    Run Keyword If    "${type}" == "CREATE"    Test Post Slice API    ${listIndex}
+    Run Keyword If    "${type}" == "RETRIEVE"    Test Get Slice API    ${listIndex}
+    Run Keyword If    "${type}" == "DELETE"    Test Delete Slice API    ${listIndex}
+
+Test Post Slice API
+    [Arguments]    ${listIndex}
+    ${sliceList} =    Get Variable Value    ${sList}
+    ${sliceDict}=    utils.listToDict    ${sliceList}    ${listIndex}
+    ${site}=    Get Variable Value    ${site}
+    ${sliceDict}=     utils.setFieldValueInDict   ${sliceDict}   site   ${site}
+    ${creator}=    Get Variable Value    ${creator}
+    ${sliceDict}=     utils.setFieldValueInDict   ${sliceDict}   creator   ${creator}
+    ${api_result}=    restApi.ApiPost    CORE_SLICES    ${sliceDict}
+    Should Be True    ${api_result}
+
+Test Get Slice API
+    [Arguments]    ${listIndex}
+    ${json_result}=    restApi.ApiGet    CORE_SLICES
+    Log    ${json_result}
+    ${sliceList}=    Get Variable Value    ${sList}
+    ${sliceDict}=    utils.listToDict    ${sliceList}    ${listIndex}
+    ${site}=    Get Variable Value    ${site}
+    ${sliceDict}=     utils.setFieldValueInDict   ${sliceDict}   site   ${site}
+    ${creator}=    Get Variable Value    ${creator}
+    ${sliceDict}=     utils.setFieldValueInDict   ${sliceDict}   creator   ${creator}
+    ${ID}=    utils.getFieldValueFromDict    ${sliceDict}    id
+    ${getJsonDict}=    utils.getDictFromListOfDict    ${json_result}    id    ${ID}
+    ${test_result}=    utils.compare_dict    ${sliceDict}    ${getJsonDict}
+    Should Be True    ${json_result}
+
+Test Delete Slice API
+    [Arguments]    ${listIndex}
+    ${json_getresult}=    restApi.ApiGet    CORE_SLICES
+    ${sliceList}=    Get Variable Value    ${sList}
+    ${sliceDict}=    utils.listToDict    ${sList}    ${listIndex}
+    ${sliceName}=    utils.getFieldValueFromDict    ${sliceDict}    name
+    Log    ${sliceName}
+    ${getSliceDict}=    utils.getDictFromListofDict    ${json_getresult}    name    ${sliceName}
+    Log    ${getSliceDict}
+    ${sliceID}=    utils.getFieldValueFromDict    ${getSliceDict}    id
+    Log    ${sliceID}
+    ${test_result}=    restApi.ApiDelete    CORE_SLICES    ${sliceID}
+    Should be True    ${test_result}
diff --git a/src/test/cord-api/Tests/data/Ch_Deployment.json b/src/test/cord-api/Tests/data/Ch_Deployment.json
new file mode 100644
index 0000000..07f0f56
--- /dev/null
+++ b/src/test/cord-api/Tests/data/Ch_Deployment.json
@@ -0,0 +1,11 @@
+{
+    "DeploymentInfo":
+    [
+        {
+            "name": "test-deployment-1"
+        },
+        {
+            "name": "test-deployment-2"
+        }
+    ]
+}
diff --git a/src/test/cord-api/Tests/data/Ch_Flavors.json b/src/test/cord-api/Tests/data/Ch_Flavors.json
new file mode 100644
index 0000000..0437db2
--- /dev/null
+++ b/src/test/cord-api/Tests/data/Ch_Flavors.json
@@ -0,0 +1,12 @@
+{
+     "flavorsInfo": [
+            {
+            "flavor": "mq.test",
+            "name": "mq.test"
+            },
+            {
+            "flavor": "mq.test2",
+            "name": "mq.test2"
+             }
+    ]
+}
diff --git a/src/test/cord-api/Tests/data/Ch_Node.json b/src/test/cord-api/Tests/data/Ch_Node.json
new file mode 100644
index 0000000..245bcf3
--- /dev/null
+++ b/src/test/cord-api/Tests/data/Ch_Node.json
@@ -0,0 +1,13 @@
+{
+    "NodeInfo":
+    [
+        {
+            "name": "test-node-1",
+            "site_deployment_id": 1
+        },
+        {
+            "name": "test-node-2",
+            "site_deployment_id": 1
+        }
+    ]
+}
diff --git a/src/test/cord-api/Tests/data/Ch_SanityInstance.json b/src/test/cord-api/Tests/data/Ch_SanityInstance.json
new file mode 100644
index 0000000..d707b52
--- /dev/null
+++ b/src/test/cord-api/Tests/data/Ch_SanityInstance.json
@@ -0,0 +1,20 @@
+{
+     "InstanceInfo": [
+            {
+            "name": "test-instance1",
+            "image_id": 1,
+            "slice_id": 1,
+            "deployment_id": 1,
+            "node_id": 1,
+            "creator_id" : 1
+            },
+            {
+            "name": "test-instance",
+            "image_id": 1,
+            "slice_id": 1,
+            "deployment_id": 1,
+            "node_id": 1,
+            "creator_id" : 1
+             }
+    ]
+}
diff --git a/src/test/cord-api/Tests/data/Ch_Service.json b/src/test/cord-api/Tests/data/Ch_Service.json
new file mode 100644
index 0000000..0dd5193
--- /dev/null
+++ b/src/test/cord-api/Tests/data/Ch_Service.json
@@ -0,0 +1,13 @@
+{
+    "ServiceInfo":
+    [
+        {
+            "name": "test-service-1",
+            "description": "Test service No.1"
+        },
+        {
+            "name": "test-service-2",
+            "description": "Test service No.2"
+        }
+    ]
+}
diff --git a/src/test/cord-api/Tests/data/Ch_Site.json b/src/test/cord-api/Tests/data/Ch_Site.json
new file mode 100644
index 0000000..feffe3b
--- /dev/null
+++ b/src/test/cord-api/Tests/data/Ch_Site.json
@@ -0,0 +1,15 @@
+{
+    "SiteInfo":
+    [
+        {
+            "name": "test-site-1",
+            "login_base":"testsite1",
+            "abbreviated_name":"ts1"
+        },
+        {
+            "name": "test-site-2",
+            "login_base":"testsite2",
+            "abbreviated_name":"ts2"
+        }
+    ]
+}
diff --git a/src/test/cord-api/Tests/data/Ch_Slice.json b/src/test/cord-api/Tests/data/Ch_Slice.json
new file mode 100644
index 0000000..ee795b7
--- /dev/null
+++ b/src/test/cord-api/Tests/data/Ch_Slice.json
@@ -0,0 +1,14 @@
+{
+    "SliceInfo": [
+        {
+            "name": "mysite_test-slice-1",
+            "site_id": 1,
+            "creator_id": 1
+        },
+        {
+            "name": "mysite_test-slice-2",
+            "site_id": 2,
+            "creator_id": 2
+        }
+    ]
+}
diff --git a/src/test/cord-api/Tests/data/Ch_Subscriber.json b/src/test/cord-api/Tests/data/Ch_Subscriber.json
new file mode 100644
index 0000000..d5e81a1
--- /dev/null
+++ b/src/test/cord-api/Tests/data/Ch_Subscriber.json
@@ -0,0 +1,28 @@
+{
+    "SubscriberInfo" : [
+    {
+            "cdn_enable": true,
+            "uplink_speed": 1000000000,
+            "downlink_speed": 1000000000,
+            "enable_uverse": true,
+            "status": "enabled",
+            "service_specific_id": "304",
+            "name": "My House"
+    },
+    {
+            "cdn_enable": false,
+            "uplink_speed": 500000000,
+            "downlink_speed": 500000000,
+            "enable_uverse": false,
+            "status": "enabled",
+            "service_specific_id": "305",
+            "name": "My House-305"
+    },
+    {
+            "cdn_enable": true,
+            "uplink_speed": 500000000,
+            "service_specific_id": "306",
+            "name": "My House-306"
+    }
+  ]
+}
diff --git a/src/test/cord-api/Tests/data/Ch_Users.json b/src/test/cord-api/Tests/data/Ch_Users.json
new file mode 100644
index 0000000..0d8b415
--- /dev/null
+++ b/src/test/cord-api/Tests/data/Ch_Users.json
@@ -0,0 +1,26 @@
+{
+  "UserInfo": [
+  {
+   "firstname" : "TestUser001",
+   "lastname" : "User001",
+   "password" : "TestUser001",
+   "email" : "TestUser001@onlab.us",
+   "site_id": 1
+   },
+  {
+   "firstname" : "TestUser002",
+   "lastname" : "User002",
+   "password" : "TestUser002",
+   "email" : "TestUser002@onlab.us",
+   "site_id": 1
+   },
+  {
+   "firstname" : "TestUser003",
+   "lastname" : "User003",
+   "password" : "TestUser003",
+   "email" : "TestUser003@onlab.us",
+   "site_id": 1
+   }
+ ]
+}
+
diff --git a/src/test/cord-api/Tests/data/Ch_VoltTenant.json b/src/test/cord-api/Tests/data/Ch_VoltTenant.json
new file mode 100644
index 0000000..305ba90
--- /dev/null
+++ b/src/test/cord-api/Tests/data/Ch_VoltTenant.json
@@ -0,0 +1,31 @@
+{
+    "voltSubscriberInfo" : [
+    {
+      "voltTenant" : 
+       {
+         "s_tag" : 114,
+         "c_tag" : 224,
+         "subscriber_root_id" : ""
+       },
+       "service_specific_id" : "304"
+    },
+    {
+     "voltTenant" : 
+      {
+        "s_tag" : "121",
+        "c_tag" : "333",
+        "subscriber_root_id" : ""
+      },
+      "service_specific_id" : "305"
+    },
+    {
+     "voltTenant" :
+      {
+        "s_tag" : "131",
+        "c_tag" : "444",
+        "subscriber_root_id" : ""
+      },
+     "service_specific_id" : "306"
+    }
+ ]
+} 
diff --git a/src/test/cord-api/Tests/data/Ch_defaultServices.json b/src/test/cord-api/Tests/data/Ch_defaultServices.json
new file mode 100644
index 0000000..4128481
--- /dev/null
+++ b/src/test/cord-api/Tests/data/Ch_defaultServices.json
@@ -0,0 +1,13 @@
+{
+    "ServiceInfo":
+    [
+        {"name": "ONOS_CORD"},
+        {"name": "vtn"},
+        {"name": "fabric"},
+        {"name": "ONOS_Fabric"},
+        {"name": "vrouter"},
+        {"name": "vsg"},
+        {"name": "volt"},
+        {"name": "vtr"}
+    ]
+}
diff --git a/src/test/cord-api/Tests/data/Ch_putService.json b/src/test/cord-api/Tests/data/Ch_putService.json
new file mode 100644
index 0000000..8a962a7
--- /dev/null
+++ b/src/test/cord-api/Tests/data/Ch_putService.json
@@ -0,0 +1,13 @@
+{
+    "ServiceInfo":
+    [
+        {
+            "name": "test-service-1",
+            "description": "Test service No.1 - Edited"
+        },
+        {
+            "name": "test-service-2",
+            "description": "Test service No.2 - Edited"
+        }
+    ]
+}
diff --git a/src/test/cord-api/Tests/data/Ch_putSite.json b/src/test/cord-api/Tests/data/Ch_putSite.json
new file mode 100644
index 0000000..6e1e4b3
--- /dev/null
+++ b/src/test/cord-api/Tests/data/Ch_putSite.json
@@ -0,0 +1,15 @@
+{
+    "SiteInfo":
+    [
+        {
+            "name": "test-site-1",
+            "login_base":"testsite1",
+            "abbreviated_name":"ts1 - edited"
+        },
+        {
+            "name": "test-site-2",
+            "login_base":"testsite2",
+            "abbreviated_name":"ts2 - edited"
+        }
+    ]
+}
diff --git a/src/test/cord-api/Tests/data/Ch_putSubscriber.json b/src/test/cord-api/Tests/data/Ch_putSubscriber.json
new file mode 100644
index 0000000..32f3607
--- /dev/null
+++ b/src/test/cord-api/Tests/data/Ch_putSubscriber.json
@@ -0,0 +1,23 @@
+{
+    "SubscriberInfo" : [
+    {
+            "cdn_enable": true,
+            "downlink_speed": 2000000000,
+            "service_specific_id": "304",
+            "name": "My House-Edited"
+    },
+    {
+            "uplink_speed": 100000000,
+            "enable_uverse": true,
+            "status": "disabled",
+            "service_specific_id": "305",
+            "name": "My House-305-Edited"
+    },
+    {
+            "cdn_enable": false,
+            "uplink_speed": 600000000,
+            "service_specific_id": "306",
+            "name": "My House-306-Edited"
+    }
+  ]
+}
diff --git a/src/test/cord-api/Tests/data/Ch_putVoltTenant.json b/src/test/cord-api/Tests/data/Ch_putVoltTenant.json
new file mode 100644
index 0000000..d3f4440
--- /dev/null
+++ b/src/test/cord-api/Tests/data/Ch_putVoltTenant.json
@@ -0,0 +1,28 @@
+{
+    "voltSubscriberInfo" : [
+    {
+      "voltTenant" : 
+       {
+         "s_tag" : 118,
+         "c_tag" : 228
+       },
+       "service_specific_id" : "204"
+    },
+    {
+     "voltTenant" : 
+      {
+        "s_tag" : "112",
+        "c_tag" : "331"
+      },
+      "service_specific_id" : "305"
+    },
+    {
+     "voltTenant" :
+      {
+        "s_tag" : "112",
+        "c_tag" : "442"
+      },
+      "service_specific_id" : "306"
+    }
+ ]
+}