From 681bb937b97b0c2bf10595e2042cf5943d61896b Mon Sep 17 00:00:00 2001 From: Matej Klotton Date: Thu, 2 Jun 2016 17:41:24 +0200 Subject: Add test VPP honors DHCPv4 lease time -JIRA: CSIT-130 Change-Id: I1d0a92e8865021ac5c85e63256e1b75a839d4ce9 Signed-off-by: Matej Klotton --- resources/libraries/robot/dhcp_client.robot | 34 +++++++++++++++++++++++++++++ resources/libraries/robot/ipv4.robot | 29 ++++++++++++++++++++++++ 2 files changed, 63 insertions(+) (limited to 'resources/libraries') diff --git a/resources/libraries/robot/dhcp_client.robot b/resources/libraries/robot/dhcp_client.robot index 99a772e273..0dd5e7bbe6 100644 --- a/resources/libraries/robot/dhcp_client.robot +++ b/resources/libraries/robot/dhcp_client.robot @@ -102,3 +102,37 @@ | | ... | ELSE | Catenate | ${args} | --offer_xid | ${offer_xid} | | Run Traffic Script On Node | dhcp/check_dhcp_request.py | | ... | ${tg_node} | ${args} + + +| Send IP configuration to client via DHCP +| | [Documentation] | Run script that sends IP configuration to the DHCP client. +| | ... +| | ... | *Arguments:* +| | ... | - tg_node - TG node. Type: dictionary +| | ... | - tg_interface - TG interface where listen for DHCP DISCOVER, +| | ... | send DHCP OFFER and DHCP ACK after DHCP REQUEST messages. +| | ... | Type: string +| | ... | - server_mac - DHCP server MAC address. Type: string +| | ... | - server_ip - DHCP server IP address. Type: string +| | ... | - client_ip - IP address that is offered to client. Type: string +| | ... | - client_mask - IP netmask that is offered to client. Type: string +| | ... | - lease_time - IP lease time in seconds. Type: integer +| | ... +| | ... | *Return:* +| | ... | - No value returned. +| | ... +| | ... | *Example:* +| | ... +| | ... | \| Send IP configuration to client via DHCP \| ${nodes['TG']} \ +| | ... | \| eth2 \| 08:00:27:66:b8:57 \| 192.168.23.1 \ +| | ... | \| 192.168.23.10 \| 255.255.255.0 \| 86400 \| +| | ... +| | [Arguments] | ${tg_node} | ${tg_interface} +| | ... | ${server_mac} | ${server_ip} | ${client_ip} | ${client_mask} +| | ... | ${lease_time} +| | ${args}= | Catenate | --rx_if | ${tg_interface} +| | ... | --server_mac | ${server_mac} | --server_ip | ${server_ip} +| | ... | --client_ip | ${client_ip} | --client_mask | ${client_mask} +| | ... | --lease_time | ${lease_time} +| | Run Traffic Script On Node | dhcp/check_dhcp_request_ack.py +| | ... | ${tg_node} | ${args} diff --git a/resources/libraries/robot/ipv4.robot b/resources/libraries/robot/ipv4.robot index 9e31076772..4464cbc53c 100644 --- a/resources/libraries/robot/ipv4.robot +++ b/resources/libraries/robot/ipv4.robot @@ -125,3 +125,32 @@ | | :FOR | ${dut_node} | ${interface} | ${address} | ${prefix} | IN | @{args} | | | Set Interface Address | ${dut_node} | ${interface} | ${address} | | | ... | ${prefix} + +| Node replies to ICMP echo request +| | [Documentation] | Run traffic script that waits for ICMP reply and ignores +| | ... | all other packets. +| | ... +| | ... | *Arguments:* +| | ... | - tg_node - TG node where run traffic script. Type: dictionary +| | ... | - tg_interface - TG interface where send ICMP echo request. +| | ... | Type: string +| | ... | - dst_mac - Destination MAC address. Type: string +| | ... | - src_mac - Source MAC address. Type: string +| | ... | - dst_ip - Destination IP address. Type: string +| | ... | - src_ip - Source IP address. Type: string +| | ... | - timeout - Wait timeout in seconds (Default: 10). Type: integer +| | ... +| | ... | *Example:* +| | ... +| | ... | \| Node replies to ICMP echo request \ +| | ... | \| ${nodes['TG']} \| eth2 \ +| | ... | \| 08:00:27:46:2b:4c \| 08:00:27:66:b8:57 \ +| | ... | \| 192.168.23.10 \| 192.168.23.1 \| 10 \| +| | ... +| | [Arguments] | ${tg_node} | ${tg_interface} +| | ... | ${dst_mac} | ${src_mac} | ${dst_ip} | ${src_ip} | ${timeout}=${10} +| | ${args}= | Catenate | --rx_if | ${tg_interface} | --tx_if | ${tg_interface} +| | ... | --dst_mac | ${dst_mac} | --src_mac | ${src_mac} +| | ... | --dst_ip | ${dst_ip} | --src_ip | ${src_ip} | --timeout | ${timeout} +| | Run Traffic Script On Node | send_icmp_wait_for_reply.py +| | ... | ${tg_node} | ${args} -- cgit 1.2.3-korg