X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=tests%2Ffunc%2Flisp%2Fipv4_lispgpe_ipv4.robot;h=7caba043da12800fac0ead2681b502f2f74beb95;hb=refs%2Fchanges%2F85%2F3685%2F10;hp=13af66f862ee6ce8518d532f147bf4edf26821cc;hpb=c1bf0a18260813cc9ca57d27bb2419f8654a9ed3;p=csit.git diff --git a/tests/func/lisp/ipv4_lispgpe_ipv4.robot b/tests/func/lisp/ipv4_lispgpe_ipv4.robot index 13af66f862..7caba043da 100644 --- a/tests/func/lisp/ipv4_lispgpe_ipv4.robot +++ b/tests/func/lisp/ipv4_lispgpe_ipv4.robot @@ -16,6 +16,7 @@ | Library | resources.libraries.python.NodePath | Library | resources.libraries.python.Trace | Library | resources.libraries.python.IPUtil +| Library | resources.libraries.python.VPPUtil | Library | resources.libraries.python.InterfaceUtil | Library | resources.libraries.python.VhostUser | Resource | resources/libraries/robot/traffic.robot @@ -32,13 +33,12 @@ | ... | Force Tags | 3_NODE_SINGLE_LINK_TOPO | VM_ENV | LISP | ... -| Test Setup | Run Keywords | Setup all DUTs before test -| ... | AND | Setup all TGs before traffic script -| ... | AND | Update All Interface Data On All Nodes | ${nodes} +| Test Setup | Func Test Setup | Test Teardown | Run Keywords | Show Packet Trace on All DUTs | ${nodes} -| ... | AND | Show vpp trace dump on all DUTs -| ... | AND | VPP Show Errors | ${nodes['DUT1']} -| ... | AND | VPP Show Errors | ${nodes['DUT2']} +| ... | AND | Show vpp trace dump on all DUTs +| ... | AND | Show Vpp Settings | ${nodes['DUT1']} +| ... | AND | Show Vpp Settings | ${nodes['DUT2']} +| ... | AND | Check VPP PID in Teardown | ... | Documentation | *ip4-lispgpe-ip4 encapsulation test cases* | ... @@ -109,34 +109,26 @@ | | ... | received packets are correct. | | ... | [Ref] RFC6830. | | ... -| | [Teardown] | Run Keywords | Show Packet Trace on All DUTs | ${nodes} -| | ... | AND | Show vpp trace dump on all DUTs -| | ... | AND | VPP Show Errors | ${nodes['DUT1']} -| | ... | AND | VPP Show Errors | ${nodes['DUT2']} -| | ... | AND | Run keyword if test passed | Fail -| | ... -| | [Tags] | EXPECTED_FAILING -| | ... | | Given Path for 3-node testing is set | | ... | ${nodes['TG']} | ${nodes['DUT1']} | ${nodes['DUT2']} | ${nodes['TG']} | | And Interfaces in 3-node path are up -| | And Set up LISP GPE topology -| | ... | ${dut1_node} | ${dut1_to_dut2} | ${NONE} -| | ... | ${dut2_node} | ${dut2_to_dut1} | ${NONE} -| | ... | ${duts_locator_set} | ${dut1_ip4_eid} | ${dut2_ip4_eid} -| | ... | ${dut1_to_dut2_ip4_static_adjacency} -| | ... | ${dut2_to_dut1_ip4_static_adjacency} +| | And Assign Interface To Fib Table | ${dut1_node} +| | ... | ${dut1_to_tg} | ${fib_table_1} +| | And Assign Interface To Fib Table | ${dut2_node} +| | ... | ${dut2_to_tg} | ${fib_table_1} +| | Add IP Neighbors | ${fib_table_1} | | And IP addresses are set on interfaces | | ... | ${dut1_node} | ${dut1_to_dut2} | ${dut1_to_dut2_ip4} | ${prefix4} | | ... | ${dut1_node} | ${dut1_to_tg} | ${dut1_to_tg_ip4} | ${prefix4} | | ... | ${dut2_node} | ${dut2_to_dut1} | ${dut2_to_dut1_ip4} | ${prefix4} | | ... | ${dut2_node} | ${dut2_to_tg} | ${dut2_to_tg_ip4} | ${prefix4} -| | When Setup VRF on DUT | ${dut1_node} | ${dut1_fib_table} | ${dut1_to_dut2} -| | ... | ${dut2_to_dut1_ip4} | ${dut2_to_dut1_mac} | ${tg2_ip4} | ${dut1_to_tg} -| | ... | ${tg1_ip4} | ${tg_to_dut1_mac} | ${prefix4} -| | And Setup VRF on DUT | ${dut2_node} | ${dut2_fib_table} | ${dut2_to_dut1} -| | ... | ${dut1_to_dut2_ip4} | ${dut1_to_dut2_mac} | ${tg1_ip4} | ${dut2_to_tg} -| | ... | ${tg2_ip4} | ${tg_to_dut2_mac} | ${prefix4} +| | When Set up LISP GPE topology +| | ... | ${dut1_node} | ${dut1_to_dut2} | ${NONE} +| | ... | ${dut2_node} | ${dut2_to_dut1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4_eid} | ${dut2_ip4_eid} +| | ... | ${dut1_to_dut2_ip4_static_adjacency} +| | ... | ${dut2_to_dut1_ip4_static_adjacency} +| | ... | ${dut1_dut2_vni} | ${fib_table_1} | | Then Send Packet And Check Headers | | ... | ${tg_node} | ${tg1_ip4} | ${tg2_ip4} | | ... | ${tg_to_dut1} | ${tg_to_dut1_mac} | ${dut1_to_tg_mac} @@ -159,11 +151,10 @@ | | ... | | [Teardown] | Run Keywords | Show Packet Trace on All DUTs | ${nodes} | | ... | AND | Show vpp trace dump on all DUTs -| | ... | AND | VPP Show Errors | ${nodes['DUT1']} -| | ... | AND | VPP Show Errors | ${nodes['DUT2']} +| | ... | AND | Show Vpp Settings | ${nodes['DUT1']} +| | ... | AND | Show Vpp Settings | ${nodes['DUT2']} | | ... | AND | Stop and Clear QEMU | ${dut1_node} | ${vm_node} -| | ... -| | [Tags] | EXPECTED_FAILING +| | ... | AND | Check VPP PID in Teardown | | ... | | Given Path for 3-node testing is set | | ... | ${nodes['TG']} | ${nodes['DUT1']} | ${nodes['DUT2']} | ${nodes['TG']} @@ -211,33 +202,32 @@ | | ... | | [Teardown] | Run Keywords | Show Packet Trace on All DUTs | ${nodes} | | ... | AND | Show vpp trace dump on all DUTs -| | ... | AND | VPP Show Errors | ${nodes['DUT1']} -| | ... | AND | VPP Show Errors | ${nodes['DUT2']} +| | ... | AND | Show Vpp Settings | ${nodes['DUT1']} +| | ... | AND | Show Vpp Settings | ${nodes['DUT2']} | | ... | AND | Stop and Clear QEMU | ${dut1_node} | ${vm_node} -| | ... -| | [Tags] | EXPECTED_FAILING +| | ... | AND | Check VPP PID in Teardown | | ... | | Given Path for 3-node testing is set | | ... | ${nodes['TG']} | ${nodes['DUT1']} | ${nodes['DUT2']} | ${nodes['TG']} | | And Interfaces in 3-node path are up -| | When Setup VRF on DUT | ${dut1_node} | ${dut1_fib_table} | ${dut1_to_dut2} -| | ... | ${dut2_to_dut1_ip4} | ${dut2_to_dut1_mac} | ${tg2_ip4} | ${dut1_to_tg} -| | ... | ${tg1_ip4} | ${tg_to_dut1_mac} | ${prefix4} -| | And Setup VRF on DUT | ${dut2_node} | ${dut2_fib_table} | ${dut2_to_dut1} -| | ... | ${dut1_to_dut2_ip4} | ${dut1_to_dut2_mac} | ${tg1_ip4} | ${dut2_to_tg} -| | ... | ${tg2_ip4} | ${tg_to_dut2_mac} | ${prefix4} +| | And Assign Interface To Fib Table | ${dut1_node} +| | ... | ${dut1_to_tg} | ${fib_table_1} +| | And Assign Interface To Fib Table | ${dut2_node} +| | ... | ${dut2_to_tg} | ${fib_table_1} +| | Add IP Neighbors | ${fib_table_1} | | And IP addresses are set on interfaces | | ... | ${dut1_node} | ${dut1_to_dut2} | ${dut1_to_dut2_ip4} | ${prefix4} | | ... | ${dut1_node} | ${dut1_to_tg} | ${dut1_to_tg_ip4} | ${prefix4} | | ... | ${dut2_node} | ${dut2_to_dut1} | ${dut2_to_dut1_ip4} | ${prefix4} | | ... | ${dut2_node} | ${dut2_to_tg} | ${dut2_to_tg_ip4} | ${prefix4} -| | And Set up LISP GPE topology +| | When Set up LISP GPE topology | | ... | ${dut1_node} | ${dut1_to_dut2} | ${NONE} | | ... | ${dut2_node} | ${dut2_to_dut1} | ${NONE} | | ... | ${duts_locator_set} | ${dut1_ip4_eid} | ${dut2_ip4_eid} | | ... | ${dut1_to_dut2_ip4_static_adjacency} | | ... | ${dut2_to_dut1_ip4_static_adjacency} -| | And Setup Qemu DUT1 +| | ... | ${dut1_dut2_vni} | ${fib_table_1} +| | And Setup Qemu DUT1 | ${fib_table_1} | | Then Send Packet And Check Headers | | ... | ${tg_node} | ${tg1_ip4} | ${tg2_ip4} | | ... | ${tg_to_dut1} | ${tg_to_dut1_mac} | ${dst_vhost_mac} @@ -250,10 +240,16 @@ *** Keywords *** | Setup Qemu DUT1 | | [Documentation] | Setup Vhosts on DUT1 and setup IP on one of them. Setup\ -| | ... | Qemu and bridge the vhosts. +| | ... | Qemu and bridge the vhosts. Optionally, you can set fib table ID\ +| | ... | where the vhost2 interface should be assigned to. +| | ... +| | [Arguments] | ${fib_table}=0 | | ... | | ${vhost1}= | Vpp Create Vhost User Interface | ${dut1_node} | ${sock1} | | ${vhost2}= | Vpp Create Vhost User Interface | ${dut1_node} | ${sock2} +| | Set Interface Address | ${dut1_node} | ${vhost2} | ${vhost_ip} | ${prefix4} +| | Assign Interface To Fib Table | ${dut1_node} +| | ... | ${vhost2} | ${fib_table} | | Set Interface State | ${dut1_node} | ${vhost1} | up | | Set Interface State | ${dut1_node} | ${vhost2} | up | | Bridge domain on DUT node is created | ${dut1_node} | ${bid} | learn=${TRUE} @@ -264,3 +260,18 @@ | | ${vhost_mac}= | Get Vhost User Mac By SW Index | ${dut1_node} | ${vhost2} | | Set test variable | ${dst_vhost_mac} | ${vhost_mac} | | VM for Vhost L2BD forwarding is setup | ${dut1_node} | ${sock1} | ${sock2} + +| Add IP Neighbors +| | [Documentation] +| | ... | Add IP neighbors to physical interfaces on DUTs.\ +| | ... | You can specify fib table ID for DUT-TG interfaces. Default is 0. +| | ... +| | [Arguments] | ${fib_id}=0 +| | Add IP Neighbor | ${dut1_node} | ${dut1_to_tg} | ${tg1_ip4} +| | ... | ${tg_to_dut1_mac} | ${fib_id} +| | Add IP Neighbor | ${dut2_node} | ${dut2_to_tg} | ${tg2_ip4} +| | ... | ${tg_to_dut2_mac} | ${fib_id} +| | Add IP Neighbor | ${dut1_node} | ${dut1_to_dut2} | ${dut2_to_dut1_ip4} +| | ... | ${dut2_to_dut1_mac} +| | Add IP Neighbor | ${dut2_node} | ${dut2_to_dut1} | ${dut1_to_dut2_ip4} +| | ... | ${dut1_to_dut2_mac} \ No newline at end of file