Add CSIT for Kafka
[integration/csit.git] / tests / integration / nfsimulator / netconf-server / resources / netconf-server-keywords.robot
1 *** Settings ***
2 Library           RequestsLibrary
3 Resource          ../../../../common.robot
4 Resource          ./netconf-server-properties.robot
5
6 *** Keywords ***
7
8 Verify That Server Is Healthy
9     [Documentation]  Verify that server is healthy
10     Create Session    netconf_server_session    ${NETCONF_SERVER_URL}
11     ${resp}=  GET On Session  netconf_server_session  /healthcheck
12     Should Be Equal As Strings  ${resp.status_code}  200
13     Should Be Equal As Strings  ${resp.text}  UP
14
15 Verify That Server Is Ready
16     [Documentation]  Verify that server is ready
17     Create Session    netconf_server_session    ${NETCONF_SERVER_URL}
18     ${resp}=  GET On Session  netconf_server_session  /readiness
19     Should Be Equal As Strings  ${resp.status_code}  200
20     Should Be Equal As Strings  ${resp.text}  Ready
21
22 Update NetConf Module Configuration
23     [Documentation]  Update module configuration
24     [Arguments]   ${module}  ${path_to_data}  ${resp_code}
25     ${data}=  Get Data From File  ${path_to_data}
26
27     Create Session    netconf_server_session    ${NETCONF_SERVER_URL}
28     ${resp}=    POST On Session    netconf_server_session    /change_config/${module}   data=${data}
29     Should Be Equal As Strings    ${resp.status_code}    ${resp_code}
30
31 Verify That Change Is Available In NetConf Module Change Configuration History
32     [Documentation]  Verify that configuration was distributed to Kafka
33     [Arguments]   ${resp_code}
34
35     Create Session    netconf_server_session    ${NETCONF_SERVER_URL}
36     ${resp}=    GET On Session    netconf_server_session    /change_history
37     Should Be Equal As Strings    ${resp.status_code}    ${resp_code}
38     ${actual_data}=  Convert To String  ${resp.json()}
39     Should Be Equal  ${actual_data}  [{u'new': {u'path': u'/pnf-simulator:config/itemValue1', u'value': 42}, u'type': u'ChangeCreated'}, {u'new': {u'path': u'/pnf-simulator:config/itemValue2', u'value': 35}, u'type': u'ChangeCreated'}]