| *** settings *** |
| Library OperatingSystem |
| Library Process |
| Library String |
| Library Collections |
| Library RequestsLibrary |
| Library json |
| |
| |
| *** Variables *** |
| ${valid_heat_zip} ${SCRIPTS}/../tests/vnfsdk-ice/ice-server/heat_template_ok.zip |
| ${empty_heat_zip} ${SCRIPTS}/../tests/vnfsdk-ice/ice-server/heat_template_empty.zip |
| ${ice_uri} /onapapi/ice/v1/ |
| |
| *** Test Cases *** |
| |
| ICE health Check |
| [Documentation] Validate that ICE is up |
| Create Session ice_session http://${ICE_IP}:5000 |
| &{headers}= Create Dictionary Content-Type=application/json |
| |
| ${resp}= Get Request ice_session ${ice_uri} headers=${headers} |
| |
| Should Be Equal As Strings ${resp.status_code} 200 |
| |
| Check status code for valid HEAT based VNF package |
| [Documentation] Post a valid VNF package and expect 200 Response |
| ${fileData}= Get Binary File ${valid_heat_zip} |
| ${fileDir} ${fileName}= Split Path ${valid_heat_zip} |
| ${partData}= Create List ${fileName} ${fileData} application/octet-stream |
| &{fileParts}= Create Dictionary |
| Set To Dictionary ${fileParts} file=${partData} |
| |
| ${resp}= Post Request ice_session ${ice_uri} files=${fileParts} |
| |
| Log Receive HTTP Status code ${resp.status_code} |
| Should Be Equal As Strings ${resp.status_code} 200 |
| ${json} = Set Variable ${resp.json()} |
| ${message} = Get From Dictionary ${json} message |
| Should Be Equal ${message} OK |
| |
| Check status code for empty VNF package |
| [Documentation] Post an empty VNF package and expect 422 Response |
| ${fileData}= Get Binary File ${empty_heat_zip} |
| ${fileDir} ${fileName}= Split Path ${empty_heat_zip} |
| ${partData}= Create List ${fileName} ${fileData} application/octet-stream |
| &{fileParts}= Create Dictionary |
| Set To Dictionary ${fileParts} file=${partData} |
| |
| ${resp}= Post Request ice_session ${ice_uri} files=${fileParts} |
| |
| Log Receive HTTP Status code ${resp.status_code} |
| Should Be Equal As Strings ${resp.status_code} 422 |
| ${json} = Set Variable ${resp.json()} |
| ${message} = Get From Dictionary ${json} message |
| Should Be Equal ${message} Tests failed |
| |
| Check status code for invalid request |
| [Documentation] Post an invalid request and expect 400 Response |
| ${fileData}= Get Binary File ${empty_heat_zip} |
| ${fileDir} ${fileName}= Split Path ${empty_heat_zip} |
| ${partData}= Create List ${fileName} ${fileData} application/octet-stream |
| &{fileParts}= Create Dictionary |
| Set To Dictionary ${fileParts} foo=${partData} |
| |
| ${resp}= Post Request ice_session ${ice_uri} files=${fileParts} |
| |
| Log Receive HTTP Status code ${resp.status_code} |
| Should Be Equal As Strings ${resp.status_code} 400 |