blob: 75599ebf24fd255acc800da46e4f1b8971e73fd8 [file] [log] [blame]
*** 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 CORDRobot
Library ImportResource resources=CORDRobot
*** Variables ***
${USER} admin
${PASSWORD} admin
${PATHFILE} ${CURDIR}/data/Site.json
${PATHFILE2} ${CURDIR}/data/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}= CORDRobot.jsonToList ${PATHFILE} SiteInfo
Set Suite Variable ${slist} ${siteList}
${putSiteList}= CORDRobot.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}= CORDRobot.listToDict ${siteList} ${listIndex}
${api_result}= CORDRobot.ApiPost CORE_SITES ${siteDict}
Should Be True ${api_result}
Test Get Site API
[Arguments] ${listIndex}
${json_result}= CORDRobot.ApiGet CORE_SITES
Log ${json_result}
${siteList}= Get Variable Value ${slist}
${siteDict}= CORDRobot.listToDict ${siteList} ${listIndex}
${name}= CORDRobot.getFieldValueFromDict ${siteDict} name
${getJsonDict}= CORDRobot.getDictFromListOfDict ${json_result} name ${name}
${test_result}= CORDRobot.compare_dict ${siteDict} ${getJsonDict}
Should Be True ${test_result}
Test Edit Site API
[Arguments] ${listIndex}
${get_result}= CORDRobot.ApiGet CORE_SITES
${putSiteList}= Get Variable Value ${putList}
${putSiteDict}= CORDRobot.listToDict ${putSiteList} ${listIndex}
${name}= CORDRobot.getFieldValueFromDict ${putSiteDict} name
${siteDict}= CORDRobot.getDictFromListofDict ${get_result} name ${name}
${siteID}= CORDRobot.getFieldValueFromDict ${siteDict} id
${api_result}= CORDRobot.ApiPut CORE_SITES ${putSiteDict} ${siteID}
Should Be True ${api_result}
${getResultAfterPut}= CORDRobot.ApiGet CORE_SITES ${siteID}
${test_result}= CORDRobot.compare_dict ${putSiteDict} ${getResultAfterPut}
Should Be True ${test_result}
Test Delete Site API
[Arguments] ${listIndex}
${json_result}= CORDRobot.ApiGet CORE_SITES
${siteList}= Get Variable Value ${slist}
${siteDict}= CORDRobot.listToDict ${siteList} ${listIndex}
${name}= CORDRobot.getFieldValueFromDict ${siteDict} name
Log ${name}
${siteDict}= CORDRobot.getDictFromListofDict ${json_result} name ${name}
Log ${siteDict}
${siteId}= CORDRobot.getFieldValueFromDict ${siteDict} id
Log ${siteId}
${test_result}= CORDRobot.ApiDelete CORE_SITES ${siteId}
Should Be True ${test_result}