| *** Settings *** |
| Library OperatingSystem |
| Library RequestsLibrary |
| Library requests |
| |
| *** Variables *** |
| ${TARGETURL} https://${HOST_IP}:9509/services/search-data-service/v1/search/indexes/test-index3 |
| ${INDEXDATA} {"fields": [{"name": "Name", "data-type": "string"}, {"name": "Number", "data-type": "long"}]} |
| ${DOCUMENTDATA} {"Name": "A", "Number": 5} |
| |
| *** Test Cases *** |
| Index Create Test |
| [Documentation] Create an index and verify success |
| ${resp}= PutWithCert ${TARGETURL} ${INDEXDATA} |
| Should Be Equal As Strings ${resp.status_code} 201 |
| |
| Insert Document Test |
| [Documentation] Insert a document into the previously created index |
| ${resp}= PutWithCert ${TARGETURL}/documents/testdoc ${DOCUMENTDATA} |
| Should Be Equal As Strings ${resp.status_code} 201 |
| |
| Get Document Test |
| [Documentation] Get the document that was just created |
| ${resp} GetWithCert ${TARGETURL}/documents/testdoc |
| ${content}= Evaluate $resp.json().get('content') |
| ${originaljson}= Evaluate json.loads('${DOCUMENTDATA}') json |
| Should Be Equal As Strings ${resp.status_code} 200 |
| Should Be Equal ${content} ${originaljson} |
| |
| Delete Index Test |
| [Documentation] Delete the index |
| ${resp}= DeleteWithCert ${TARGETURL} |
| Should Be Equal As Strings ${resp.status_code} 200 |
| |
| *** Keywords *** |
| PutWithCert |
| [Arguments] ${url} ${data} |
| ${certinfo}= Evaluate ('${CURDIR}/publickey.crt', '${CURDIR}/private.key') |
| ${resp}= Evaluate requests.put('${url}', data='${data}', cert=${certinfo}, verify=False) requests |
| [return] ${resp} |
| |
| PostWithCert |
| [Arguments] ${url} ${data} |
| ${certinfo}= Evaluate ('${CURDIR}/publickey.crt', '${CURDIR}/private.key') |
| ${resp}= Evaluate requests.post('${url}', data='${data}', cert=${certinfo}, verify=False) requests |
| [return] ${resp} |
| |
| GetWithCert |
| [Arguments] ${url} |
| ${certinfo}= Evaluate ('${CURDIR}/publickey.crt', '${CURDIR}/private.key') |
| ${resp}= Evaluate requests.get('${url}', cert=${certinfo}, verify=False) requests |
| [return] ${resp} |
| |
| DeleteWithCert |
| [Arguments] ${url} |
| ${certinfo}= Evaluate ('${CURDIR}/publickey.crt', '${CURDIR}/private.key') |
| ${resp}= Evaluate requests.delete('${url}', cert=${certinfo}, verify=False) requests |
| [return] ${resp} |
| |