2 Documentation Test suite to test scalability of SXP
3 Suite Setup Setup SXP Environment
4 Suite Teardown Clean SXP Environment
6 Library RequestsLibrary
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
18 [Documentation] Stress test that contains of connecting 20 Nodes and exporting their bindings
21 ${resp} Get Bindings Master Database 127.0.0.1
22 :FOR ${num} IN RANGE 2 22
23 \ ${ip} Get Ip From Number ${num}
24 \ Should Contain Binding ${resp} ${num} ${ip}/32 sxp
26 Test Complex Mega Topology
27 [Documentation] Stress test that contains of connecting 30 Nodes and exporting their bindings
28 Setup Complex Mega Topology
30 ${resp} Get Bindings Master Database 127.0.0.1
31 :FOR ${num} IN RANGE 22 32
32 \ ${ip} Get Ip From Number ${num}
33 \ Should Contain Binding ${resp} ${num} ${ip}/32 sxp
36 [Documentation] Stress test that consist of exporting 500 Bindings under 5s
37 :FOR ${num} IN RANGE 2 502
38 \ ${ip} Get Ip From Number ${num}
39 \ Add Binding ${num} ${ip}/32 127.0.0.2
40 Add Connection version4 listener 127.0.0.2 64999 127.0.0.1
41 Add Connection version4 speaker 127.0.0.1 64999 127.0.0.2
43 ${resp} Get Bindings Master Database 127.0.0.1
44 :FOR ${num} IN RANGE 2 102
45 \ ${ip} Get Ip From Number ${num}
46 \ Should Contain Binding ${resp} ${num} ${ip}/32 sxp
50 [Arguments] ${version}=version4
51 :FOR ${num} IN RANGE 2 22
52 \ ${ip} Get Ip From Number ${num}
53 \ Add Binding ${num} ${ip}/32 ${ip}
54 \ Add Connection ${version} listener ${ip} 64999 127.0.0.1
55 \ Add Connection ${version} speaker 127.0.0.1 64999 ${ip}
57 Setup Complex Mega Topology
58 [Arguments] ${version}=version4
59 Setup Mega Topology ${version}
60 ${second_num} Convert To Integer 2
61 :FOR ${num} IN RANGE 22 32
62 \ ${ip} Get Ip From Number ${num}
63 \ ${second_ip} Get Ip From Number ${second_num}
64 \ Add Binding ${num} ${ip}/32 ${ip}
65 \ Add Connection ${version} listener ${ip} 64999 ${second_ip}
66 \ Add Connection ${version} speaker ${second_ip} 64999 ${ip}
67 \ ${second_num} Set Variable ${second_num + 1}
68 \ ${second_ip} Get Ip From Number ${second_num}
69 \ Add Connection ${version} listener ${ip} 64999 ${second_ip}
70 \ Add Connection ${version} speaker ${second_ip} 64999 ${ip}
74 :FOR ${num} IN RANGE 1 32
75 \ ${ip} Get Ip From Number ${num}
76 \ Clean Connections ${ip}
77 \ Clean Bindings ${ip}