Move CSIT to integration/csit repo
[integration/csit.git] / tests / aai / resources / error_handling_suite / error_412_404.robot
1 *** Settings ***
2 Library       OperatingSystem
3 Library       RequestsLibrary
4 Library       requests
5 Library       Collections
6
7 *** Variables ***
8 ${PSERVERKEYVALUE}  pserver-integration-test1
9 ${PSERVERURL}       https://${HOST_IP}:8443/aai/v11/cloud-infrastructure/pservers/pserver/${PSERVERKEYVALUE}
10 ${PSERVERDATA}      {"hostname":"${PSERVERKEYVALUE}"}
11
12 *** Test Cases ***
13 Run AAI Put Pserver
14     [Documentation]             Create an pserver object
15     ${resp}=                    PutWithCert              ${PSERVERURL}              ${PSERVERDATA}
16     log                         ${PSERVERURL}
17     log                         ${resp.text}
18     Should Be Equal As Strings  ${resp.status_code}      201
19         
20 Run AAI Put Pserver again
21     [Documentation]             Create an pserver object again without resource-version
22     ${resp}=                    PutWithCert              ${PSERVERURL}              ${PSERVERDATA}
23     log                         ${PSERVERURL}
24     log                         ${resp.text}
25     Should Be Equal As Strings  ${resp.status_code}      412    
26
27 Run AAI Get Pserver
28     [Documentation]             Get the pserver object just created
29     ${resp}                     GetWithCert              ${PSERVERURL}
30     log                         ${resp}
31     log                         ${resp.json()}
32     Should Be Equal As Strings  ${resp.status_code}      200
33     ${resource_version}=        Evaluate                 $resp.json().get('resource-version')
34     Set Global Variable                 ${resource_version}
35
36 Run AAI Delete Pserver
37     [Documentation]             Delete the pserver just created
38     ${resp}=                    DeleteWithCert           ${PSERVERURL}?resource-version=${resource_version}
39     log                         ${resp.text}
40     Should Be Equal As Strings  ${resp.status_code}      204
41         
42 Run AAI Get Pserver
43     [Documentation]             Get the pserver object just deleted
44     ${resp}                     GetWithCert              ${PSERVERURL}
45     log                         ${resp}
46     log                         ${resp.json()}
47     Should Be Equal As Strings  ${resp.status_code}      404    
48
49 *** Keywords ***
50 PutWithCert
51     [Arguments]      ${url}      ${data}
52     ${headers}=      Create Dictionary     Accept=application/json    Content-Type=application/json    X-TransactionId=integration-aai    X-FromAppId=integration-aai   Authorization=Basic QUFJOkFBSQ==
53     ${certinfo}=     Evaluate    ('${CURDIR}/aai.crt', '${CURDIR}/aai.key')
54     ${resp}=         Evaluate    requests.put('${url}', data='${data}', headers=${headers}, cert=${certinfo}, verify=False)    requests
55     [return]         ${resp}
56
57 PostWithCert
58     [Arguments]      ${url}      ${data}
59     ${auth}=         Create List  AAI AAI
60     ${headers}=      Create Dictionary     Accept=application/json    Content-Type=application/json    X-TransactionId=integration-aai    X-FromAppId=integration-aai   Authorization=Basic QUFJOkFBSQ==
61     ${certinfo}=     Evaluate    ('${CURDIR}/aai.crt', '${CURDIR}/aai.key')
62     ${resp}=         Evaluate    requests.post('${url}', data='${data}', headers=${headers}, cert=${certinfo}, verify=False)    requests
63     [return]         ${resp}
64
65 GetWithCert
66     [Arguments]      ${url}
67     ${headers}=      Create Dictionary     Accept=application/json    Content-Type=application/json    X-TransactionId=integration-aai    X-FromAppId=integration-aai   Authorization=Basic QUFJOkFBSQ==
68     ${certinfo}=     Evaluate    ('${CURDIR}/aai.crt', '${CURDIR}/aai.key')
69     ${resp}=         Evaluate    requests.get('${url}', headers=${headers}, cert=${certinfo}, verify=False)    requests
70     [return]         ${resp}
71
72 DeleteWithCert
73     [Arguments]      ${url}
74     ${auth}=         Create List  AAI AAI
75     ${headers}=      Create Dictionary     Accept=application/json    Content-Type=application/json    X-TransactionId=integration-aai    X-FromAppId=integration-aai   Authorization=Basic QUFJOkFBSQ==
76     ${certinfo}=     Evaluate    ('${CURDIR}/aai.crt', '${CURDIR}/aai.key')
77     ${resp}=         Evaluate    requests.delete('${url}', headers=${headers}, cert=${certinfo}, verify=False)    requests
78     [return]         ${resp}