blob: fda6537f0eef65571bed55c8115a870e3fc90e31 [file] [log] [blame]
*** 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/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}
${siteDeployment}= Get Variable Value ${siteDeployment}
${nodeDict}= utils.setFieldValueInDict ${nodeDict} site_deployment ${siteDeployment}
${api_result}= restApi.ApiPost CORE_NODES ${nodeDict}
Should Be True ${api_result}
Test Get Node API
[Arguments] ${listIndex}
${json_result}= restApi.ApiGet CORE_NODES
Log ${json_result}
${nodeList}= Get Variable Value ${nlist}
${nodeDict}= utils.listToDict ${nodeList} ${listIndex}
${siteDeployment}= Get Variable Value ${siteDeployment}
${nodeDict}= utils.setFieldValueInDict ${nodeDict} site_deployment ${siteDeployment}
${name}= utils.getFieldValueFromDict ${nodeDict} name
${getJsonDict}= utils.getDictFromListOfDict ${json_result} name ${name}
${test_result}= utils.compare_dict ${nodeDict} ${getJsonDict}
Should Be True ${test_result}
Test Delete Node API
[Arguments] ${listIndex}
${json_result}= restApi.ApiGet CORE_NODES
${nodeList}= Get Variable Value ${nlist}
${nodeDict}= utils.listToDict ${nodeList} ${listIndex}
${name}= utils.getFieldValueFromDict ${nodeDict} name
Log ${name}
${nodeDict}= utils.getDictFromListofDict ${json_result} name ${name}
Log ${nodeDict}
${nodeId}= utils.getFieldValueFromDict ${nodeDict} id
Log ${nodeId}
${test_result}= restApi.ApiDelete CORE_NODES ${nodeId}
Should Be True ${test_result}