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