Chameleon API Tests
Change-Id: I8002eb19add6e296f034adcdf7801d2ee54744cf
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}