diff options
Diffstat (limited to 'resources/libraries/robot')
-rw-r--r-- | resources/libraries/robot/honeycomb/port_mirroring.robot | 33 |
1 files changed, 28 insertions, 5 deletions
diff --git a/resources/libraries/robot/honeycomb/port_mirroring.robot b/resources/libraries/robot/honeycomb/port_mirroring.robot index 854da311e9..81eedb944e 100644 --- a/resources/libraries/robot/honeycomb/port_mirroring.robot +++ b/resources/libraries/robot/honeycomb/port_mirroring.robot @@ -15,6 +15,10 @@ | Library | resources.libraries.python.honeycomb.HcAPIKwInterfaces.InterfaceKeywords | ... | WITH NAME | InterfaceAPI | Library | resources.libraries.python.telemetry.SPAN +| Library | resources.libraries.python.InterfaceUtil +| Library | resources.libraries.python.IPv4Util +| Library | resources.libraries.python.IPv4Setup +| Library | resources.libraries.python.Trace *** Keywords *** | Honeycomb Configures SPAN on interface @@ -24,17 +28,19 @@ | | ... | *Arguments:* | | ... | - node - information about a DUT node. Type: dictionary | | ... | - dst_interface - Mirroring destination interface. Type: string -| | ... | - src_interfaces - Mirroring source interfaces. Type: Argument list -\ -| | ... | any number of strings +| | ... | - src_interfaces - Mirroring source interfaces. Type: list \ +| | ... | of dictionaries | | ... | | ... | *Example:* | | ... | | ... | \| Honeycomb Configures SPAN on interface \| ${nodes['DUT1']} \ -| | ... | \| GigabitEthernet0/8/0 \| GigabitEthernet0/9/0 \| +| | ... | \| GigabitEthernet0/8/0 \| [{'iface-ref': 'GigabitEthernet0/10/0', \ +| | ... | \| 'state': 'transmit'}, \ +| | ... | \| {'iface-ref': 'local0', 'state': 'both'}] \| | | ... | | [Arguments] | ${node} | ${dst_interface} | @{src_interfaces} | | InterfaceAPI.Configure interface SPAN -| | ... | ${node} | ${dst_interface} | @{src_interfaces} +| | ... | ${node} | ${dst_interface} | ${src_interfaces} | Interface SPAN configuration from Honeycomb should be | | [Documentation] | Retrieves interface operational data and verifies that\ @@ -54,11 +60,28 @@ | | [Arguments] | ${node} | ${dst_interface} | @{src_interfaces} | | ${data}= | InterfaceAPI.Get interface oper data | ${node} | ${dst_interface} | | ${data}= | Set Variable -| | ... | ${data['span']['mirrored-interfaces']['mirrored-interface']} +| | ... | ${data['v3po:span']['mirrored-interfaces']['mirrored-interface']} | | Sort list | ${data} | | Sort list | ${src_interfaces} | | Lists should be equal | ${data} | ${src_interfaces} +| Interface SPAN configuration from Honeycomb should be empty +| | [Documentation] | Checks whether SPAN configuration from Honeycomb is empty. +| | ... +| | ... | *Arguments:* +| | ... | - node - Information about a DUT node. Type: dictionary +| | ... | - dst_interface - Mirroring destination interface. Type: string +| | ... +| | ... | *Example:* +| | ... +| | ... | \| Interface SPAN configuration from Honeycomb should be empty \ +| | ... | \| ${node} \| GigabitEthernetO/8/0 \| +| | ... +| | [Arguments] | ${node} | ${dst_interface} +| | ${data}= | Get interface oper data | ${node} | ${dst_interface} +| | Variable should not exist +| | ... | ${data['v3po:span']['mirrored-interfaces']['mirrored-interface']} + | Interface SPAN configuration from VAT should be | | [Documentation] | Retrieves SPAN configuration from VAT dump and verifies\ | | ... | that SPAN mirroring is configured with the provided interfaces. |