CSIT-604: Bootstrap file for vpp-csit-verify-master-centos7-nightly
[csit.git] / tests / func / lisp / api-crud-lisp-func.robot
1 # Copyright (c) 2016 Cisco and/or its affiliates.
2 # Licensed under the Apache License, Version 2.0 (the "License");
3 # you may not use this file except in compliance with the License.
4 # You may obtain a copy of the License at:
5 #
6 #     http://www.apache.org/licenses/LICENSE-2.0
7 #
8 # Unless required by applicable law or agreed to in writing, software
9 # distributed under the License is distributed on an "AS IS" BASIS,
10 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 # See the License for the specific language governing permissions and
12 # limitations under the License.
13
14 *** Settings ***
15 | Library | resources.libraries.python.topology.Topology
16 | Library | resources.libraries.python.NodePath
17 | Library | resources.libraries.python.Trace
18 | Library | resources.libraries.python.LispUtil
19 | Resource | resources/libraries/robot/default.robot
20 | Resource | resources/libraries/robot/interfaces.robot
21 | Resource | resources/libraries/robot/lisp/lisp_api.robot
22 # import additional Lisp settings from resource file
23 | Variables | resources/test_data/lisp/api/lisp_api_resources.py
24 | ...
25 | Force Tags | 3_NODE_SINGLE_LINK_TOPO | 3_NODE_DOUBLE_LINK_TOPO
26 | ... | VM_ENV | HW_ENV
27 | ...
28 | Test Setup | Set up functional test
29 | ...
30 | Test Teardown | Tear down functional test
31 | ...
32 | Documentation | *API test cases*
33 | ...
34 | ... | *[Top] Network Topologies:* DUT1 1-node topology.
35 | ... | *[Enc] Packet Encapsulations:* None.
36 | ... | *[Cfg] DUT configuration:* DUT1 gets configured with all LISP
37 | ... | parameters.
38 | ... | *[Ver] Verification:* DUT1 operational data gets verified following
39 | ... | configuration.
40 | ... | *[Ref] Applicable standard specifications:* RFC6830.
41
42 *** Variables ***
43 | ${locator_set_num}= | 3
44
45 *** Test Cases ***
46
47 | TC01: DUT can enable and disable LISP
48 | | [Documentation]
49 | | ... | [Top] DUT1. [Enc] None. [Cfg1] Test LISP enable/disable API; On \
50 | | ... | DUT1 enable LISP. [Ver1] Check DUT1 if LISP is enabled. [Cfg2]
51 | | ... | Then disable LISP. [Ver2] Check DUT1 if LISP is disabled. [Ref]
52 | | ... | RFC6830.
53 | | When Enable LISP | ${nodes['DUT1']}
54 | | Then LISP should be enabled | ${nodes['DUT1']} | ${lisp_status}
55 | | When Disable LISP | ${nodes['DUT1']}
56 | | Then LISP Should be disabled | ${nodes['DUT1']} | ${lisp_status}
57
58 | TC02: DUT can add and delete locator_set
59 | | [Documentation]
60 | | ... | [Top] DUT1. [Enc] None. [Cfg1] Test LISP locator_set API; on \
61 | | ... | DUT1 configure locator_set and locator. [Ver1] Check DUT1
62 | | ... | configured locator_set and locator are correct. [Cfg2] Then
63 | | ... | remove locator_set and locator. [Ver2] check DUT1 locator_set
64 | | ... | and locator are removed. [Ref] RFC6830.
65 | | Given Generate LISP locator_set data
66 | | ... | ${nodes['DUT1']} | ${locator_set_num}
67 | | And Enable LISP | ${nodes['DUT1']}
68 | | When Configure LISP locator_set data | ${nodes['DUT1']}
69 | | Then LISP locator_set shpuld be configured correctly | ${nodes['DUT1']}
70 | | When Delete all LISP locator_set from VPP | ${nodes['DUT1']}
71 | | Then LISP locator_set should be unset | ${nodes['DUT1']}
72
73 | TC03: DUT can add, reset and delete locator_set
74 | | [Documentation]
75 | | ... | [Top] DUT1. [Enc] None. [Cfg1] Test LISP locator_set API; on \
76 | | ... | DUT1 configure locator_set and locator. [Ver1] Check DUT1
77 | | ... | locator_set and locator are correct. [Cfg2] Then reset
78 | | ... | locator_set and set it again. [Ver2] Check DUT1 locator_set and
79 | | ... | locator are correct. [Cfg3] Then remove locator_set and locator.
80 | | ... | [Ver3] Check DUT1 all locator_set and locators are removed.
81 | | ... | [Ref] RFC6830.
82 | | Given Lisp locator_set data use for test reset locator_set are prepared
83 | | ... | ${nodes['DUT1']} | ${locator_set_num}
84 | | And Enable LISP | ${nodes['DUT1']}
85 | | When Configure LISP locator_set data | ${nodes['DUT1']}
86 | | Then LISP locator_set shpuld be configured correctly | ${nodes['DUT1']}
87 | | When Delete all LISP locator_set from VPP | ${nodes['DUT1']}
88 | | Then LISP locator_set should be unset | ${nodes['DUT1']}
89
90 | TC04: DUT can add and delete eid address
91 | | [Documentation]
92 | | ... | [Top] DUT1. [Enc] None. [Cfg1] Test LISP eid API; on DUT1 \
93 | | ... | configure LISP eid IP address. [Ver1] Check DUT1 configured data
94 | | ... | is correct. [Cfg2] Remove configured data. [Ver2] Check DUT1 all
95 | | ... | eid IP addresses are removed. [Ref] RFC6830.
96 | | Given Enable LISP | ${nodes['DUT1']}
97 | | When Configure LISP eid address | ${nodes['DUT1']} | ${eid_table}
98 | | Then LISP eid address should be set correctly to eid table
99 | | ... | ${nodes['DUT1']} | ${eid_table_vat}
100 | | When Delete all LISP eid address from VPP | ${nodes['DUT1']} | ${eid_table}
101 | | Then LISP eid table should be empty | ${nodes['DUT1']}
102
103 | TC05: DUT can add and delete LISP map resolver address
104 | | [Documentation]
105 | | ... | [Top] DUT1. [Enc] None. [Cfg1] Test LISP map resolver address \
106 | | ... | API; on DUT1 configure LISP map resolver address. [Ver1] Check
107 | | ... | DUT1 configured data is correct. [Cfg2] Remove configured data.
108 | | ... | [Ver2] Check DUT1 all map resolver addresses are removed. [Ref]
109 | | ... | RFC6830.
110 | | Given Enable LISP | ${nodes['DUT1']}
111 | | When Configure LISP map resolver address | ${nodes['DUT1']} | ${map_resolver}
112 | | Then LISP map resolver address should be configured correctly
113 | | ... | ${nodes['DUT1']} | ${map_resolver}
114 | | When Delete all LISP map resolver address from VPP
115 | | ... | ${nodes['DUT1']} | ${map_resolver}
116 | | Then LISP map resolver address should be empty | ${nodes['DUT1']}