Added SXP filtering tests
[integration/test.git] / csit / suites / sxp / basic / 030_Connectivity.robot
1 *** Settings ***
2 Documentation     Test suite to test connectivity problems
3 Suite Setup       Setup SXP Environment
4 Suite Teardown    Clean SXP Environment
5 Test Setup        Clean Nodes
6 Library           RequestsLibrary
7 Library           SSHLibrary
8 Library           ../../../libraries/Sxp.py
9 Resource          ../../../libraries/SxpLib.robot
10 Resource          ../../../libraries/Utils.robot
11 Resource          ../../../libraries/KarafKeywords.robot
12 Resource          ../../../variables/Variables.py
13
14 *** Variables ***
15
16 *** Test Cases ***
17 Version 1
18     [Documentation]    Test if Version1 <=> Version1 can be connected
19     Test Nodes    version1    none    version1
20     Log    OK without passwords
21     Clean Nodes
22     Test Nodes    version1    default    version1
23     Log    OK with passwords
24
25 Version 2
26     [Documentation]    Test if Version2 <=> Version2 can be connected
27     Test Nodes    version2    none    version2
28     Log    OK without passwords
29     Clean Nodes
30     Test Nodes    version2    default    version2
31
32 Version 3
33     [Documentation]    Test if Version3 <=> Version3 can be connected
34     Test Nodes    version3    none    version3
35     Log    OK without passwords
36     Clean Nodes
37     Test Nodes    version3    default    version3
38
39 Version 4
40     [Documentation]    Test if Version4 <=> Version4 can be connected
41     Test Nodes    version4    none    version4
42     Log    OK without passwords
43     Clean Nodes
44     Test Nodes    version4    default    version4
45
46 Mixed Versions
47     [Documentation]    Test of version negotiation proces during connecting
48     @{list} =    Create List    version2    version3    version4
49     Test Nodes    version1    none    @{list}
50     Test Nodes    version1    default    @{list}
51     @{list} =    Create List    version1    version3    version4
52     Test Nodes    version2    none    @{list}
53     Test Nodes    version2    default    @{list}
54     @{list} =    Create List    version1    version2    version4
55     Test Nodes    version3    none    @{list}
56     Test Nodes    version3    default    @{list}
57     @{list} =    Create List    version1    version2    version3
58     Test Nodes    version4    none    @{list}
59     Test Nodes    version4    default    @{list}
60
61 *** Keywords ***
62 Test Nodes
63     [Arguments]    ${version}    ${PASSWORD}    @{versions}
64     [Documentation]    Setup connection Speaker => Listener / Listener => Speaker / Both <=> Both for specific versions
65     : FOR    ${r_version}    IN    @{versions}
66     \    ${cmp_version}    Lower Version    ${r_version}    ${version}
67     \    Log    ${r_version}
68     \    Add Connection    ${r_version}    listener    127.0.0.2    64999    127.0.0.1
69     \    ...    ${PASSWORD}
70     \    Add Connection    ${version}    speaker    127.0.0.1    64999    127.0.0.2
71     \    ...    ${PASSWORD}
72     \    Wait Until Keyword Succeeds    15    4    Verify Connection    ${cmp_version}    listener
73     \    ...    127.0.0.2    64999    127.0.0.1
74     \    Wait Until Keyword Succeeds    15    4    Verify connection    ${cmp_version}    speaker
75     \    ...    127.0.0.1    64999    127.0.0.2
76     \    Log    OK ${r_version}:listener ${version}:speaker
77     \    Add Connection    ${version}    listener    127.0.0.2    64999    127.0.0.3
78     \    ...    ${PASSWORD}
79     \    Add Connection    ${r_version}    speaker    127.0.0.3    64999    127.0.0.2
80     \    ...    ${PASSWORD}
81     \    Wait Until Keyword Succeeds    15    4    Verify Connection    ${cmp_version}    listener
82     \    ...    127.0.0.2    64999    127.0.0.3
83     \    Wait Until Keyword Succeeds    15    4    Verify connection    ${cmp_version}    speaker
84     \    ...    127.0.0.3    64999    127.0.0.2
85     \    Log    OK ${version}:listener ${r_version}:speaker
86     \    Run Keyword If    '${version}' == 'version4' and '${r_version}' == 'version4'    Test Both    ${version}    ${r_version}    ${PASSWORD}
87     \    Clean Nodes
88
89 Test Both
90     [Arguments]    ${version}    ${r_version}    ${PASSWORD}
91     [Documentation]    Setup Both <=> Both connection
92     ${cmp_version}    Lower Version    ${r_version}    ${version}
93     Add Connection    ${r_version}    both    127.0.0.3    64999    127.0.0.1    ${PASSWORD}
94     Add Connection    ${version}    both    127.0.0.1    64999    127.0.0.3    ${PASSWORD}
95     Wait Until Keyword Succeeds    15    4    Verify Connection    ${cmp_version}    both    127.0.0.3
96     ...    64999    127.0.0.1
97     Wait Until Keyword Succeeds    15    4    Verify Connection    ${cmp_version}    both    127.0.0.1
98     ...    64999    127.0.0.3
99     Log    OK ${r_version}:both ${version}:both
100
101 Clean Nodes
102     Clean Connections    127.0.0.1
103     Clean Connections    127.0.0.2
104     Clean Connections    127.0.0.3