summaryrefslogtreecommitdiffstats
path: root/test/csit/tests/aai/search-data-service/suite1/test1.robot
blob: 86554a13a4389b2b3edb650f0c16bf71280dcc13 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
*** 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}