SXP: Fix parameters for Add Bindings
[integration/test.git] / csit / suites / sxp / filtering / 050_Domain_filtering.robot
1 *** Settings ***
2 Documentation     Test suite to verify Domain data filtering
3 Test Setup        Setup Nodes Local
4 Test Teardown     Clean SXP Environment    9
5 Library           RequestsLibrary
6 Library           SSHLibrary
7 Library           ../../../libraries/Sxp.py
8 Library           ../../../libraries/Common.py
9 Resource          ../../../libraries/SxpLib.robot
10
11 *** Variables ***
12 ${DOMAIN_1}       guest
13 ${DOMAIN_2}       trusted
14 ${DOMAIN_3}       semitrusted
15 ${DOMAIN_4}       secure
16 ${version}        version4
17
18 *** Test Cases ***
19 Non Transitivity Test
20     [Documentation]    Test if Bindings are shared according to associated filters
21     [Tags]    SXP    Domains    Filtering
22     Wait Until Keyword Succeeds    15    1    Check Initialized
23     Add Filters
24     Wait Until Keyword Succeeds    15    1    Check Domain Sharing
25     Remove Filters
26     Wait Until Keyword Succeeds    15    1    Check Initialized
27
28 Update Messages Test
29     [Documentation]    Test if Bindings are shared according to associated filters while bindings are removed/added
30     [Tags]    SXP    Domains    Filtering
31     Wait Until Keyword Succeeds    15    1    Check Initialized
32     Add Filters
33     Wait Until Keyword Succeeds    15    1    Check Domain Sharing
34     : FOR    ${node}    IN RANGE    2    5
35     \    Delete Bindings    ${node}0    ${node}0.${node}0.${node}0.0/24    127.0.0.${node}
36     \    Delete Bindings    ${node}0    ${node}0.${node}0.0.0/16    127.0.0.${node}
37     Wait Until Keyword Succeeds    15    1    Check Domain Sharing After Update
38     : FOR    ${node}    IN RANGE    2    5
39     \    Add Bindings    ${node}0    ${node}0.${node}0.${node}0.0/24    127.0.0.${node}
40     \    Add Bindings    ${node}0    ${node}0.${node}0.0.0/16    127.0.0.${node}
41     Wait Until Keyword Succeeds    15    1    Check Domain Sharing
42
43 Local Binding Non Transitivity Test
44     [Documentation]    Test if Local Bindings are shared according to associated filters,
45     ...    and does not colide with other Bindings
46     [Tags]    SXP    Domains    Filtering
47     Wait Until Keyword Succeeds    15    1    Check Initialized Local
48     Add Filters
49     Wait Until Keyword Succeeds    15    1    Check Domain Sharing Local
50     Remove Filters
51     Wait Until Keyword Succeeds    15    1    Check Initialized Local
52
53 Local Binding Update Test
54     [Documentation]    Test if Local Bindings are shared according to associated filters while bindings are removed/added
55     [Tags]    SXP    Domains    Filtering
56     Wait Until Keyword Succeeds    15    1    Check Initialized Local
57     Add Filters
58     Wait Until Keyword Succeeds    15    1    Check Domain Sharing Local
59     Delete Bindings    20    20.20.20.5/32    127.0.0.1    ${DOMAIN_1}
60     Delete Bindings    30    30.30.30.5/32    127.0.0.1    ${DOMAIN_2}
61     Delete Bindings    40    40.40.40.5/32    127.0.0.1    ${DOMAIN_3}
62     Wait Until Keyword Succeeds    15    1    Check Domain Sharing After Update Local
63     Add Bindings    20    20.20.20.5/32    127.0.0.1    ${DOMAIN_1}
64     Add Bindings    30    30.30.30.5/32    127.0.0.1    ${DOMAIN_2}
65     Add Bindings    40    40.40.40.5/32    127.0.0.1    ${DOMAIN_3}
66     Wait Until Keyword Succeeds    15    1    Check Domain Sharing Local
67
68 Binding Replacement Test
69     [Documentation]    Test situation where Local binding is replaced by other shared local binding,
70     ...    after shared binding is removed the original binding must be propagated to Peers
71     [Tags]    SXP    Domains    Filtering
72     Wait Until Keyword Succeeds    15    1    Check Initialized After Update
73     Add Bindings    400    35.35.35.35/32    127.0.0.4
74     Add Bindings    450    35.35.35.35/32    127.0.0.1    domain=${DOMAIN_3}
75     Wait Until Keyword Succeeds    15    1    Check After Update Part One
76     Add Filters After Update
77     Wait Until Keyword Succeeds    15    1    Check After Update Part Two
78     Delete Bindings    450    35.35.35.35/32    127.0.0.1    ${DOMAIN_3}
79     Wait Until Keyword Succeeds    15    1    Check After Update Part Three
80
81 *** Keywords ***
82 Setup Nodes Local
83     [Documentation]    Setups Multi domain topology consisting of 3 specific domains and 1 default, data will be shared by filter.
84     Setup SXP Environment    9
85     : FOR    ${node}    IN RANGE    2    5
86     \    Add Bindings    ${node}0    ${node}0.${node}0.${node}0.${node}0/32    127.0.0.${node}
87     \    Add Bindings    ${node}0    ${node}0.${node}0.${node}0.0/24    127.0.0.${node}
88     \    Add Bindings    ${node}0    ${node}0.${node}0.0.0/16    127.0.0.${node}
89     \    Add Bindings    ${node}0    ${node}0.0.0.0/8    127.0.0.${node}
90     \    Add Connection    ${version}    speaker    127.0.0.1    64999    127.0.0.${node}
91     : FOR    ${node}    IN RANGE    5    10
92     \    Add Connection    ${version}    listener    127.0.0.1    64999    127.0.0.${node}
93     Add Domain    ${DOMAIN_1}
94     Add Domain    ${DOMAIN_2}
95     Add Domain    ${DOMAIN_3}
96     Add Bindings    20    20.20.20.5/32    127.0.0.1    domain=${DOMAIN_1}
97     Add Bindings    20    20.20.5.5/32    127.0.0.1    domain=${DOMAIN_1}
98     Add Bindings    30    30.30.30.5/32    127.0.0.1    domain=${DOMAIN_2}
99     Add Bindings    30    30.30.5.5/32    127.0.0.1    domain=${DOMAIN_2}
100     Add Bindings    40    40.40.40.5/32    127.0.0.1    domain=${DOMAIN_3}
101     Add Bindings    40    40.40.5.5/32    127.0.0.1    domain=${DOMAIN_3}
102     Add Bindings    300    25.25.25.25/32    127.0.0.4
103     Add Bindings    500    35.35.35.35/32
104     # NO DOMAIN
105     Add Connection    ${version}    speaker    127.0.0.8    64999
106     Wait Until Keyword Succeeds    15    1    Verify Connection    ${version}    speaker    127.0.0.8
107     # DOMAIN 1
108     Add Connection    ${version}    listener    127.0.0.2    64999    domain=${DOMAIN_1}
109     Wait Until Keyword Succeeds    15    1    Verify Connection    ${version}    listener    127.0.0.2
110     ...    domain=${DOMAIN_1}
111     Add Connection    ${version}    speaker    127.0.0.5    64999    domain=${DOMAIN_1}
112     Wait Until Keyword Succeeds    15    1    Verify Connection    ${version}    speaker    127.0.0.5
113     ...    domain=${DOMAIN_1}
114     # DOMAIN 2
115     Add Connection    ${version}    listener    127.0.0.3    64999    domain=${DOMAIN_2}
116     Wait Until Keyword Succeeds    15    1    Verify Connection    ${version}    listener    127.0.0.3
117     ...    domain=${DOMAIN_2}
118     Add Connection    ${version}    speaker    127.0.0.6    64999    domain=${DOMAIN_2}
119     Wait Until Keyword Succeeds    15    1    Verify Connection    ${version}    speaker    127.0.0.6
120     ...    domain=${DOMAIN_2}
121     # DOMAIN 3
122     Add Connection    ${version}    listener    127.0.0.4    64999    domain=${DOMAIN_3}
123     Wait Until Keyword Succeeds    15    1    Verify Connection    ${version}    listener    127.0.0.4
124     ...    domain=${DOMAIN_3}
125     Add Connection    ${version}    speaker    127.0.0.7    64999    domain=${DOMAIN_3}
126     Wait Until Keyword Succeeds    15    1    Verify Connection    ${version}    speaker    127.0.0.7
127     ...    domain=${DOMAIN_3}
128
129 Add Filters
130     [Documentation]    Add 4 Domain filters that shares portion of Bindings
131     ${domain_1_xml}    Add Domains    ${DOMAIN_3}
132     ${domain_2_xml}    Add Domains    ${DOMAIN_4}
133     ${domains}    Combine Strings    ${domain_1_xml}    ${domain_2_xml}
134     ${entry1}    Get Filter Entry    10    permit    pl=20.0.0.0/8
135     ${entries}    Combine Strings    ${entry1}
136     Add Domain Filter    ${DOMAIN_1}    ${domains}    ${entries}
137     ${domain_1_xml}    Add Domains    ${DOMAIN_1}
138     ${domains}    Combine Strings    ${domain_1_xml}
139     ${entry1}    Get Filter Entry    10    permit    pl=30.30.0.0/16
140     ${entries}    Combine Strings    ${entry1}
141     Add Domain Filter    ${DOMAIN_2}    ${domains}    ${entries}
142     ${domain_1_xml}    Add Domains    global
143     ${domains}    Combine Strings    ${domain_1_xml}
144     ${entry1}    Get Filter Entry    10    permit    pl=30.30.30.0/24
145     ${entries}    Combine Strings    ${entry1}
146     Add Domain Filter    ${DOMAIN_2}    ${domains}    ${entries}    127.0.0.1    extended-domain-filter
147
148 Add Filters After Update
149     [Documentation]    Add Domain filter that shares portion of Local Bindings
150     ${domain_1_xml}    Add Domains    global
151     ${domains}    Combine Strings    ${domain_1_xml}
152     ${entry1}    Get Filter Entry    10    permit    esgt=300,600
153     ${entries}    Combine Strings    ${entry1}
154     Add Domain Filter    ${DOMAIN_3}    ${domains}    ${entries}
155
156 Remove Filters
157     [Documentation]    Remove 4 Domain filters that shared portion of Bindings
158     Delete Domain Filter    ${DOMAIN_1}
159     Delete Domain Filter    ${DOMAIN_2}
160     Delete Domain Filter    ${DOMAIN_2}    127.0.0.1    extended-domain-filter
161
162 Check Initialized
163     [Documentation]    Checks that Bindings are not shared between domains
164     ${resp}    Get Bindings    127.0.0.5
165     Should Contain Binding    ${resp}    20    20.20.20.20/32
166     Should Contain Binding    ${resp}    20    20.20.20.0/24
167     Should Contain Binding    ${resp}    20    20.20.0.0/16
168     Should Contain Binding    ${resp}    20    20.0.0.0/8
169     Should Not Contain Binding    ${resp}    30    30.30.30.30/32
170     Should Not Contain Binding    ${resp}    30    30.30.30.0/24
171     Should Not Contain Binding    ${resp}    30    30.30.0.0/16
172     Should Not Contain Binding    ${resp}    30    30.0.0.0/8
173     Should Not Contain Binding    ${resp}    40    40.40.40.40/32
174     Should Not Contain Binding    ${resp}    40    40.40.40.0/24
175     Should Not Contain Binding    ${resp}    40    40.40.0.0/16
176     Should Not Contain Binding    ${resp}    40    40.0.0.0/8
177     ${resp}    Get Bindings    127.0.0.6
178     Should Not Contain Binding    ${resp}    20    20.20.20.20/32
179     Should Not Contain Binding    ${resp}    20    20.20.20.0/24
180     Should Not Contain Binding    ${resp}    20    20.20.0.0/16
181     Should Not Contain Binding    ${resp}    20    20.0.0.0/8
182     Should Contain Binding    ${resp}    30    30.30.30.30/32
183     Should Contain Binding    ${resp}    30    30.30.30.0/24
184     Should Contain Binding    ${resp}    30    30.30.0.0/16
185     Should Contain Binding    ${resp}    30    30.0.0.0/8
186     Should Not Contain Binding    ${resp}    40    40.40.40.40/32
187     Should Not Contain Binding    ${resp}    40    40.40.40.0/24
188     Should Not Contain Binding    ${resp}    40    40.40.0.0/16
189     Should Not Contain Binding    ${resp}    40    40.0.0.0/8
190     ${resp}    Get Bindings    127.0.0.7
191     Should Not Contain Binding    ${resp}    20    20.20.20.20/32
192     Should Not Contain Binding    ${resp}    20    20.20.20.0/24
193     Should Not Contain Binding    ${resp}    20    20.20.0.0/16
194     Should Not Contain Binding    ${resp}    20    20.0.0.0/8
195     Should Not Contain Binding    ${resp}    30    30.30.30.30/32
196     Should Not Contain Binding    ${resp}    30    30.30.30.0/24
197     Should Not Contain Binding    ${resp}    30    30.30.0.0/16
198     Should Not Contain Binding    ${resp}    30    30.0.0.0/8
199     Should Contain Binding    ${resp}    40    40.40.40.40/32
200     Should Contain Binding    ${resp}    40    40.40.40.0/24
201     Should Contain Binding    ${resp}    40    40.40.0.0/16
202     Should Contain Binding    ${resp}    40    40.0.0.0/8
203     : FOR    ${node}    IN RANGE    8    10
204     \    ${resp}    Get Bindings    127.0.0.${node}
205     \    Should Not Contain Binding    ${resp}    20    20.20.20.20/32
206     \    Should Not Contain Binding    ${resp}    20    20.20.20.0/24
207     \    Should Not Contain Binding    ${resp}    20    20.20.0.0/16
208     \    Should Not Contain Binding    ${resp}    20    20.0.0.0/8
209     \    Should Not Contain Binding    ${resp}    30    30.30.30.30/32
210     \    Should Not Contain Binding    ${resp}    30    30.30.30.0/24
211     \    Should Not Contain Binding    ${resp}    30    30.30.0.0/16
212     \    Should Not Contain Binding    ${resp}    30    30.0.0.0/8
213     \    Should Not Contain Binding    ${resp}    40    40.40.40.40/32
214     \    Should Not Contain Binding    ${resp}    40    40.40.40.0/24
215     \    Should Not Contain Binding    ${resp}    40    40.40.0.0/16
216     \    Should Not Contain Binding    ${resp}    40    40.0.0.0/8
217
218 Check Initialized Local
219     [Documentation]    Checks that Local Bindings are not shared between domains
220     ${resp}    Get Bindings    127.0.0.5
221     Should Contain Binding    ${resp}    20    20.20.20.5/32
222     Should Contain Binding    ${resp}    20    20.20.5.5/32
223     Should Not Contain Binding    ${resp}    30    30.30.30.5/32
224     Should Not Contain Binding    ${resp}    30    30.30.5.5/32
225     Should Not Contain Binding    ${resp}    40    40.40.40.5/32
226     Should Not Contain Binding    ${resp}    40    40.40.5.5/32
227     ${resp}    Get Bindings    127.0.0.6
228     Should Not Contain Binding    ${resp}    20    20.20.20.5/32
229     Should Not Contain Binding    ${resp}    20    20.20.5.5/32
230     Should Contain Binding    ${resp}    30    30.30.30.5/32
231     Should Contain Binding    ${resp}    30    30.30.5.5/32
232     Should Not Contain Binding    ${resp}    40    40.40.40.5/32
233     Should Not Contain Binding    ${resp}    40    40.40.5.5/32
234     ${resp}    Get Bindings    127.0.0.7
235     Should Not Contain Binding    ${resp}    20    20.20.20.5/32
236     Should Not Contain Binding    ${resp}    20    20.20.5.5/32
237     Should Not Contain Binding    ${resp}    30    30.30.30.5/32
238     Should Not Contain Binding    ${resp}    30    30.30.5.5/32
239     Should Contain Binding    ${resp}    40    40.40.40.5/32
240     Should Contain Binding    ${resp}    40    40.40.5.5/32
241     : FOR    ${node}    IN RANGE    8    10
242     \    ${resp}    Get Bindings    127.0.0.${node}
243     \    Should Not Contain Binding    ${resp}    20    20.20.20.5/32
244     \    Should Not Contain Binding    ${resp}    20    20.20.5.5/32
245     \    Should Not Contain Binding    ${resp}    30    30.30.30.5/32
246     \    Should Not Contain Binding    ${resp}    30    30.30.5.5/32
247     \    Should Not Contain Binding    ${resp}    40    40.40.40.5/32
248     \    Should Not Contain Binding    ${resp}    40    40.40.5.5/32
249
250 Check Initialized After Update
251     [Documentation]    Checks that Local Bindings are not shared between domains
252     ${resp}    Get Bindings    127.0.0.7
253     Should Contain Binding    ${resp}    300    25.25.25.25/32
254     Should Not Contain Binding    ${resp}    400    35.35.35.35/32
255     Should Not Contain Binding    ${resp}    450    35.35.35.35/32
256     ${resp}    Get Bindings    127.0.0.8
257     Should Not Contain Binding    ${resp}    300    25.25.25.25/32
258     Should Contain Binding    ${resp}    500    35.35.35.35/32
259
260 Check Domain Sharing
261     [Documentation]    Checks that Bindings are shared between domains
262     ${resp}    Get Bindings    127.0.0.5
263     Should Contain Binding    ${resp}    20    20.20.20.20/32
264     Should Contain Binding    ${resp}    20    20.20.20.0/24
265     Should Contain Binding    ${resp}    20    20.20.0.0/16
266     Should Contain Binding    ${resp}    20    20.0.0.0/8
267     Should Contain Binding    ${resp}    30    30.30.30.30/32
268     Should Contain Binding    ${resp}    30    30.30.30.0/24
269     Should Contain Binding    ${resp}    30    30.30.0.0/16
270     Should Not Contain Binding    ${resp}    30    30.0.0.0/8
271     Should Not Contain Binding    ${resp}    40    40.40.40.40/32
272     Should Not Contain Binding    ${resp}    40    40.40.40.0/24
273     Should Not Contain Binding    ${resp}    40    40.40.0.0/16
274     Should Not Contain Binding    ${resp}    40    40.0.0.0/8
275     ${resp}    Get Bindings    127.0.0.6
276     Should Not Contain Binding    ${resp}    20    20.20.20.20/32
277     Should Not Contain Binding    ${resp}    20    20.20.20.0/24
278     Should Not Contain Binding    ${resp}    20    20.20.0.0/16
279     Should Not Contain Binding    ${resp}    20    20.0.0.0/8
280     Should Contain Binding    ${resp}    30    30.30.30.30/32
281     Should Contain Binding    ${resp}    30    30.30.30.0/24
282     Should Contain Binding    ${resp}    30    30.30.0.0/16
283     Should Contain Binding    ${resp}    30    30.0.0.0/8
284     Should Not Contain Binding    ${resp}    40    40.40.40.40/32
285     Should Not Contain Binding    ${resp}    40    40.40.40.0/24
286     Should Not Contain Binding    ${resp}    40    40.40.0.0/16
287     Should Not Contain Binding    ${resp}    40    40.0.0.0/8
288     ${resp}    Get Bindings    127.0.0.7
289     Should Contain Binding    ${resp}    20    20.20.20.20/32
290     Should Contain Binding    ${resp}    20    20.20.20.0/24
291     Should Contain Binding    ${resp}    20    20.20.0.0/16
292     Should Contain Binding    ${resp}    20    20.0.0.0/8
293     Should Not Contain Binding    ${resp}    30    30.30.30.30/32
294     Should Not Contain Binding    ${resp}    30    30.30.30.0/24
295     Should Not Contain Binding    ${resp}    30    30.30.0.0/16
296     Should Not Contain Binding    ${resp}    30    30.0.0.0/8
297     Should Contain Binding    ${resp}    40    40.40.40.40/32
298     Should Contain Binding    ${resp}    40    40.40.40.0/24
299     Should Contain Binding    ${resp}    40    40.40.0.0/16
300     Should Contain Binding    ${resp}    40    40.0.0.0/8
301     ${resp}    Get Bindings    127.0.0.8
302     Should Not Contain Binding    ${resp}    20    20.20.20.20/32
303     Should Not Contain Binding    ${resp}    20    20.20.20.0/24
304     Should Not Contain Binding    ${resp}    20    20.20.0.0/16
305     Should Not Contain Binding    ${resp}    20    20.0.0.0/8
306     Should Contain Binding    ${resp}    30    30.30.30.30/32
307     Should Contain Binding    ${resp}    30    30.30.30.0/24
308     Should Not Contain Binding    ${resp}    30    30.30.0.0/16
309     Should Not Contain Binding    ${resp}    30    30.0.0.0/8
310     Should Not Contain Binding    ${resp}    40    40.40.40.40/32
311     Should Not Contain Binding    ${resp}    40    40.40.40.0/24
312     Should Not Contain Binding    ${resp}    40    40.40.0.0/16
313     Should Not Contain Binding    ${resp}    40    40.0.0.0/8
314     ${resp}    Get Bindings    127.0.0.9
315     Should Not Contain Binding    ${resp}    20    20.20.20.20/32
316     Should Not Contain Binding    ${resp}    20    20.20.20.0/24
317     Should Not Contain Binding    ${resp}    20    20.20.0.0/16
318     Should Not Contain Binding    ${resp}    20    20.0.0.0/8
319     Should Not Contain Binding    ${resp}    30    30.30.30.30/32
320     Should Not Contain Binding    ${resp}    30    30.30.30.0/24
321     Should Not Contain Binding    ${resp}    30    30.30.0.0/16
322     Should Not Contain Binding    ${resp}    30    30.0.0.0/8
323     Should Not Contain Binding    ${resp}    40    40.40.40.40/32
324     Should Not Contain Binding    ${resp}    40    40.40.40.0/24
325     Should Not Contain Binding    ${resp}    40    40.40.0.0/16
326     Should Not Contain Binding    ${resp}    40    40.0.0.0/8
327
328 Check Domain Sharing Local
329     [Documentation]    Checks that Local Bindings are shared between domains
330     ${resp}    Get Bindings    127.0.0.5
331     Should Contain Binding    ${resp}    20    20.20.20.5/32
332     Should Contain Binding    ${resp}    20    20.20.5.5/32
333     Should Contain Binding    ${resp}    30    30.30.30.5/32
334     Should Contain Binding    ${resp}    30    30.30.5.5/32
335     Should Not Contain Binding    ${resp}    40    40.40.40.5/32
336     Should Not Contain Binding    ${resp}    40    40.40.5.5/32
337     ${resp}    Get Bindings    127.0.0.6
338     Should Not Contain Binding    ${resp}    20    20.20.20.5/32
339     Should Not Contain Binding    ${resp}    20    20.20.5.5/32
340     Should Contain Binding    ${resp}    30    30.30.30.5/32
341     Should Contain Binding    ${resp}    30    30.30.5.5/32
342     Should Not Contain Binding    ${resp}    40    40.40.40.5/32
343     Should Not Contain Binding    ${resp}    40    40.40.5.5/32
344     ${resp}    Get Bindings    127.0.0.7
345     Should Contain Binding    ${resp}    20    20.20.20.5/32
346     Should Contain Binding    ${resp}    20    20.20.5.5/32
347     Should Not Contain Binding    ${resp}    30    30.30.30.5/32
348     Should Not Contain Binding    ${resp}    30    30.30.5.5/32
349     Should Contain Binding    ${resp}    40    40.40.40.5/32
350     Should Contain Binding    ${resp}    40    40.40.5.5/32
351     ${resp}    Get Bindings    127.0.0.8
352     Should Not Contain Binding    ${resp}    20    20.20.20.5/32
353     Should Not Contain Binding    ${resp}    20    20.20.5.5/32
354     Should Contain Binding    ${resp}    30    30.30.30.5/32
355     Should Not Contain Binding    ${resp}    30    30.30.5.5/32
356     Should Not Contain Binding    ${resp}    40    40.40.40.5/32
357     Should Not Contain Binding    ${resp}    40    40.40.5.5/32
358     ${resp}    Get Bindings    127.0.0.9
359     Should Not Contain Binding    ${resp}    20    20.20.20.5/32
360     Should Not Contain Binding    ${resp}    20    20.20.5.5/32
361     Should Not Contain Binding    ${resp}    30    30.30.30.5/32
362     Should Not Contain Binding    ${resp}    30    30.30.5.5/32
363     Should Not Contain Binding    ${resp}    40    40.40.40.5/32
364     Should Not Contain Binding    ${resp}    40    40.40.5.5/32
365
366 Check Domain Sharing After Update
367     [Documentation]    Checks that removed Bindings are shared between domains
368     ${resp}    Get Bindings    127.0.0.5
369     Should Contain Binding    ${resp}    20    20.20.20.20/32
370     Should Not Contain Binding    ${resp}    20    20.20.20.0/24
371     Should Not Contain Binding    ${resp}    20    20.20.0.0/16
372     Should Contain Binding    ${resp}    20    20.0.0.0/8
373     Should Contain Binding    ${resp}    30    30.30.30.30/32
374     Should Not Contain Binding    ${resp}    30    30.30.30.0/24
375     Should Not Contain Binding    ${resp}    30    30.30.0.0/16
376     Should Not Contain Binding    ${resp}    30    30.0.0.0/8
377     Should Not Contain Binding    ${resp}    40    40.40.40.40/32
378     Should Not Contain Binding    ${resp}    40    40.40.40.0/24
379     Should Not Contain Binding    ${resp}    40    40.40.0.0/16
380     Should Not Contain Binding    ${resp}    40    40.0.0.0/8
381     ${resp}    Get Bindings    127.0.0.6
382     Should Not Contain Binding    ${resp}    20    20.20.20.20/32
383     Should Not Contain Binding    ${resp}    20    20.20.20.0/24
384     Should Not Contain Binding    ${resp}    20    20.20.0.0/16
385     Should Not Contain Binding    ${resp}    20    20.0.0.0/8
386     Should Contain Binding    ${resp}    30    30.30.30.30/32
387     Should Not Contain Binding    ${resp}    30    30.30.30.0/24
388     Should Not Contain Binding    ${resp}    30    30.30.0.0/16
389     Should Contain Binding    ${resp}    30    30.0.0.0/8
390     Should Not Contain Binding    ${resp}    40    40.40.40.40/32
391     Should Not Contain Binding    ${resp}    40    40.40.40.0/24
392     Should Not Contain Binding    ${resp}    40    40.40.0.0/16
393     Should Not Contain Binding    ${resp}    40    40.0.0.0/8
394     ${resp}    Get Bindings    127.0.0.7
395     Should Contain Binding    ${resp}    20    20.20.20.20/32
396     Should Not Contain Binding    ${resp}    20    20.20.20.0/24
397     Should Not Contain Binding    ${resp}    20    20.20.0.0/16
398     Should Contain Binding    ${resp}    20    20.0.0.0/8
399     Should Not Contain Binding    ${resp}    30    30.30.30.30/32
400     Should Not Contain Binding    ${resp}    30    30.30.30.0/24
401     Should Not Contain Binding    ${resp}    30    30.30.0.0/16
402     Should Not Contain Binding    ${resp}    30    30.0.0.0/8
403     Should Contain Binding    ${resp}    40    40.40.40.40/32
404     Should Not Contain Binding    ${resp}    40    40.40.40.0/24
405     Should Not Contain Binding    ${resp}    40    40.40.0.0/16
406     Should Contain Binding    ${resp}    40    40.0.0.0/8
407     ${resp}    Get Bindings    127.0.0.8
408     Should Not Contain Binding    ${resp}    20    20.20.20.20/32
409     Should Not Contain Binding    ${resp}    20    20.20.20.0/24
410     Should Not Contain Binding    ${resp}    20    20.20.0.0/16
411     Should Not Contain Binding    ${resp}    20    20.0.0.0/8
412     Should Contain Binding    ${resp}    30    30.30.30.30/32
413     Should Not Contain Binding    ${resp}    30    30.30.30.0/24
414     Should Not Contain Binding    ${resp}    30    30.30.0.0/16
415     Should Not Contain Binding    ${resp}    30    30.0.0.0/8
416     Should Not Contain Binding    ${resp}    40    40.40.40.40/32
417     Should Not Contain Binding    ${resp}    40    40.40.40.0/24
418     Should Not Contain Binding    ${resp}    40    40.40.0.0/16
419     Should Not Contain Binding    ${resp}    40    40.0.0.0/8
420     ${resp}    Get Bindings    127.0.0.9
421     Should Not Contain Binding    ${resp}    20    20.20.20.20/32
422     Should Not Contain Binding    ${resp}    20    20.20.20.0/24
423     Should Not Contain Binding    ${resp}    20    20.20.0.0/16
424     Should Not Contain Binding    ${resp}    20    20.0.0.0/8
425     Should Not Contain Binding    ${resp}    30    30.30.30.30/32
426     Should Not Contain Binding    ${resp}    30    30.30.30.0/24
427     Should Not Contain Binding    ${resp}    30    30.30.0.0/16
428     Should Not Contain Binding    ${resp}    30    30.0.0.0/8
429     Should Not Contain Binding    ${resp}    40    40.40.40.40/32
430     Should Not Contain Binding    ${resp}    40    40.40.40.0/24
431     Should Not Contain Binding    ${resp}    40    40.40.0.0/16
432     Should Not Contain Binding    ${resp}    40    40.0.0.0/8
433
434 Check Domain Sharing After Update Local
435     [Documentation]    Checks that removed Local Bindings are shared between domains
436     ${resp}    Get Bindings    127.0.0.5
437     Should Not Contain Binding    ${resp}    20    20.20.20.5/32
438     Should Contain Binding    ${resp}    20    20.20.5.5/32
439     Should Not Contain Binding    ${resp}    30    30.30.30.5/32
440     Should Contain Binding    ${resp}    30    30.30.5.5/32
441     Should Not Contain Binding    ${resp}    40    40.40.40.5/32
442     Should Not Contain Binding    ${resp}    40    40.40.5.5/32
443     ${resp}    Get Bindings    127.0.0.6
444     Should Not Contain Binding    ${resp}    20    20.20.20.5/32
445     Should Not Contain Binding    ${resp}    20    20.20.5.5/32
446     Should Not Contain Binding    ${resp}    30    30.30.30.5/32
447     Should Contain Binding    ${resp}    30    30.30.5.5/32
448     Should Not Contain Binding    ${resp}    40    40.40.40.5/32
449     Should Not Contain Binding    ${resp}    40    40.40.5.5/32
450     ${resp}    Get Bindings    127.0.0.7
451     Should Not Contain Binding    ${resp}    20    20.20.20.5/32
452     Should Contain Binding    ${resp}    20    20.20.5.5/32
453     Should Not Contain Binding    ${resp}    30    30.30.30.5/32
454     Should Not Contain Binding    ${resp}    30    30.30.5.5/32
455     Should Not Contain Binding    ${resp}    40    40.40.40.5/32
456     Should Contain Binding    ${resp}    40    40.40.5.5/32
457     ${resp}    Get Bindings    127.0.0.8
458     Should Not Contain Binding    ${resp}    20    20.20.20.5/32
459     Should Not Contain Binding    ${resp}    20    20.20.5.5/32
460     Should Not Contain Binding    ${resp}    30    30.30.30.5/32
461     Should Not Contain Binding    ${resp}    30    30.30.5.5/32
462     Should Not Contain Binding    ${resp}    40    40.40.40.5/32
463     Should Not Contain Binding    ${resp}    40    40.40.5.5/32
464     ${resp}    Get Bindings    127.0.0.9
465     Should Not Contain Binding    ${resp}    20    20.20.20.5/32
466     Should Not Contain Binding    ${resp}    20    20.20.5.5/32
467     Should Not Contain Binding    ${resp}    30    30.30.30.5/32
468     Should Not Contain Binding    ${resp}    30    30.30.5.5/32
469     Should Not Contain Binding    ${resp}    40    40.40.40.5/32
470     Should Not Contain Binding    ${resp}    40    40.40.5.5/32
471
472 Check After Update Part One
473     [Documentation]    Checks that Local Binding is not replaced by Local shared Binding
474     ${resp}    Get Bindings    127.0.0.7
475     Should Contain Binding    ${resp}    300    25.25.25.25/32
476     Should Contain Binding    ${resp}    450    35.35.35.35/32
477     ${resp}    Get Bindings    127.0.0.8
478     Should Contain Binding    ${resp}    500    35.35.35.35/32
479
480 Check After Update Part Two
481     [Documentation]    Checks that Local Binding was replaced by Local shared Binding
482     ${resp}    Get Bindings    127.0.0.8
483     Should Contain Binding    ${resp}    300    25.25.25.25/32
484     Should Contain Binding    ${resp}    450    35.35.35.35/32
485
486 Check After Update Part Three
487     [Documentation]    Checks that Local Binding restored
488     ${resp}    Get Bindings    127.0.0.7
489     Should Contain Binding    ${resp}    300    25.25.25.25/32
490     Should Contain Binding    ${resp}    400    35.35.35.35/32
491     ${resp}    Get Bindings    127.0.0.8
492     Should Contain Binding    ${resp}    300    25.25.25.25/32
493     Should Contain Binding    ${resp}    500    35.35.35.35/32