diff options
Diffstat (limited to 'resources/test_data')
22 files changed, 0 insertions, 4038 deletions
diff --git a/resources/test_data/honeycomb/acl.py b/resources/test_data/honeycomb/acl.py deleted file mode 100644 index 806e0143c6..0000000000 --- a/resources/test_data/honeycomb/acl.py +++ /dev/null @@ -1,101 +0,0 @@ -# Copyright (c) 2016 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Test variables for access control list test suite.""" - -# settings for acl tables -hc_acl_table = { - "name": "acl_table_test", - "nbuckets": 1, - "memory_size": 1048576, - "skip_n_vectors": 0, - "miss_next": "permit", - "mask": "00:00:00:00:00:00:ff:ff:ff:ff:ff:ff:00:00:00:00" -} - -hc_acl_table2 = { - "name": "acl_table_test2", - "nbuckets": 2, - "memory_size": 1048576, - "skip_n_vectors": 1, - "next_table": "acl_table_test", - "miss_next": "deny", - "mask": "ff:ff:ff:00:00:00:ff:ff:ff:ff:ff:ff:00:00:00:00" -} - -#TODO: remove once memory_size is visible in oper data(HC2VPP-10) -hc_acl_table_oper = { - "name": "acl_table_test", - "nbuckets": 1, - "skip_n_vectors": 0, - "miss_next": "permit", - "mask": "00:00:00:00:00:00:ff:ff:ff:ff:ff:ff:00:00:00:00" -} - -hc_acl_table2_oper = { - "name": "acl_table_test2", - "nbuckets": 2, - "skip_n_vectors": 1, - "next_table": "acl_table_test", - "miss_next": "deny", - "mask": "ff:ff:ff:00:00:00:ff:ff:ff:ff:ff:ff:00:00:00:00" -} - -# representation of table settings in VAT -table_index = 0 -vat_acl_table = { - "nbuckets": hc_acl_table['nbuckets'], - "skip": 0, - "match": 1, - "nextnode": -1, - "nexttbl": -1, - "mask": hc_acl_table['mask'].replace(":", ""), -} -table_index2 = 1 -vat_acl_table2 = { - "nbuckets": hc_acl_table2['nbuckets'], - "skip": 1, - "match": 1, - "nextnode": 0, - "nexttbl": table_index, - "mask": hc_acl_table2['mask'].replace(":", ""), -} -# setting for acl sessions -hc_acl_session = { - "match": "00:00:00:00:00:00:01:02:03:04:05:06:00:00:00:00", - "hit_next": "permit", - "opaque_index": 1, - "advance": 1 -} - -hc_acl_session2 = { - "match": "00:00:00:00:00:00:06:05:04:03:02:01:00:00:00:00", - "hit_next": "deny", - "opaque_index": 2, - "advance": 1 -} -# representation of session settings in VAT -session_index = 0 -vat_acl_session = { - "match": hc_acl_session['match'].replace(":", ""), - "advance": hc_acl_session['advance'], - "opaque": 1, - "next_index": -1 -} -session_index2 = 1 -vat_acl_session2 = { - "match": hc_acl_session2['match'].replace(":", ""), - "advance": hc_acl_session2['advance'], - "opaque": 2, - "next_index": session_index -} diff --git a/resources/test_data/honeycomb/bgp.py b/resources/test_data/honeycomb/bgp.py deleted file mode 100644 index f514d83289..0000000000 --- a/resources/test_data/honeycomb/bgp.py +++ /dev/null @@ -1,438 +0,0 @@ -# Copyright (c) 2017 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -from copy import deepcopy - -"""Test variables for BGP test suite.""" - -# Internal BGP peers for CRUD tests -address_internal = "192.168.0.2" -address_internal2 = "192.168.0.3" -holdtime_internal = 60 -peer_internal = { - "bgp-openconfig-extensions:neighbor": [{ - "neighbor-address": address_internal, - "config": { - "peer-type": "INTERNAL" - }, - "timers": { - "config": { - "connect-retry": 3, - "hold-time": holdtime_internal - } - }, - "transport": { - "config": { - "remote-port": 179, - "passive-mode": False - } - }, - "afi-safis": { - "afi-safi": [{ - "afi-safi-name": "openconfig-bgp-types:IPV4-UNICAST" - }] - } - }] - } - -peer_internal_update = { - "bgp-openconfig-extensions:neighbor": [{ - "neighbor-address": address_internal, - "config": { - "peer-type": "INTERNAL" - }, - "timers": { - "config": { - "connect-retry": 5, - "hold-time": holdtime_internal*2 - } - }, - "transport": { - "config": { - "remote-port": 180, - "passive-mode": True - } - }, - "afi-safis": { - "afi-safi": [{ - "afi-safi-name": "openconfig-bgp-types:IPV6-UNICAST" - }] - } - }] - } - -peer_internal2 = deepcopy(peer_internal) -peer_internal2["bgp-openconfig-extensions:neighbor"][0]["neighbor-address"] = \ - address_internal2 - -# Application BGP peer for CRUD test -address_application = "192.168.0.4" -peer_application = { - "bgp-openconfig-extensions:neighbor": [{ - "neighbor-address": address_application, - "config": { - "peer-group": "application-peers" - }, - "afi-safis": { - "afi-safi": [ - { - "afi-safi-name": "openconfig-bgp-types:IPV4-UNICAST" - }, - { - "afi-safi-name": - "openconfig-bgp-types:IPV4-LABELLED-UNICAST" - }] - } - }] - } - -# IPv4 route for CRUD test -route_address_ipv4 = "192.168.0.5/32" -route_id_ipv4 = 0 -route_data_ipv4 = { - "bgp-inet:ipv4-route": [{ - "route-key": route_address_ipv4, - "path-id": route_id_ipv4, - "prefix": route_address_ipv4, - "attributes": { - "as-path": {}, - "origin": { - "value": "igp" - }, - "local-pref": { - "pref": 100 - }, - "ipv4-next-hop": { - "global": "192.168.1.1" - } - } - }] -} - -route_data_ipv4_oper = { - "bgp-inet:ipv4-route": [{ - "route-key": route_address_ipv4, - "path-id": route_id_ipv4, - "prefix": route_address_ipv4, - "attributes": { - "origin": { - "value": "igp" - }, - "local-pref": { - "pref": 100 - }, - "ipv4-next-hop": { - "global": "192.168.1.1" - } - } - }] -} - -# IPv4 route for testing Update operation -route_data_ipv4_update = { - "bgp-inet:ipv4-route": [{ - "route-key": route_address_ipv4, - "path-id": route_id_ipv4, - "prefix": route_address_ipv4, - "attributes": { - "as-path": {}, - "origin": { - "value": "egp" - }, - "local-pref": { - "pref": 200 - }, - "ipv4-next-hop": { - "global": "192.168.1.2" - } - } - }] -} -route_data_ipv4_update_oper = { - "bgp-inet:ipv4-route": [{ - "route-key": route_address_ipv4, - "path-id": route_id_ipv4, - "prefix": route_address_ipv4, - "attributes": { - "origin": { - "value": "egp" - }, - "local-pref": { - "pref": 200 - }, - "ipv4-next-hop": { - "global": "192.168.1.2" - } - } - }] -} - -# IPv4 route for testing multiple routes -route_address_ipv4_2 = "192.168.0.6/32" -route_id_ipv4_2 = 1 -route_data_ipv4_2 = { - "bgp-inet:ipv4-route": [{ - "route-key": route_address_ipv4_2, - "path-id": route_id_ipv4_2, - "prefix": route_address_ipv4_2, - "attributes": { - "as-path": {}, - "origin": { - "value": "igp" - }, - "local-pref": { - "pref": 100 - }, - "ipv4-next-hop": { - "global": "192.168.1.2" - } - } - }] -} - -route_data_ipv4_2_oper = { - "bgp-inet:ipv4-route": [{ - "route-key": route_address_ipv4_2, - "path-id": route_id_ipv4_2, - "prefix": route_address_ipv4_2, - "attributes": { - "origin": { - "value": "igp" - }, - "local-pref": { - "pref": 100 - }, - "ipv4-next-hop": { - "global": "192.168.1.2" - } - } - }] -} - -# IPv6 route for CRUD test -route_address_ipv6 = "3ffe:62::1/64" -route_id_ipv6 = 0 -route_data_ipv6 = { - "bgp-inet:ipv6-route": [{ - "route-key": route_address_ipv6, - "path-id": route_id_ipv6, - "prefix": route_address_ipv6, - "attributes": { - "as-path": {}, - "origin": { - "value": "igp" - }, - "local-pref": { - "pref": 100 - }, - "ipv6-next-hop": { - "global": "3ffe:63::1" - } - } - }] -} - -# IPv4 route operational data in routing table -table1_oper = { - "destination-prefix": route_address_ipv4, - "next-hop": "192.168.1.1", - "vpp-ipv4-unicast-routing:vpp-ipv4-route": {} -} - -# Peer configurations for traffic test -dut1_peer = { - "bgp-openconfig-extensions:neighbor": [{ - "neighbor-address": "192.168.1.1", - "config": { - "peer-type": "INTERNAL" - }, - "timers": { - "config": { - "connect-retry": 3, - "hold-time": 60 - } - }, - "transport": { - "config": { - "remote-port": 179, - "passive-mode": False - } - }, - "afi-safis": { - "afi-safi": [ - { - "afi-safi-name": "openconfig-bgp-types:IPV4-UNICAST" - }, - { - "afi-safi-name": "openconfig-bgp-types:IPV6-UNICAST" - }, - { - "afi-safi-name": "LINKSTATE" - } - ] - } - }] -} - -dut2_peer = { - "bgp-openconfig-extensions:neighbor": [{ - "neighbor-address": "192.168.1.2", - "config": { - "peer-type": "INTERNAL" - }, - "timers": { - "config": { - "connect-retry": 3, - "hold-time": 60 - } - }, - "transport": { - "config": { - "remote-port": 179, - "passive-mode": True - } - }, - "afi-safis": { - "afi-safi": [ - { - "afi-safi-name": "openconfig-bgp-types:IPV4-UNICAST" - }, - { - "afi-safi-name": "openconfig-bgp-types:IPV6-UNICAST" - }, - { - "afi-safi-name": "LINKSTATE" - } - ] - } - }] -} - -# IPv4 route for traffic test -dut1_route_address = "192.168.0.5/32" -dut1_route_id = 0 -dut1_route = { - "bgp-inet:ipv4-route": [{ - "route-key": dut1_route_address, - "path-id": dut1_route_id, - "prefix": dut1_route_address, - "attributes": { - "as-path": {}, - "origin": { - "value": "igp" - }, - "local-pref": { - "pref": 100 - }, - "ipv4-next-hop": { - "global": "192.168.1.3" - } - } - }] -} - -dut1_route_oper = { - "bgp-inet:ipv4-route": [{ - "route-key": dut1_route_address, - "path-id": dut1_route_id, - "prefix": dut1_route_address, - "attributes": { - "origin": { - "value": "igp" - }, - "local-pref": { - "pref": 100 - }, - "ipv4-next-hop": { - "global": "192.168.1.3" - } - } - }] -} - -# IPv4 route in peer operational data -rib_operational = { - "loc-rib": {"tables": [ - { - "afi": "bgp-types:ipv4-address-family", - "safi": "bgp-types:unicast-subsequent-address-family", - "bgp-inet:ipv4-routes": { - "ipv4-route": dut1_route_oper["bgp-inet:ipv4-route"] - } - } - ]} -} - -route_operational = { - "next-hop": {"next-hop-address": "192.168.1.3"}, - "destination-prefix": dut1_route_address -} - -# IPv6 route for traffic test -dut1_route_ip6_prefix = "3ffe:62::/64" -dut1_route_ip6_id = 0 -dut1_route_ip6 = { - "bgp-inet:ipv6-route": [{ - "route-key": dut1_route_ip6_prefix, - "path-id": dut1_route_ip6_id, - "prefix": dut1_route_ip6_prefix, - "attributes": { - "as-path": {}, - "origin": { - "value": "igp" - }, - "local-pref": { - "pref": 100 - }, - "ipv6-next-hop": { - "global": "3ffe:63::1" - } - } - }] -} -dut1_route_ip6_oper = { - "bgp-inet:ipv6-route": [{ - "route-key": dut1_route_ip6_prefix, - "path-id": dut1_route_ip6_id, - "prefix": dut1_route_ip6_prefix, - "attributes": { - "origin": { - "value": "igp" - }, - "local-pref": { - "pref": 100 - }, - "ipv6-next-hop": { - "global": "3ffe:63::1" - } - } - }] -} - -# IPv6 route in peer operational data -rib_ip6_operational = { - "loc-rib": {"tables": [ - { - "afi": "bgp-types:ipv6-address-family", - "safi": "bgp-types:unicast-subsequent-address-family", - "bgp-inet:ipv6-routes": { - "ipv6-route": dut1_route_ip6_oper["bgp-inet:ipv6-route"] - } - } - ]} -} - -route_ip6_operational = { - "next-hop": {"next-hop-address": "3ffe:63::1"}, - "destination-prefix": dut1_route_ip6_prefix -} diff --git a/resources/test_data/honeycomb/dhcp_relay.py b/resources/test_data/honeycomb/dhcp_relay.py deleted file mode 100644 index 0d2427f40c..0000000000 --- a/resources/test_data/honeycomb/dhcp_relay.py +++ /dev/null @@ -1,122 +0,0 @@ -# Copyright (c) 2016 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Test variables for DHCP relay test suite.""" - -# IPv4 addresses used in traffic tests -dut_to_tg_if1_ip = "172.16.0.1" -dut_to_tg_if2_ip = "192.168.0.1" -dhcp_server1_ip = "192.168.0.100" -dhcp_server2_ip = "192.168.0.101" -client_ip = "172.16.0.2" -prefix_length = 24 - -# IPv6 addresses used in traffic tests -dut_to_tg_if1_ip6 = "3ffe:62::1" -dut_to_tg_if2_ip6 = "3ffe:63::1" -dhcp_server_ip6 = "3ffe:63::2" -client_ip6 = "3ffe:62::2" -prefix_length_v6 = 64 - -# DHCP relay configuration -relay1 = { - "relay": [ - { - "address-family": "vpp-fib-table-management:ipv4", - "rx-vrf-id": 0, - "gateway-address": dut_to_tg_if1_ip, - "server": [ - { - "vrf-id": 0, - "address": dhcp_server1_ip - }, - ] - } - ] -} - -relay1_oper = { - "address-family": "vpp-fib-table-management:ipv4", - "rx-vrf-id": 0, - "gateway-address": dut_to_tg_if1_ip, - "server": [ - { - "vrf-id": 0, - "address": dhcp_server1_ip - } - ] -} - -relay2 = { - "relay": [ - { - "address-family": "vpp-fib-table-management:ipv4", - "rx-vrf-id": 0, - "gateway-address": dut_to_tg_if1_ip, - "server": [ - { - "vrf-id": 0, - "address": dhcp_server1_ip - }, - { - "vrf-id": 0, - "address": dhcp_server2_ip - }, - ] - } - ] -} - -relay2_oper = { - "address-family": "vpp-fib-table-management:ipv4", - "rx-vrf-id": 0, - "gateway-address": dut_to_tg_if1_ip, - "server": [ - { - "vrf-id": 0, - "address": dhcp_server1_ip - }, - { - "vrf-id": 0, - "address": dhcp_server2_ip - } - ] -} - -relay_v6 = { - "relay": [ - { - "address-family": "vpp-fib-table-management:ipv6", - "rx-vrf-id": 0, - "gateway-address": dut_to_tg_if1_ip6, - "server": [ - { - "vrf-id": 0, - "address": dhcp_server_ip6 - }, - ] - } - ] -} - -relay_v6_oper = { - "address-family": "vpp-fib-table-management:ipv6", - "rx-vrf-id": 0, - "gateway-address": dut_to_tg_if1_ip6, - "server": [ - { - "vrf-id": 0, - "address": dhcp_server_ip6 - } - ] -} diff --git a/resources/test_data/honeycomb/interface_ip.py b/resources/test_data/honeycomb/interface_ip.py deleted file mode 100644 index cc600755f0..0000000000 --- a/resources/test_data/honeycomb/interface_ip.py +++ /dev/null @@ -1,35 +0,0 @@ -# Copyright (c) 2016 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Test variables for Basic interface management and IP addresses.""" - -# Configuration which will be set and verified during tests. -ipv4_address = "192.168.0.2" -ipv4_address2 = "192.168.1.2" -ipv4_prefix = 24 -ipv4_mask = "255.255.255.0" -ipv4_neighbor = "192.168.0.4" -ipv4_neighbor2 = "192.168.1.4" -ipv4_settings = {"mtu": 9000} -ipv6_address = "10::10" -ipv6_address2 = "11::10" -ipv6_prefix = 64 -ipv6_mask = "ffff:ffff:ffff:ffff::" -ipv6_neighbor = "10::11" -ipv6_neighbor2 = "11::11" -neighbor_mac = "08:00:27:c0:5d:37" -neighbor_mac2 = "08:00:27:c0:5d:37" -ipv6_settings = {"enabled": True, "forwarding": True, "mtu": 9000, - "dup-addr-detect-transmits": 5} -ethernet = {"mtu": 9000} -routing = {"vrf-id": 27} diff --git a/resources/test_data/honeycomb/l2_fib.py b/resources/test_data/honeycomb/l2_fib.py deleted file mode 100644 index 70b1e74e13..0000000000 --- a/resources/test_data/honeycomb/l2_fib.py +++ /dev/null @@ -1,169 +0,0 @@ -# Copyright (c) 2016 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Test variables for Honeycomb L2 FIB test suite.""" - -from resources.libraries.python.topology import Topology - - -def get_variables(node, interface, interface2): - """Creates and returns dictionary of test variables. - - :param node: A Honeycomb node. - :param interface: Name of an interface on the specified node. - :param interface: Name of another interface on the specified node. - :type node: dict - :type interface: str - :type interface2: str - :return: Dictionary of test variables. - :rtype: dict - """ - # Interface sw_if_index - sw_if_index = Topology.get_interface_sw_index_by_name(node, interface) - sw_if_index2 = Topology.get_interface_sw_index_by_name(node, interface2) - - # Bridge domain name. - bd_name = 'test-l2-bd' - - # L2 FIB MACs used in configuration. - notstatic = "aa:bb:cc:dd:ee:ff" - static = "22:22:33:44:55:66" - filtered = "00:01:02:03:04:05" - - variables = { - 'bd_name': bd_name, - # Bridge domain settings used while creating a test bridge domain. - 'bd_settings': { - 'flood': True, - 'forward': True, - 'learn': False, - 'unknown-unicast-flood': True, - 'arp-termination': True - }, - - # Index of created bridge domain. - 'bd_index': 1, - - # Bridge domain configuration used while adding the bridge domain to an - # interface. - 'if_bd_settings': { - 'bridge-domain': bd_name, - 'split-horizon-group': 1, - 'bridged-virtual-interface': False - }, - - # Add L2 FIB entry (forward). - # Configuration data: - 'l2_fib_forward_cfg': { - "phys-address": notstatic, - "outgoing-interface": interface, - "action": "l2-fib-forward" - }, - - # Expected operational data: - 'l2_fib_forward_oper': { - "phys-address": notstatic, - "outgoing-interface": interface, - "bridged-virtual-interface": False, - "action": "v3po:l2-fib-forward", - "static-config": False - }, - - # Expected VAT data: - 'l2_fib_forward_vat': { - "mac": notstatic, - "sw_if_index": sw_if_index, - "static_mac": 0, - "filter_mac": 0, - "bvi_mac": 0 - }, - - # Add L2 FIB entry (static, forward). - # Configuration data: - 'l2_fib_static_forward_cfg': { - "phys-address": static, - "outgoing-interface": interface, - "static-config": True, - "action": "l2-fib-forward" - }, - - # Expected operational data: - 'l2_fib_static_forward_oper': { - "phys-address": static, - "outgoing-interface": interface, - "bridged-virtual-interface": False, - "action": "v3po:l2-fib-forward", - "static-config": True - }, - - # Expected VAT data: - 'l2_fib_static_forward_vat': { - "mac": static, - "sw_if_index": sw_if_index, - "static_mac": 1, - "filter_mac": 0, - "bvi_mac": 0 - }, - - # Add L2 FIB entry (filter). - # Configuration data: - 'l2_fib_filter_cfg': { - "phys-address": filtered, - "static-config": True, - "action": "l2-fib-filter" - }, - - # Expected operational data: - 'l2_fib_filter_oper': { - "phys-address": filtered, - "bridged-virtual-interface": False, - "action": "v3po:l2-fib-filter", - "static-config": True - }, - - # Expected VAT data: - 'l2_fib_filter_vat': { - "mac": filtered, - "static_mac": 1, - "filter_mac": 1, - "bvi_mac": 0 - }, - - # WRONG configuration data - Add L2 FIB entry. - 'l2_fib_forward_cfg_wrong_mac': { - "phys-address": "WRONG-MAC", - "outgoing-interface": interface, - "action": "l2-fib-forward" - }, - - 'l2_fib_forward_cfg_wrong_if': { - "phys-address": notstatic, - "outgoing-interface": "WRONG-INTERFACE", - "action": "l2-fib-forward" - }, - - 'l2_fib_forward_cfg_wrong_action': { - "phys-address": notstatic, - "outgoing-interface": interface, - "action": "WRONG-ACTION" - }, - - # Modify L2 FIB entry (forward). - # Configuration data: - 'l2_fib_forward_modified_cfg': { - "phys-address": notstatic, - "outgoing-interface": sw_if_index2, - "action": "l2-fib-forward" - } - } - return variables diff --git a/resources/test_data/honeycomb/lisp/lisp.py b/resources/test_data/honeycomb/lisp/lisp.py deleted file mode 100644 index f5ebb16f39..0000000000 --- a/resources/test_data/honeycomb/lisp/lisp.py +++ /dev/null @@ -1,341 +0,0 @@ -# Copyright (c) 2017 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Test variables for LISP test suite.""" - -from copy import deepcopy - -locator_set = "loc01" - -remote_bd_subtable = { - "virtual-network-identifier": 3, - "bridge-domain-subtable": { - "bridge-domain-ref": "bd_lisp", - "remote-mappings": { - "remote-mapping": [{ - "id": "remote_map_l2", - "eid": { - "virtual-network-id": 3, - "address-type": "ietf-lisp-address-types:mac-afi", - "mac": "aa:aa:aa:aa:aa:ab", - }, - "rlocs": { - "locator": [{ - "address": "192.168.0.3", - "priority": 1, - "weight": 1 - }] - }, - }] - }, - } -} - -remote_vrf_subtable = { - "virtual-network-identifier": 4, - "vrf-subtable": { - "table-id": 1, - "remote-mappings": { - "remote-mapping": [{ - "id": "remote_map_vrf", - "eid": { - "virtual-network-id": 4, - "address-type": "ietf-lisp-address-types:ipv4-afi", - "ipv4": "192.168.0.2" - }, - "rlocs": { - "locator": [{ - "address": "192.168.0.3", - "priority": 1, - "weight": 1 - }] - }, - - }] - }, - } -} - -local_bd_subtable = { - "virtual-network-identifier": 5, - "bridge-domain-subtable": { - "bridge-domain-ref": "bd2_lisp", - "local-mappings": { - "local-mapping": [{ - "id": "local_map_l2", - "eid": { - "address-type": "ietf-lisp-address-types:mac-afi", - "virtual-network-id": 5, - "mac": "ba:aa:aa:aa:aa:aa" - }, - "locator-set": locator_set - }] - }, - } -} - -local_vrf_subtable = { - "virtual-network-identifier": 6, - "vrf-subtable": { - "table-id": 2, - "local-mappings": { - "local-mapping": [{ - "id": "local_map_vrf", - "eid": { - "virtual-network-id": 6, - "address-type": "ietf-lisp-address-types:ipv4-afi", - "ipv4": "192.168.1.1" - }, - "locator-set": locator_set - }] - }, - } -} - -lisp_settings_enable = { - "lisp": { - "enable": True - } -} - -prepare_vrf_adjacency = { - "virtual-network-identifier": 7, - "vrf-subtable": { - "table-id": 3, - "local-mappings": { - "local-mapping": [{ - "id": "local_map_vrf", - "eid": { - "virtual-network-id": 7, - "address-type": "ietf-lisp-address-types:ipv4-afi", - "ipv4": "192.168.1.1" - }, - "locator-set": locator_set - }] - }, - "remote-mappings": { - "remote-mapping": [{ - "id": "remote_map_vrf", - "eid": { - "virtual-network-id": 7, - "address-type": "ietf-lisp-address-types:ipv4-afi", - "ipv4": "192.168.0.2" - }, - "rlocs": { - "locator": [{ - "address": "192.168.0.3", - "priority": 1, - "weight": 1 - }] - }, - - }] - }, - } -} - -vrf_adjacency = { - "adjacency": [{ - "id": "adj01", - "local-eid": { - "virtual-network-id": 7, - "address-type": "ietf-lisp-address-types:ipv4-afi", - "ipv4": "192.168.1.1" - }, - "remote-eid": { - "virtual-network-id": 7, - "address-type": "ietf-lisp-address-types:ipv4-afi", - "ipv4": "192.168.0.2" - }, - }] - } - -adj_subtable = deepcopy(prepare_vrf_adjacency) -adj_subtable["vrf-subtable"]["remote-mappings"]\ - ["remote-mapping"][0]["adjacencies"] = deepcopy(vrf_adjacency) - - -def create_settings_dict(subtable): - settings = { - "eid-table": { - "vni-table": [subtable] - } - } - - return settings - -lisp_settings_remote_bd = create_settings_dict(remote_bd_subtable) -lisp_settings_remote_vrf = create_settings_dict(remote_vrf_subtable) -lisp_settings_local_bd = create_settings_dict(local_bd_subtable) -lisp_settings_local_vrf = create_settings_dict(local_vrf_subtable) -lisp_settings_both_vrf = create_settings_dict(prepare_vrf_adjacency) - -vat_remote_bd = { - "is_local": 0, - "vni": remote_bd_subtable["virtual-network-identifier"], - "eid": remote_bd_subtable["bridge-domain-subtable"]["remote-mappings"][ - "remote-mapping"][0]["eid"]["mac"], -} - -vat_remote_vrf = { - "is_local": 0, - "vni": remote_vrf_subtable["virtual-network-identifier"], - "eid": remote_vrf_subtable["vrf-subtable"]["remote-mappings"][ - "remote-mapping"][0]["eid"]["ipv4"]+"/32", -} - -vat_local_bd = { - "is_local": 1, - "vni": local_bd_subtable["virtual-network-identifier"], - "eid": local_bd_subtable["bridge-domain-subtable"]["local-mappings"][ - "local-mapping"][0]["eid"]["mac"] -} - -vat_local_vrf = { - "is_local": 1, - "vni": local_vrf_subtable["virtual-network-identifier"], - "eid": local_vrf_subtable["vrf-subtable"]["local-mappings"][ - "local-mapping"][0]["eid"]["ipv4"]+"/32" -} - -# variables for traffic test -dut_to_tg_if1_ip4 = "192.168.0.1" -dut_to_tg_if2_ip4 = "192.168.1.1" -tg_to_dut_if2_ip4 = "192.168.1.2" -src_ip4 = "192.168.0.2" -dst_ip4 = "192.168.2.2" -prefix_len4 = 24 - -local_eid4 = "192.168.0.0/24" -remote_eid4 = "192.168.2.0/24" -src_rloc4 = dut_to_tg_if2_ip4 -dst_rloc4 = tg_to_dut_if2_ip4 - -lisp_traffic_table_ip4 = { - "virtual-network-identifier": 0, - "vrf-subtable": { - "table-id": 1, - "local-mappings": { - "local-mapping": [{ - "id": "local_map_vrf", - "eid": { - "virtual-network-id": 0, - "address-type": "ietf-lisp-address-types:ipv4-prefix-afi", - "ipv4-prefix": local_eid4 - }, - "locator-set": locator_set - }] - }, - "remote-mappings": { - "remote-mapping": [{ - "id": "remote_map_vrf", - "eid": { - "virtual-network-id": 0, - "address-type": "ietf-lisp-address-types:ipv4-prefix-afi", - "ipv4-prefix": remote_eid4 - }, - "rlocs": { - "locator": [{ - "address": tg_to_dut_if2_ip4, - "priority": 1, - "weight": 1 - }] - }, - "adjacencies": { - "adjacency": [{ - "id": "adj01", - "local-eid": { - "virtual-network-id": 0, - "address-type": - "ietf-lisp-address-types:ipv4-prefix-afi", - "ipv4-prefix": local_eid4 - }, - "remote-eid": { - "virtual-network-id": 0, - "address-type": - "ietf-lisp-address-types:ipv4-prefix-afi", - "ipv4-prefix": remote_eid4 - }, - }] - } - }] - }, - } -} - -dut_to_tg_if1_ip6 = "10::1" -dut_to_tg_if2_ip6 = "11::1" -tg_to_dut_if2_ip6 = "11::2" -src_ip6 = "10::2" -dst_ip6 = "12::2" -prefix_len6 = 64 - -local_eid6 = "10::/64" -remote_eid6 = "12::/64" -src_rloc6 = dut_to_tg_if2_ip6 -dst_rloc6 = tg_to_dut_if2_ip6 - -lisp_traffic_table_ip6 = { - "virtual-network-identifier": 0, - "vrf-subtable": { - "table-id": 1, - "local-mappings": { - "local-mapping": [{ - "id": "local_map_vrf", - "eid": { - "virtual-network-id": 0, - "address-type": "ietf-lisp-address-types:ipv6-prefix-afi", - "ipv6-prefix": local_eid6 - }, - "locator-set": locator_set - }] - }, - "remote-mappings": { - "remote-mapping": [{ - "id": "remote_map_vrf", - "eid": { - "virtual-network-id": 0, - "address-type": "ietf-lisp-address-types:ipv6-prefix-afi", - "ipv6-prefix": remote_eid6 - }, - "rlocs": { - "locator": [{ - "address": tg_to_dut_if2_ip6, - "priority": 1, - "weight": 1 - }] - }, - "adjacencies": { - "adjacency": [{ - "id": "adj01", - "local-eid": { - "virtual-network-id": 0, - "address-type": - "ietf-lisp-address-types:ipv6-prefix-afi", - "ipv6-prefix": local_eid6 - }, - "remote-eid": { - "virtual-network-id": 0, - "address-type": - "ietf-lisp-address-types:ipv6-prefix-afi", - "ipv6-prefix": remote_eid6 - }, - }] - } - }] - }, - } -} - -lisp_traffic_ip4 = create_settings_dict(lisp_traffic_table_ip4) -lisp_traffic_ip6 = create_settings_dict(lisp_traffic_table_ip6) diff --git a/resources/test_data/honeycomb/lisp/lisp_gpe.py b/resources/test_data/honeycomb/lisp/lisp_gpe.py deleted file mode 100644 index f91cb86fe9..0000000000 --- a/resources/test_data/honeycomb/lisp/lisp_gpe.py +++ /dev/null @@ -1,213 +0,0 @@ -# Copyright (c) 2017 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Test variables for LISP GPE test suite.""" - -negative_mapping_ip4 = { - "id": "lispgpe_negative", - "dp-table": 1, - "vni": 0, - "local-eid": { - "address-type": "ietf-lisp-address-types:ipv4-prefix-afi", - "virtual-network-id": 0, - "ipv4-prefix": "192.168.0.0/24" - }, - "remote-eid": { - "address-type": "ietf-lisp-address-types:ipv4-prefix-afi", - "virtual-network-id": 0, - "ipv4-prefix": "192.168.1.0/24" - }, - "action": "send-map-request" -} - -# used for update operation -negative_mapping_ip4_edit = { - "id": "lispgpe_negative", - "dp-table": 1, - "vni": 0, - "local-eid": { - "address-type": "ietf-lisp-address-types:ipv4-prefix-afi", - "virtual-network-id": 0, - "ipv4-prefix": "192.168.2.0/24" - }, - "remote-eid": { - "address-type": "ietf-lisp-address-types:ipv4-prefix-afi", - "virtual-network-id": 0, - "ipv4-prefix": "192.168.3.0/24" - }, - "action": "send-map-request" -} - -# used for multiple entries -negative_mapping_ip4_2 = { - "id": "lispgpe_negative_2", - "dp-table": 1, - "vni": 0, - "local-eid": { - "address-type": "ietf-lisp-address-types:ipv4-prefix-afi", - "virtual-network-id": 0, - "ipv4-prefix": "192.168.2.0/24" - }, - "remote-eid": { - "address-type": "ietf-lisp-address-types:ipv4-prefix-afi", - "virtual-network-id": 0, - "ipv4-prefix": "192.168.3.0/24" - }, - "action": "send-map-request" -} - -positive_mapping_ip4 = { - "id": "lispgpe_positive", - "dp-table": 1, - "vni": 0, - "local-eid": { - "address-type": "ietf-lisp-address-types:ipv4-prefix-afi", - "virtual-network-id": 0, - "ipv4-prefix": "192.168.4.0/24" - }, - "remote-eid": { - "address-type": "ietf-lisp-address-types:ipv4-prefix-afi", - "virtual-network-id": 0, - "ipv4-prefix": "192.168.5.0/24" - }, - "locator-pair": [ - { - "local-locator": "192.168.6.2", - "remote-locator": "192.168.7.3", - "weight": 0 - - }, - { - "local-locator": "192.168.5.2", - "remote-locator": "192.168.5.3", - "weight": 1 - } - - ] -} - -negative_mapping_ip6 = { - "id": "lispgpe_negative6", - "dp-table": 1, - "vni": 0, - "local-eid": { - "address-type": "ietf-lisp-address-types:ipv6-prefix-afi", - "virtual-network-id": 0, - "ipv6-prefix": "10::/64" - }, - "remote-eid": { - "address-type": "ietf-lisp-address-types:ipv6-prefix-afi", - "virtual-network-id": 0, - "ipv6-prefix": "11::/64" - }, - "action": "send-map-request" -} - -positive_mapping_ip6 = { - "id": "lispgpe_positive6", - "dp-table": 1, - "vni": 0, - "local-eid": { - "address-type": "ietf-lisp-address-types:ipv6-prefix-afi", - "virtual-network-id": 0, - "ipv6-prefix": "12::/64" - }, - "remote-eid": { - "address-type": "ietf-lisp-address-types:ipv6-prefix-afi", - "virtual-network-id": 0, - "ipv6-prefix": "13::/64" - }, - "locator-pair": [ - { - "local-locator": "13::10", - "remote-locator": "13::11", - "weight": 0 - }, - { - "local-locator": "14::10", - "remote-locator": "14::11", - "weight": 1 - } - ] -} - -# variables for traffic test -dut_to_tg_if1_ip4 = "192.168.0.1" -dut_to_tg_if2_ip4 = "192.168.1.1" -tg_to_dut_if2_ip4 = "192.168.1.2" -src_ip4 = "192.168.0.2" -dst_ip4 = "192.168.2.2" -prefix_len4 = 24 - -local_eid4 = "192.168.0.0/24" -remote_eid4 = "192.168.2.0/24" -src_rloc4 = dut_to_tg_if2_ip4 -dst_rloc4 = tg_to_dut_if2_ip4 - -lisp_traffic_ip4 = { - "id": "lispgpe_traffic_ip4", - "dp-table": 0, - "vni": 0, - "local-eid": { - "address-type": "ietf-lisp-address-types:ipv4-prefix-afi", - "virtual-network-id": 0, - "ipv4-prefix": local_eid4 - }, - "remote-eid": { - "address-type": "ietf-lisp-address-types:ipv4-prefix-afi", - "virtual-network-id": 0, - "ipv4-prefix": remote_eid4 - }, - "locator-pair": [ - { - "local-locator": src_rloc4, - "remote-locator": dst_rloc4, - "weight": 0 - } - ] -} - -dut_to_tg_if1_ip6 = "10::1" -dut_to_tg_if2_ip6 = "11::1" -tg_to_dut_if2_ip6 = "11::2" -src_ip6 = "10::2" -dst_ip6 = "12::2" -prefix_len6 = 64 - -local_eid6 = "10::/64" -remote_eid6 = "12::/64" -src_rloc6 = dut_to_tg_if2_ip6 -dst_rloc6 = tg_to_dut_if2_ip6 - -lisp_traffic_ip6 = { - "id": "lispgpe_traffic_ip6", - "dp-table": 0, - "vni": 0, - "local-eid": { - "address-type": "ietf-lisp-address-types:ipv6-prefix-afi", - "virtual-network-id": 0, - "ipv6-prefix": local_eid6 - }, - "remote-eid": { - "address-type": "ietf-lisp-address-types:ipv6-prefix-afi", - "virtual-network-id": 0, - "ipv6-prefix": remote_eid6 - }, - "locator-pair": [ - { - "local-locator": src_rloc6, - "remote-locator": dst_rloc6, - "weight": 0 - } - ] -} diff --git a/resources/test_data/honeycomb/nat.py b/resources/test_data/honeycomb/nat.py deleted file mode 100644 index e78e756dc3..0000000000 --- a/resources/test_data/honeycomb/nat.py +++ /dev/null @@ -1,101 +0,0 @@ -# Copyright (c) 2016 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Test variables for NAT test suite.""" - -from resources.libraries.python.topology import Topology - - -def get_variables(node, interface): - """Create and return a dictionary of test variables. - - :param node: Honeycomb node. - :param interface: Name, link name or sw_if_index of an interface. - :type node: dict - :type interface: str or int - - :returns: Dictionary of test variables - settings for Honeycomb's - NAT node and expected operational data. - :rtype: dict - """ - sw_if_index = Topology.convert_interface_reference( - node, interface, "sw_if_index") - - variables = { - "nat_empty": { - 'instances': { - 'instance': [{ - 'id': 0}] - } - }, - "entry1": { - "mapping-entry": [{ - "index": 1, - "type": "static", - "internal-src-address": "192.168.0.1/32", - "external-src-address": "192.168.1.1/32" - }] - }, - "entry2": { - "mapping-entry": [{ - "index": 2, - "type": "static", - "internal-src-address": "192.168.0.2/32", - "external-src-address": "192.168.1.2/32" - }] - }, - "entry1_2_oper": { - "mapping-entry": [ - { - "index": 1, - "type": "static", - "internal-src-address": "192.168.0.1/32", - "external-src-address": "192.168.1.1/32" - }, - { - "index": 2, - "type": "static", - "internal-src-address": "192.168.0.2/32", - "external-src-address": "192.168.1.2/32" - } - ] - }, - "entry1_vat": [{ - "local_address": "192.168.0.1", - "remote_address": "192.168.1.1", - "vrf": "0" - }], - "entry1_2_vat": [ - { - "local_address": "192.168.0.1", - "remote_address": "192.168.1.1", - "vrf": "0", - "protocol": "17" - }, { - "local_address": "192.168.0.2", - "remote_address": "192.168.1.2", - "vrf": "0", - "protocol": "17" - } - ], - "nat_interface_vat_in": [ - {"sw_if_index": str(sw_if_index), - "direction": "in"} - ], - "nat_interface_vat_out": [ - {"sw_if_index": str(sw_if_index), - "direction": "out"} - ] - } - - return variables diff --git a/resources/test_data/honeycomb/netconf/hello.py b/resources/test_data/honeycomb/netconf/hello.py deleted file mode 100644 index 2cc89b387c..0000000000 --- a/resources/test_data/honeycomb/netconf/hello.py +++ /dev/null @@ -1,22 +0,0 @@ -# Copyright (c) 2016 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Hello message with capabilities list for Netconf sessions.""" - -hello = u""" -<hello xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> -<capabilities> -<capability>urn:ietf:params:netconf:base:1.0</capability> -</capabilities> -</hello> -]]>]]>"""
\ No newline at end of file diff --git a/resources/test_data/honeycomb/netconf/subscription.py b/resources/test_data/honeycomb/netconf/subscription.py deleted file mode 100644 index ccf8c47022..0000000000 --- a/resources/test_data/honeycomb/netconf/subscription.py +++ /dev/null @@ -1,24 +0,0 @@ -# Copyright (c) 2016 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""RPC call to add a subscription to Netconf notifications.""" - -subscription = u""" -<netconf:rpc netconf:message-id="101" -xmlns:netconf="urn:ietf:params:xml:ns:netconf:base:1.0"> -<create-subscription -xmlns="urn:ietf:params:xml:ns:netconf:notification:1.0"> -<stream>honeycomb</stream> -</create-subscription> -</netconf:rpc> -]]>]]>""" diff --git a/resources/test_data/honeycomb/netconf/triggers.py b/resources/test_data/honeycomb/netconf/triggers.py deleted file mode 100644 index 7c5fade8dd..0000000000 --- a/resources/test_data/honeycomb/netconf/triggers.py +++ /dev/null @@ -1,529 +0,0 @@ -# Copyright (c) 2016 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Contains RPC sequences to trigger specific issues through Netconf.""" - -# Test data for issue: https://jira.fd.io/browse/HONEYCOMB-105 -# Creating and removing interfaces may result in duplicated interface indices. -trigger_105 = u""" -<rpc message-id="m-1" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> -<get-config> -<source> -<running/> -</source> -<filter xmlns:ns0="urn:ietf:params:xml:ns:netconf:base:1.0" ns0:type="subtree"> -<interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces"> -<interface> -<name>4fe335c8-6fdc-4654-b12c-d256e9b39229</name> -</interface> -</interfaces> -</filter> -</get-config> -</rpc> -]]>]]> - -<rpc message-id="m-2" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> -<lock> -<target> -<candidate/> -</target> -</lock> -</rpc> -]]>]]> - -<rpc message-id="m-3" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> -<edit-config> -<target> -<candidate/> -</target> -<default-operation>none</default-operation> -<config> -<interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces"> -<interface xmlns:a="urn:ietf:params:xml:ns:netconf:base:1.0" -a:operation="replace"> -<name>4fe335c8-6fdc-4654-b12c-d256e9b39229</name> -<description>neutron port</description> -<link-up-down-trap-enable>enabled</link-up-down-trap-enable> -<vhost-user xmlns="http://fd.io/hc2vpp/yang/v3po"> -<role>client</role> -<socket>/tmp/socket_4fe335c8-6fdc-4654-b12c-d256e9b39229</socket> -</vhost-user> -<type xmlns:x="http://fd.io/hc2vpp/yang/v3po">x:vhost-user</type> -<enabled>true</enabled> -</interface> -</interfaces> -</config> -</edit-config> -</rpc> -]]>]]> - -<rpc message-id="m-4" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> -<commit/> -</rpc> -]]>]]> - -<rpc message-id="m-5" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> -<unlock> -<target> -<candidate/> -</target> -</unlock> -</rpc> -]]>]]> - -<rpc message-id="m-6" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> -<lock> -<target> -<candidate/> -</target> -</lock> -</rpc> -]]>]]> - -<rpc message-id="m-7" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> -<edit-config> -<target> -<candidate/> -</target> -<default-operation>none</default-operation> -<config> -<interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces"> -<interface xmlns:a="urn:ietf:params:xml:ns:netconf:base:1.0" -a:operation="delete"> -<name>4fe335c8-6fdc-4654-b12c-d256e9b39229</name> -</interface> -</interfaces> -</config> -</edit-config> -</rpc> -]]>]]> - -<rpc message-id="m-8" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> -<commit/> -</rpc> -]]>]]> - -<rpc message-id="m-9" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> -<unlock> -<target> -<candidate/> -</target> -</unlock> -</rpc> -]]>]]> - -<rpc message-id="m-10" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> -<lock> -<target> -<candidate/> -</target> -</lock> -</rpc> -]]>]]> - -<rpc message-id="m-11" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> -<edit-config> -<target> -<candidate/> -</target> -<default-operation>none</default-operation> -<config> -<interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces"> -<interface xmlns:a="urn:ietf:params:xml:ns:netconf:base:1.0" -a:operation="replace"> -<name>4fe335c8-6fdc-4654-b12c-d256e9b39229</name> -<description>neutron port</description> -<link-up-down-trap-enable>enabled</link-up-down-trap-enable> -<vhost-user xmlns="http://fd.io/hc2vpp/yang/v3po"> -<role>client</role> -<socket>/tmp/socket_4fe335c8-6fdc-4654-b12c-d256e9b39229</socket> -</vhost-user> -<type xmlns:x="http://fd.io/hc2vpp/yang/v3po">x:vhost-user</type> -<enabled>true</enabled> -</interface> -</interfaces> -</config> -</edit-config> -</rpc> -]]>]]> - -<rpc message-id="m-12" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> -<commit/> -</rpc> -]]>]]> - -<rpc message-id="m-13" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> -<unlock> -<target> -<candidate/> -</target> -</unlock> -</rpc> -]]>]]> - -<rpc message-id="m-14" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> -<lock> -<target> -<candidate/> -</target> -</lock> -</rpc> -]]>]]> - -<rpc message-id="m-15" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> -<edit-config> -<target> -<candidate/> -</target> -<default-operation>none</default-operation> -<config> -<interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces"> -<interface xmlns:a="urn:ietf:params:xml:ns:netconf:base:1.0" -a:operation="replace"> -<name>d7611278-88ff-40e1-81e2-602e94e96fc7</name> -<description>neutron port</description> -<link-up-down-trap-enable>enabled</link-up-down-trap-enable> -<vhost-user xmlns="http://fd.io/hc2vpp/yang/v3po"> -<role>client</role> -<socket>/tmp/socket_d7611278-88ff-40e1-81e2-602e94e96fc7</socket> -</vhost-user> -<type xmlns:x="http://fd.io/hc2vpp/yang/v3po">x:vhost-user</type> -<enabled>true</enabled> -</interface> -</interfaces> -</config> -</edit-config> -</rpc> -]]>]]> - -<rpc message-id="m-16" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> -<commit/> -</rpc> -]]>]]> - -<rpc message-id="m-17" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> -<unlock> -<target> -<candidate/> -</target> -</unlock> -</rpc> -]]>]]> - -<rpc message-id="m-18" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> -<lock> -<target> -<candidate/> -</target> -</lock> -</rpc> -]]>]]> - -<rpc message-id="m-19" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> -<edit-config> -<target> -<candidate/> -</target> -<default-operation>none</default-operation> -<config> -<interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces"> -<interface xmlns:a="urn:ietf:params:xml:ns:netconf:base:1.0" -a:operation="replace"> -<name>1f96a665-4351-4984-b1a8-dc6f54683123</name> -<description>neutron port</description> -<link-up-down-trap-enable>enabled</link-up-down-trap-enable> -<vhost-user xmlns="http://fd.io/hc2vpp/yang/v3po"> -<role>client</role> -<socket>/tmp/socket_1f96a665-4351-4984-b1a8-dc6f54683123</socket> -</vhost-user> -<type xmlns:x="http://fd.io/hc2vpp/yang/v3po">x:vhost-user</type> -<enabled>true</enabled> -</interface> -</interfaces> -</config> -</edit-config> -</rpc> -]]>]]> - -<rpc message-id="m-20" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> -<commit/> -</rpc> -]]>]]> - -<rpc message-id="m-21" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> -<unlock> -<target> -<candidate/> -</target> -</unlock> -</rpc> -]]>]]> - -<rpc message-id="m-22" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> -<lock> -<target> -<candidate/> -</target> -</lock> -</rpc> -]]>]]> - -<rpc message-id="m-23" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> -<edit-config> -<target> -<candidate/> -</target> -<default-operation>none</default-operation> -<config> -<bridge-domains xmlns="http://fd.io/hc2vpp/yang/v3po" -xmlns:a="urn:ietf:params:xml:ns:netconf:base:1.0" a:operation="replace"> -<bridge-domain> -<name>e86740a2-042c-4e64-a43b-cc224e0d5240</name> -<unknown-unicast-flood>true</unknown-unicast-flood> -<forward>true</forward> -<learn>true</learn> -<flood>true</flood> -<arp-termination>false</arp-termination> -</bridge-domain> -</bridge-domains> -</config> -</edit-config> -</rpc> -]]>]]> - -<rpc message-id="m-24" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> -<commit/> -</rpc> -]]>]]> - -<rpc message-id="m-25" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> -<unlock> -<target> -<candidate/> -</target> -</unlock> -</rpc> -]]>]]> - -<rpc message-id="m-26" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> -<lock> -<target> -<candidate/> -</target> -</lock> -</rpc> -]]>]]> - -<rpc message-id="m-27" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> -<get> -<filter xmlns:ns0="urn:ietf:params:xml:ns:netconf:base:1.0" ns0:type="subtree"> -<interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces"/> -</filter> -</get> -</rpc> -]]>]]>""" - -# Test data for issue: https://jira.fd.io/browse/HONEYCOMB-255 -# Reverting transaction fails with "missing writer" -trigger_revert1 = u""" -<rpc message-id="101" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> -<edit-config> -<target> -<candidate/> -</target> -<config> -<interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces"> -<interface> -<name>vxlan3</name> -<type xmlns:v3po="http://fd.io/hc2vpp/yang/v3po"> - v3po:vxlan-tunnel</type> -<enabled>true</enabled> -<vxlan xmlns="http://fd.io/hc2vpp/yang/v3po"> -<src>192.168.1.6</src> -<dst>192.168.1.7</dst> -<vni>9</vni> -<encap-vrf-id>0</encap-vrf-id> -</vxlan> -</interface> -</interfaces> -</config> -</edit-config> -</rpc> -]]>]]> - -<rpc message-id="102" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> -<edit-config> -<target> -<candidate/> -</target> -<config> -<interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces"> -<interface> -<name>vxlan4</name> -<type xmlns:v3po="http://fd.io/hc2vpp/yang/v3po"> - v3po:vxlan-tunnel</type> -<enabled>true</enabled> -<vxlan xmlns="http://fd.io/hc2vpp/yang/v3po"> -<src>192.168.1.6</src> -<dst>192.168.1.7</dst> -<vni>9</vni> -<encap-vrf-id>0</encap-vrf-id> -</vxlan> -</interface> -</interfaces> -</config> -</edit-config> -</rpc> -]]>]]> - - <rpc message-id="103" - xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> - <commit/> - </rpc> - ]]>]]>""" - -# Test data for issue: https://jira.fd.io/browse/HONEYCOMB-255, part 2 -# Reverting transaction fails with "transaction has been closed" -trigger_revert2 = u""" -<rpc message-id="101" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> -<edit-config> -<target> -<candidate/> -</target> -<config> -<interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces"> -<interface> -<name>tap</name> -<type xmlns:v3po="http://fd.io/hc2vpp/yang/v3po">v3po:tap-v2</type> -<enabled>true</enabled> -<tap xmlns="http://fd.io/hc2vpp/yang/v3po"> -<dev-name>tap</dev-name> -</tap> -</interface> -</interfaces> -</config> -</edit-config> -</rpc> -]]>]]> - -<rpc message-id="102" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> -<edit-config> -<target> -<candidate/> -</target> -<config> -<interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces"> -<interface> -<name>tap2</name> -<type xmlns:v3po="http://fd.io/hc2vpp/yang/v3po">v3po:tap-v2</type> -<enabled>true</enabled> -<tap xmlns="http://fd.io/hc2vpp/yang/v3po"> -<dev-name>tap</dev-name> -</tap> -</interface> -</interfaces> -</config> -</edit-config> -</rpc> -]]>]]> - -<rpc message-id="103" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> -<commit/> -</rpc> -]]>]]>""" - - -# Test data for issue HC2VPP-60 -# Creating Vlan sub-interface over netconf fails due to ODL bug -trigger_vlan = u""" -<rpc message-id="101" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> -<edit-config> -<target> -<candidate/> -</target> -<config> -<interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces"> -<interface> -<name>{interface}</name> -<sub-interfaces xmlns="http://fd.io/hc2vpp/yang/vpp-vlan"/> -</interface> -</interfaces> -</config> -</edit-config> -</rpc> -]]>]]> - -<rpc message-id="102" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> -<edit-config> -<target> -<candidate/> -</target> -<config> -<interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces"> -<interface> -<name>{interface}</name> -<sub-interfaces xmlns="http://fd.io/hc2vpp/yang/vpp-vlan"> -<sub-interface> -<identifier>2420</identifier> -</sub-interface> -</sub-interfaces> -</interface> -</interfaces> -</config> -</edit-config> -</rpc> -]]>]]> - -<rpc message-id="103" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> -<edit-config> -<target> -<candidate/> -</target> -<default-operation>none</default-operation> -<config> -<interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces"> -<interface> -<name>{interface}</name> -<sub-interfaces xmlns="http://fd.io/hc2vpp/yang/vpp-vlan"> -<sub-interface xmlns:a="urn:ietf:params:xml:ns:netconf:base:1.0" a:operation="replace"> -<identifier>2420</identifier> -<match> -<vlan-tagged> -<match-exact-tags>true</match-exact-tags> -</vlan-tagged> -</match> -<vlan-type>_802dot1q</vlan-type> -<enabled>false</enabled> -<tags> -<tag> -<index>0</index> -<dot1q-tag> -<tag-type xmlns:x="urn:ieee:params:xml:ns:yang:dot1q-types">x:s-vlan</tag-type> -<vlan-id>2420</vlan-id> -</dot1q-tag> -</tag> -</tags> -</sub-interface> -</sub-interfaces> -</interface> -</interfaces> -</config> -</edit-config> -</rpc> -]]>]]> - -<rpc message-id="104" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> -<commit/> -</rpc> -]]>]]> -"""
\ No newline at end of file diff --git a/resources/test_data/honeycomb/nsh.py b/resources/test_data/honeycomb/nsh.py deleted file mode 100644 index 11e9e4ba0c..0000000000 --- a/resources/test_data/honeycomb/nsh.py +++ /dev/null @@ -1,190 +0,0 @@ -# Copyright (c) 2016 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Test variables for LISP test suite.""" - -nsh_entry1 = { - "nsh-entry": [{ - "name": "entry1", - "version": 0, - "length": 6, - "md-type": "md-type1", - "next-protocol": "ethernet", - "nsp": 184, - "nsi": 255, - "c1": 1, - "c2": 2, - "c3": 3, - "c4": 4 - }] -} - -nsh_entry1_oper = { - "nsh-entry": [{ - "name": "entry1", - "version": 0, - "length": 6, - "md-type": "vpp-nsh:md-type1", - "next-protocol": "vpp-nsh:ethernet", - "nsp": 184, - "nsi": 255, - "c1": 1, - "c2": 2, - "c3": 3, - "c4": 4 - }] -} - -nsh_entry2 = { - "nsh-entry": [{ - "name": "entry2", - "version": 0, - "length": 5, - "md-type": "md-type1", - "next-protocol": "ethernet", - "nsp": 183, - "nsi": 254, - "c1": 2, - "c2": 3, - "c3": 4, - "c4": 5 - }] -} - -nsh_entry2_oper = { - "nsh-entry": [{ - "name": "entry2", - "version": 0, - "length": 5, - "md-type": "vpp-nsh:md-type1", - "next-protocol": "vpp-nsh:ethernet", - "nsp": 183, - "nsi": 254, - "c1": 2, - "c2": 3, - "c3": 4, - "c4": 5 - }] -} - -# Settings for VxLAN GPE interfaces, needed to configure NSH maps -vxlan_gpe_if1 = 'vxlan_gpe_test1' -vxlan_gpe_base_settings1 = { - 'name': vxlan_gpe_if1, - 'description': 'for testing NSH', - 'enabled': True, - 'link-up-down-trap-enable': 'enabled' -} -vxlan_gpe_settings1 = { - 'local': '192.168.0.1', - 'remote': '192.168.0.2', - 'vni': 5, - 'next-protocol': 'ethernet', - 'encap-vrf-id': 0, - 'decap-vrf-id': 0 -} - -vxlan_gpe_if2 = 'vxlan_gpe_test2' -vxlan_gpe_base_settings2 = { - 'name': vxlan_gpe_if2, - 'description': 'for testing NSH', - 'enabled': True, - 'link-up-down-trap-enable': 'enabled' -} -vxlan_gpe_settings2 = { - 'local': '192.168.1.1', - 'remote': '192.168.1.2', - 'vni': 6, - 'next-protocol': 'ethernet', - 'encap-vrf-id': 0, - 'decap-vrf-id': 0 -} - - -nsh_map1 = { - "nsh-map": [{ - "name": "map1", - "nsp": 184, - "nsi": 255, - "mapped-nsp": 183, - "mapped-nsi": 254, - "nsh-action": "push", - "encap-type": "vxlan-gpe", - "encap-if-name": vxlan_gpe_if1 - }] -} - -nsh_map1_oper = { - "nsh-map": [{ - "name": "map1", - "nsp": 184, - "nsi": 255, - "mapped-nsp": 183, - "mapped-nsi": 254, - "nsh-action": "vpp-nsh:push", - "encap-type": "vpp-nsh:vxlan-gpe", - "encap-if-name": vxlan_gpe_if1 - }] -} - -nsh_map1_edit = { - "nsh-map": [{ - "name": "map1_edit", - "nsp": 184, - "nsi": 255, - "mapped-nsp": 184, - "mapped-nsi": 253, - "nsh-action": "push", - "encap-type": "vxlan-gpe", - "encap-if-name": vxlan_gpe_if1 - }] -} - -nsh_map1_edit_oper = { - "nsh-map": [{ - "name": "map1_edit", - "nsp": 184, - "nsi": 255, - "mapped-nsp": 184, - "mapped-nsi": 253, - "nsh-action": "vpp-nsh:push", - "encap-type": "vpp-nsh:vxlan-gpe", - "encap-if-name": vxlan_gpe_if1 - }] -} - -nsh_map2 = { - "nsh-map": [{ - "name": "map2", - "nsp": 183, - "nsi": 254, - "mapped-nsp": 182, - "mapped-nsi": 253, - "nsh-action": "vpp-nsh:push", - "encap-type": "vpp-nsh:vxlan-gpe", - "encap-if-name": vxlan_gpe_if2 - }] -} - -nsh_map2_oper = { - "nsh-map": [{ - "name": "map2", - "nsp": 183, - "nsi": 254, - "mapped-nsp": 182, - "mapped-nsi": 253, - "nsh-action": "vpp-nsh:push", - "encap-type": "vpp-nsh:vxlan-gpe", - "encap-if-name": vxlan_gpe_if2 - }] -} diff --git a/resources/test_data/honeycomb/pbb/pbb.py b/resources/test_data/honeycomb/pbb/pbb.py deleted file mode 100644 index f71c70ebaf..0000000000 --- a/resources/test_data/honeycomb/pbb/pbb.py +++ /dev/null @@ -1,103 +0,0 @@ -# Copyright (c) 2016 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Test variables for provider backbone bridge test suite.""" - -# pylint: disable=invalid-name - -# Add pbb sub interface -# Configuration data -cfg_pbb_sub_if_1 = { - "pbb-rewrite": { - "source-address": "aa:aa:aa:aa:aa:ab", - "destination-address": "bb:bb:bb:bb:bb:bc", - "b-vlan-tag-vlan-id": "2223", - "outer-tag": "16", - "i-tag-isid": "12", - "interface-operation": "translate-2-1" - } -} - -# Modify pbb sub interface -# Configuration data -cfg_pbb_sub_if_1_mod = { - "pbb-rewrite": { - "source-address": "aa:aa:aa:aa:aa:ac", - "destination-address": "bb:bb:bb:bb:bb:bd", - "b-vlan-tag-vlan-id": "2224", - "outer-tag": "17", - "i-tag-isid": "13", - "interface-operation": "push-2" - } -} - -# Wrong configuration data -# Wrong source-address -cfg_pbb_sub_if_ID = '5' -cfg_pbb_sub_if_wrong_src_addr = { - "pbb-rewrite": { - "source-address": "aa:aa:aa:aa:aa:ag", - "destination-address": "bb:bb:bb:bb:bb:ce", - "b-vlan-tag-vlan-id": "2226", - "outer-tag": "19", - "i-tag-isid": "15", - "interface-operation": "pop-2" - } -} - -# Wrong destination-address -cfg_pbb_sub_if_wrong_dst_addr = { - "pbb-rewrite": { - "source-address": "aa:aa:aa:aa:aa:ae", - "destination-address": "bb:bb:bb:bb:bb:cg", - "b-vlan-tag-vlan-id": "2226", - "outer-tag": "19", - "i-tag-isid": "15", - "interface-operation": "pop-2" - } -} - -# Wrong b-vlan-tag-vlan-id -cfg_pbb_sub_if_wrong_vlan_tag = { - "pbb-rewrite": { - "source-address": "aa:aa:aa:aa:aa:ae", - "destination-address": "bb:bb:bb:bb:bb:ce", - "b-vlan-tag-vlan-id": "123456789", - "outer-tag": "19", - "i-tag-isid": "15", - "interface-operation": "pop-2" - } -} - -# Wrong i-tag-isid -cfg_pbb_sub_if_wrong_i_tag = { - "pbb-rewrite": { - "source-address": "aa:aa:aa:aa:aa:ae", - "destination-address": "bb:bb:bb:bb:bb:ce", - "b-vlan-tag-vlan-id": "2226", - "outer-tag": "19", - "i-tag-isid": "167772152345", - "interface-operation": "pop-2" - } -} - -# b-vlan-tag-vlan-id is missing -cfg_pbb_sub_if_no_vlan_tag = { - "pbb-rewrite": { - "source-address": "aa:aa:aa:aa:aa:ae", - "destination-address": "bb:bb:bb:bb:bb:ce", - "outer-tag": "19", - "i-tag-isid": "15", - "interface-operation": "pop-2" - } -} diff --git a/resources/test_data/honeycomb/persistence.py b/resources/test_data/honeycomb/persistence.py deleted file mode 100644 index f4ebdd5f23..0000000000 --- a/resources/test_data/honeycomb/persistence.py +++ /dev/null @@ -1,152 +0,0 @@ -# Copyright (c) 2016 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Test variables for Honeycomb persistence test suite.""" - - -def get_variables(interface): - """Creates and returns dictionary of test variables. - - :param interface: name of super-interface for the tested sub-interface - :type interface: str - :return: dictionary of test variables - :rtype: dict - """ - # basic settings - bd_name = 'bd_persist' - sub_if_id = 1 - sub_if_name = interface + '.' + str(sub_if_id) - - variables = { - # VxLan settings - 'vx_interface': 'vx_tunnel_test', - 'vxlan_settings': {'src': '192.168.0.2', - 'dst': '192.168.0.3', - "vni": 88, - 'encap-vrf-id': 0}, - # bridge domain settings - 'bd_name': bd_name, - 'bd_settings': {'flood': True, - 'forward': True, - 'learn': True, - 'unknown-unicast-flood': True, - 'arp-termination': True - }, - # tap interface settings - 'tap_interface': 'tap_test', - 'tap_interface_vat': 'tap0', - 'tap_settings': {'host-interface-name': 'tap_test', - 'mac': '08:00:27:c0:5d:37', - 'id': 1 - }, - 'tap_settings_oper': {'host-interface-name': 'tap_test', - 'device-name': 'tap0', - 'tx-ring-size': 256, - 'rx-ring-size': 256, - 'mac': '08:00:27:c0:5d:37', - 'id': 1 - }, - 'tap_settings_vat': {'dev_name': 'tap0', - 'tx_ring_sz': 256, - 'rx_ring_sz': 256, - 'mac': '08:00:27:c0:5d:37', - 'id': 1 - }, - # vhost-user interface settings - 'vhost_interface': 'test_vhost', - 'vhost_user_client': {'socket': 'soc1', - 'role': 'client' - }, - # Vlan subinterface settings - 'sub_if_id': sub_if_id, - 'sub_if_name': sub_if_name, - 'sub_if_1_settings': { - "identifier": sub_if_id, - "vlan-type": "_802dot1q", - "enabled": "false" - }, - 'sub_if_1_tags': [ - { - "index": "0", - "dot1q-tag": { - "tag-type": "dot1q-types:s-vlan", - "vlan-id": "100" - } - }, - { - "index": "1", - "dot1q-tag": { - "tag-type": "dot1q-types:c-vlan", - "vlan-id": "any" - } - } - ], - 'sub_if_1_match': "vlan-tagged-exact-match", - 'sub_if_1_oper': { - "identifier": sub_if_id, - "oper-status": "up", - "admin-status": "up", - "tags": { - "tag": [ - { - "index": 1, - "dot1q-tag": { - "tag-type": "dot1q-types:c-vlan", - "vlan-id": "any" - } - }, - { - "index": 0, - "dot1q-tag": { - "tag-type": "dot1q-types:s-vlan", - "vlan-id": 100 - } - } - ] - }, - "match": { - "vlan-tagged": { - "match-exact-tags": True - } - } - }, - 'sub_bd_settings': { - 'bridge-domain': bd_name, - 'split-horizon-group': '1', - 'bridged-virtual-interface': 'False' - }, - 'tag_rewrite_pop_1': { - "pop-tags": "1" - }, - - 'tag_rewrite_pop_1_oper': { - "vlan-type": "vpp-vlan:_802dot1ad", - "pop-tags": 1 - }, - - 'tag_rewrite_pop_1_VAT': { - 'sub_default': 0, - 'sub_dot1ad': 0, - 'sub_exact_match': 1, - 'sub_inner_vlan_id': 0, - 'sub_inner_vlan_id_any': 1, - 'sub_number_of_tags': 2, - 'sub_outer_vlan_id': 100, - 'sub_outer_vlan_id_any': 0, - 'vtr_op': 3, - 'vtr_push_dot1q': 0, - 'vtr_tag1': 0, - 'vtr_tag2': 0 - } - } - return variables diff --git a/resources/test_data/honeycomb/plugin_acl.py b/resources/test_data/honeycomb/plugin_acl.py deleted file mode 100644 index b72a3391a0..0000000000 --- a/resources/test_data/honeycomb/plugin_acl.py +++ /dev/null @@ -1,556 +0,0 @@ -# Copyright (c) 2017 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Test variables for ACL-plugin test suite.""" - - -def get_variables(test_case, name): - """Create and return a dictionary of test variables for the specified - test case. - - :param test_case: Determines which test variables to return. - :param name: Name for the classify chain used in test. - :type test_case: str - :type name: str - - :returns: Dictionary of test variables - settings for Honeycomb's - ietf-acl node and packet fields to use in verification. - :rtype: dict - :raises KeyError: If the test_case parameter is incorrect. - """ - - test_case = test_case.lower() - variables = { - # Variables for control packet - "src_ip": "16.0.0.1", - "dst_ip": "16.0.1.1", - "src_net": "16.0.0.0", - "dst_net": "16.0.1.0", - "src_port": "1234", - "dst_port": "1234", - "src_mac": "01:02:03:04:05:06", - "dst_mac": "10:20:30:40:50:60"} - - test_vars = { - "macip": { - # MACs classified directly - "classify_src": "12:23:34:45:56:67", - "classify_dst": "89:9A:AB:BC:CD:DE", - # MACs classified through mask - "classify_src2": "01:02:03:04:56:67", - "classify_dst2": "89:9A:AB:BC:50:60", - "src_mask": "00:00:00:00:FF:FF", - "dst_mask": "FF:FF:FF:FF:00:00" - }, - "l3_ip4": { - # IPs for DUT interface setup - "dut_to_tg_if1_ip": "16.0.0.2", - "dut_to_tg_if2_ip": "192.168.0.2", - "prefix_length": 24, - "gateway": "192.168.0.1", - # classified networks - "classify_src_net": "16.0.2.0", - "classify_dst_net": "16.0.3.0", - # IPs in classified networks - "classify_src": "16.0.2.1", - "classify_dst": "16.0.3.1", - }, - "l3_ip6": { - # Override control packet addresses with IPv6 - "src_ip": "10::1", - "dst_ip": "11::1", - "dst_net": "11::", - # IPs for DUT interface setup - "dut_to_tg_if1_ip": "10::2", - "dut_to_tg_if2_ip": "20::2", - "prefix_length": 64, - "gateway": "20::1", - # classified networks - "classify_src_net": "12::", - "classify_dst_net": "13::", - # IPs in classified networks - "classify_src": "12::1", - "classify_dst": "13::1", - }, - "l4": { - # IPs for DUT interface and route setup - "dut_to_tg_if1_ip": "16.0.0.2", - "dut_to_tg_if2_ip": "192.168.0.2", - "prefix_length": 24, - "gateway": "192.168.0.1", - "classify_dst_net": "16.0.3.0", - # Ports in classified ranges - "classify_src": 60000, - "classify_dst": 61000, - }, - "mixed": { - # IPs for DUT interface and route setup - "dut_to_tg_if1_ip": "16.0.0.2", - "dut_to_tg_if2_ip": "192.168.0.2", - "prefix_length": 24, - "gateway": "192.168.0.1", - "classify_dst_net": "16.0.3.0", - # IPs in classified networks - "classify_src_ip": "16.0.2.1", - "classify_dst_ip": "16.0.3.1", - # Ports in classified ranges - "classify_src_port": 60000, - "classify_dst_port": 61000, - }, - "icmp": { - # ICMP code and type for control packet - "icmp_type": 0, - "icmp_code": 0, - # classified ICMP code and type - "classify_type": 3, - "classify_code": 3 - - }, - "icmpv6": { - # Override control packet addresses with IPv6 - "src_ip": "10::1", - "dst_ip": "11::1", - "dst_net": "11::", - # IPs for DUT interface setup - "dut_to_tg_if1_ip": "10::2", - "dut_to_tg_if2_ip": "20::2", - "prefix_length": 64, - "gateway": "20::1", - # classified networks - "classify_src_net": "12::", - "classify_dst_net": "13::", - # ICMP code and type for control packet - "icmp_type": 1, - "icmp_code": 0, - # classified ICMP code and type - "classify_type": 4, - "classify_code": 2 - - }, - "reflex": { - # IPs for DUT interface setup - "dut_to_tg_if1_ip": "16.0.0.2", - "dut_to_tg_if2_ip": "192.168.0.2", - "prefix_length": 24, - "gateway": "192.168.0.1", - "gateway2": "192.168.0.1", - # classified networks - "classify_src_net": "16.0.2.0", - "classify_dst_net": "16.0.3.0", - # IPs in classified networks - "classify_src": "16.0.2.1", - "classify_dst": "16.0.3.1", - }, - "block_all": {} - } - acl_data = { - # ACL configuration for L2 tests - - "macip": { - "acl": [{ - "name": name, - "type": "vpp-acl:vpp-macip-acl", - "aces": { - "ace": [ - { - "name": "rule1", - "matches": { - - "eth": { - "source-mac-address": test_vars["macip"]["classify_src"], - "source-mac-address-mask": test_vars["macip"]["src_mask"] - }, - "ipv4": { - - "source-ipv4-network": "16.0.0.0/24" - } - }, - - "actions": { - "forwarding": "ietf-access-control-list:drop" - } - }, - { - "name": "rule_all", - "matches": { - - "eth": { - "source-mac-address": test_vars["macip"]["classify_src"], - "source-mac-address-mask": "00:00:00:00:00:00" - }, - - "ipv4": { - "source-ipv4-network": "0.0.0.0/0" - } - }, - "actions": { - "forwarding": "ietf-access-control-list:accept" - } - } - ]} - } - ] - }, - # ACL configuration for L3 IPv4 tests - "l3_ip4": { - "acl": [ - { - "name": name, - "type": "vpp-acl:vpp-acl", - "aces": { - "ace": [ - { - "name": "rule1", - "matches": { - "ipv4": { - "destination-ipv4-network": "{0}/{1}".format( - test_vars["l3_ip4"]["classify_dst_net"], - test_vars["l3_ip4"]["prefix_length"]), - "source-ipv4-network": "{0}/{1}".format( - test_vars["l3_ip4"]["classify_src_net"], - test_vars["l3_ip4"]["prefix_length"]) - }, - "udp":{ - "source-port": { - "lower-port": "0", - "upper-port": "65535" - }, - "destination-port": { - "lower-port": "0", - "upper-port": "65535" - } - } - }, - "actions": { - "forwarding": "ietf-access-control-list:drop" - } - }, - { - "name": "rule_all", - "matches": { - "ipv4": { - "destination-ipv4-network": "0.0.0.0/0", - "source-ipv4-network": "0.0.0.0/0" - } - }, - "actions": { - "forwarding": "ietf-access-control-list:accept" - } - } - ] - } - } - ] - }, - # ACL settings for L3 IPv6 tests - "l3_ip6": { - "acl": [ - { - "name": name, - "type": "vpp-acl:vpp-acl", - "aces": { - "ace": [ - { - "name": "rule1", - "matches": { - "ipv6": { - "destination-ipv6-network": "{0}/{1}".format( - test_vars["l3_ip6"]["classify_dst_net"], - test_vars["l3_ip6"]["prefix_length"]), - "source-ipv6-network": "{0}/{1}".format( - test_vars["l3_ip6"]["classify_src_net"], - test_vars["l3_ip6"]["prefix_length"]) - }, - "udp":{ - "source-port": { - "lower-port": "0", - "upper-port": "65535" - }, - "destination-port": { - "lower-port": "0", - "upper-port": "65535" - } - } - }, - "actions": { - "forwarding": "ietf-access-control-list:drop" - } - }, - { - "name": "rule_all", - "matches": { - "ipv6": { - "destination-ipv6-network": "0::0/0", - "source-ipv6-network": "0::0/0" - } - }, - "actions": { - "forwarding": "ietf-access-control-list:accept" - } - } - ] - } - } - ] - }, - # ACL configuration for L4 tests - "l4": { - "acl": [ - { - "name": name, - "type": "vpp-acl:vpp-acl", - "aces": { - "ace": [ - { - "name": "rule1", - "matches": { - "ipv4": { - "source-ipv4-network": "0.0.0.0/0" - }, - "tcp": { - "source-port": { - "lower-port": test_vars["l4"]["classify_src"], - "upper-port": test_vars["l4"]["classify_src"] + 10 - }, - "destination-port":{ - "lower-port": test_vars["l4"]["classify_dst"], - "upper-port": test_vars["l4"]["classify_dst"] + 10 - } - } - }, - "actions":{ - "forwarding": "ietf-access-control-list:drop" - } - }, - { - "name": "rule_all", - "matches": { - "ipv4": { - "source-ipv4-network": "0.0.0.0/0", - "destination-ipv4-network": "0.0.0.0/0" - } - }, - "actions": { - "forwarding": "ietf-access-control-list:accept" - } - } - ] - } - } - ] - }, - "mixed": { - "acl": [ - { - "name": name, - "type": "vpp-acl:vpp-acl", - "aces": { - "ace": [ - { - "name": "ports", - "matches": { - "ipv4": { - "source-ipv4-network": "0.0.0.0/0" - }, - "tcp": { - "source-port": { - "lower-port": test_vars["l4"]["classify_src"], - "upper-port": test_vars["l4"]["classify_src"] + 10 - }, - "destination-port":{ - "lower-port": test_vars["l4"]["classify_dst"], - "upper-port": test_vars["l4"]["classify_dst"] + 10 - } - } - }, - "actions":{ - "forwarding": "ietf-access-control-list:drop" - } - }, - { - "name": "rule_all", - "matches": { - "ipv4": { - "destination-ipv4-network": "0.0.0.0/0", - "source-ipv4-network": "0.0.0.0/0" - } - }, - "actions": { - "forwarding": "ietf-access-control-list:accept" - } - } - ] - } - } - ] - }, - "icmp": { - "acl": [ - { - "name": name, - "type": "vpp-acl:vpp-acl", - "aces": { - "ace": [ - { - "name": "rule1", - "matches": { - "ipv4": { - "source-ipv4-network": "0.0.0.0/0" - }, - "icmp": { - "vpp-acl:vpp-icmp-ace": { - "vpp-acl:icmp-type-range": { - "first": "1", - "last": "5" - }, - "vpp-acl:icmp-code-range": { - "first": "1", - "last": "5" - } - } - } - }, - "actions": { - "forwarding": "ietf-access-control-list:drop" - } - }, - { - "name": "rule_all", - "matches": { - "ipv4": { - "source-ipv4-network": "0.0.0.0/0", - "destination-ipv4-network": "0.0.0.0/0" - } - }, - "actions": { - "forwarding": "ietf-access-control-list:accept" - } - } - ] - } - } - ] - }, - "icmpv6": { - "acl": [ - { - "name": name, - "type": "vpp-acl:vpp-acl", - "aces": { - "ace": [ - { - "name": "rule1", - "matches": { - "ipv6": { - "source-ipv6-network": "::/0", - }, - "icmp": { - "vpp-acl:vpp-icmp-ace": { - "vpp-acl:icmp-type-range": { - "first": "1", - "last": "5" - }, - "vpp-acl:icmp-code-range": { - "first": "1", - "last": "5" - } - } - } - }, - "actions": { - "forwarding": "ietf-access-control-list:drop" - } - }, - { - "name": "rule_all", - "matches": { - "ipv6": { - "destination-ipv6-network": "0::0/0", - "source-ipv6-network": "::/0", - } - }, - "actions": { - "forwarding": "ietf-access-control-list:accept" - } - } - ] - } - } - ] - }, - "reflex": { - "acl": [ - { - "name": name, - "type": "vpp-acl:vpp-acl", - "aces": { - "ace": [ - { - "name": "rule1", - "matches": { - "ipv4": { - "destination-ipv4-network": "{0}/{1}".format( - test_vars["reflex"]["classify_src_net"], - test_vars["reflex"]["prefix_length"]), - "source-ipv4-network": "{0}/{1}".format( - test_vars["reflex"]["classify_dst_net"], - test_vars["reflex"]["prefix_length"]) - } - }, - "actions": { - "forwarding": "vpp-acl:accept-and-reflect" - } - } - ] - } - } - ] - }, - "block_all": { - "acl": [ - { - "name": name, - "type": "vpp-acl:vpp-acl", - "aces": { - "ace": [ - { - "name": "rule_all", - "matches": { - "ipv4": { - "destination-ipv4-network": "0.0.0.0/0", - "source-ipv4-network": "0.0.0.0/0" - } - }, - "actions": { - "forwarding": "ietf-access-control-list:drop" - } - } - ] - } - } - ] - }, - } - - try: - ret_vars = {} - ret_vars.update(variables) - ret_vars.update(test_vars[test_case]) - ret_vars.update( - {"acl_settings": acl_data[test_case]} - ) - except KeyError: - raise KeyError( - "Unrecognized test case {0}. Valid options are: {1}".format( - test_case, acl_data.keys())) - return ret_vars diff --git a/resources/test_data/honeycomb/policer_variables.py b/resources/test_data/honeycomb/policer_variables.py deleted file mode 100644 index 6c6c9a575a..0000000000 --- a/resources/test_data/honeycomb/policer_variables.py +++ /dev/null @@ -1,146 +0,0 @@ -# Copyright (c) 2017 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Test variables for Policer test suite.""" - - -def get_variables(): - """Create and return a dictionary of test variables for the specified - test case. - - :returns: Dictionary of test variables - settings for Honeycomb's Policer. - :rtype: dict - """ - policer_data = { - "policer_data": { - "name": "policy1", - "cir": 450, - "cb": 50000, - "rate-type": "kbps", - "round-type": "closest", - "type": "1r2c", - "conform-action": { - "meter-action-type": "meter-action-transmit" - }, - "exceed-action": { - "meter-action-type": "meter-action-drop" - } - }, - "policer_data_oper": { - "name": "policy1", - "cir": 450, - "cb": 50000, - "rate-type": "kbps", - "round-type": "closest", - "type": "1r2c", - "conform-action": { - "meter-action-type": "policer:meter-action-transmit" - }, - "exceed-action": { - "meter-action-type": "policer:meter-action-drop" - } - }, - "policer_data_2": { - "name": "policy1", - "cir": 900, - "cb": 50000, - "rate-type": "kbps", - "round-type": "closest", - "type": "1r2c", - "conform-action": { - "meter-action-type": "meter-action-transmit" - }, - "exceed-action": { - "meter-action-type": "meter-action-drop" - } - }, - "policer_data_oper_2": { - "name": "policy1", - "cir": 900, - "cb": 50000, - "rate-type": "kbps", - "round-type": "closest", - "type": "1r2c", - "conform-action": { - "meter-action-type": "policer:meter-action-transmit" - }, - "exceed-action": { - "meter-action-type": "policer:meter-action-drop" - } - }, - "policer_data_3": { - "name": "policy1", - "cir": 100, - "eir": 150, - "cb": 200, - "eb": 300, - "rate-type": "pps", - "round-type": "closest", - "type": "2r3c-2698", - "conform-action": { - "meter-action-type": "meter-action-transmit" - }, - "exceed-action": { - "meter-action-type": "meter-action-mark-dscp", - "dscp": "AF22" - }, - "violate-action": { - "meter-action-type": "meter-action-drop" - }, - "color-aware": True - }, - "policer_data_oper_3": { - "name": "policy1", - "cir": 100, - "eir": 150, - "cb": 200, - "eb": 300, - "rate-type": "pps", - "round-type": "closest", - "type": "2r3c-2698", - "conform-action": { - "meter-action-type": "policer:meter-action-transmit" - }, - "exceed-action": { - "meter-action-type": "policer:meter-action-mark-dscp", - }, - "violate-action": { - "meter-action-type": "policer:meter-action-drop" - }, - "color-aware": True - }, - - "acl_tables": { - # settings for policer tables - "hc_acl_table": { - "name": "table0", - "nbuckets": 2, - "memory_size": 1048576, - "skip_n_vectors": 12, - "miss_next": "permit", - "mask": "00:00:00:00:00:00:00:00:00:00:00:00:ff:ff:ff:ff" - }, - # setting for acl sessions - "hc_acl_session": { - "match": "00:00:00:00:00:00:00:00:00:00:00:00:C0:A8:7A:01", - "policer_hit_next": "policy1", - "color_classfier": "exceed-color", - }, - "hc_acl_session2": { - "match": "00:00:00:00:00:00:00:00:00:00:00:00:C0:A8:7A:02", - "policer_hit_next": "policy1", - "color_classfier": "exceed-color", - }, - }, - } - return policer_data diff --git a/resources/test_data/honeycomb/routing.py b/resources/test_data/honeycomb/routing.py deleted file mode 100644 index 2016ca54b5..0000000000 --- a/resources/test_data/honeycomb/routing.py +++ /dev/null @@ -1,236 +0,0 @@ -# Copyright (c) 2017 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Test data for Honeycomb routing test.""" - -from resources.libraries.python.topology import Topology - - -def get_variables(node, ip_version, out_interface): - - out_interface = Topology.convert_interface_reference( - node, out_interface, "name") - - ip_version = ip_version.lower() - variables = {} - - # base network settings - ipv4_base = { - "dut_to_tg_if1_ip": "16.0.0.1", - "dut_to_tg_if2_ip": "16.0.1.1", - "src_ip": "16.0.0.2", - "dst_ip": "16.0.2.1", - "dst_net": "16.0.2.0", - "prefix_len": 24, - "next_hop": "16.0.1.2", - "next_hop1": "16.0.1.3", - "next_hop2": "16.0.1.4", - "next_hop_mac1": "00:11:22:33:44:55", - "next_hop_mac2": "11:22:33:44:55:66" - } - - ipv6_base = { - "dut_to_tg_if1_ip": "10::1", - "dut_to_tg_if2_ip": "11::1", - "src_ip": "10::2", - "dst_ip": "12::1", - "dst_net": "12::", - "prefix_len": 64, - "next_hop": "11::2", - "next_hop1": "11::3", - "next_hop2": "11::4", - "next_hop_mac1": "00:11:22:33:44:55", - "next_hop_mac2": "11:22:33:44:55:66" - } - - if ip_version == "ipv4": - variables.update(ipv4_base) - elif ip_version == "ipv6": - variables.update(ipv6_base) - else: - raise ValueError("IP version must be either IPv4 or IPv6.") - - # route configuration used in tests - tables_cfg = { - "table1": { - "description": "single hop ipv4", - "destination-prefix": - "{0}/{1}".format(ipv4_base["dst_net"], ipv4_base["prefix_len"]), - "next-hop": { - "next-hop-address": ipv4_base["next_hop"], - "outgoing-interface": out_interface - }, - "vpp-ipv4-unicast-routing:vpp-ipv4-route": {} - }, - "table2": { - "description": "multi hop ipv4", - "destination-prefix": - "{0}/{1}".format(ipv4_base["dst_net"], ipv4_base["prefix_len"]), - "next-hop":{ - "next-hop-list": { - "next-hop": [ - { - "index": "1", - "next-hop-address": ipv4_base["next_hop1"], - "outgoing-interface": out_interface, - "weight": "1" - }, - { - "index": "2", - "next-hop-address": ipv4_base["next_hop2"], - "outgoing-interface": out_interface, - "weight": "1" - } - ] - } - } - }, - "table3": { - "description": "blackhole ipv4", - "destination-prefix": - "{0}/{1}".format(ipv4_base["dst_net"], ipv4_base["prefix_len"]), - "next-hop": { - "special-next-hop-enum": "blackhole" - } - }, - "table4": { - "description": "single hop ipv6", - "destination-prefix": - "{0}/{1}".format(ipv6_base["dst_net"], ipv6_base["prefix_len"]), - "next-hop": { - "next-hop-address": ipv6_base["next_hop"], - "outgoing-interface": out_interface - }, - "vpp-ipv6-unicast-routing:vpp-ipv6-route": {} - }, - "table5": { - "description": "multi hop ipv6", - "destination-prefix": - "{0}/{1}".format(ipv6_base["dst_net"], ipv6_base["prefix_len"]), - "next-hop":{ - "next-hop-list": { - "next-hop": [ - { - "index": "1", - "next-hop-address": ipv6_base["next_hop1"], - "outgoing-interface": out_interface, - "weight": "1" - }, - { - "index": "2", - "next-hop-address": ipv6_base["next_hop2"], - "outgoing-interface": out_interface, - "weight": "1" - } - ] - } - } - }, - "table6": { - "description": "blackhole ipv6", - "destination-prefix": - "{0}/{1}".format(ipv6_base["dst_net"], ipv6_base["prefix_len"]), - "next-hop":{ - "special-next-hop-enum": "blackhole" - } - } - } - - # expected route operational data - tables_oper = { - "table1_oper": { - "destination-prefix": - "{0}/{1}".format(ipv4_base["dst_net"], ipv4_base["prefix_len"]), - "next-hop": { - "next-hop-address": ipv4_base["next_hop"], - "outgoing-interface": out_interface - } - }, - "table2_oper": { - "destination-prefix": - "{0}/{1}".format(ipv4_base["dst_net"], ipv4_base["prefix_len"]), - "next-hop": { - "next-hop-list": { - "next-hop": [ - { - "index": "2", - "next-hop-address": ipv4_base["next_hop2"], - "outgoing-interface": out_interface, - "vpp-ipv4-unicast-routing:weight": 1 - }, - { - "index": "1", - "next-hop-address": ipv4_base["next_hop1"], - "outgoing-interface": out_interface, - "vpp-ipv4-unicast-routing:weight": 1 - } - ] - } - } - }, - "table3_oper": { - "destination-prefix": - "{0}/{1}".format(ipv4_base["dst_net"], ipv4_base["prefix_len"]), - "next-hop": { - "special-next-hop-enum": "blackhole" - } - }, - "table4_oper": { - "destination-prefix": - "{0}/{1}".format(ipv6_base["dst_net"], - ipv6_base["prefix_len"]), - "next-hop": { - "next-hop-address": ipv6_base["next_hop"], - "outgoing-interface": out_interface - } - }, - "table5_oper": { - "destination-prefix": - "{0}/{1}".format(ipv6_base["dst_net"], - ipv6_base["prefix_len"]), - "next-hop": { - "next-hop-list": { - "next-hop": [ - { - "index": "2", - "next-hop-address": ipv6_base["next_hop2"], - "outgoing-interface": out_interface, - "vpp-ipv6-unicast-routing:weight": 1 - }, - { - "index": "1", - "next-hop-address": ipv6_base["next_hop1"], - "outgoing-interface": out_interface, - "vpp-ipv6-unicast-routing:weight": 1 - } - ] - } - } - }, - "table6_oper": { - "destination-prefix": - "{0}/{1}".format(ipv6_base["dst_net"], - ipv6_base["prefix_len"]), - "next-hop": { - "special-next-hop-enum": "blackhole" - } - } - } - - for item in tables_oper.values(): - if "next-hop-list" in item.keys(): - item["next-hop-list"]["next-hop"].sort() - - variables.update(tables_cfg) - variables.update(tables_oper) - return variables diff --git a/resources/test_data/honeycomb/slaac_variables.py b/resources/test_data/honeycomb/slaac_variables.py deleted file mode 100644 index c260eae0ff..0000000000 --- a/resources/test_data/honeycomb/slaac_variables.py +++ /dev/null @@ -1,64 +0,0 @@ -# Copyright (c) 2017 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Test variables for SLAAC test suite.""" - - -def get_variables(): - """Create and return a dictionary of test variables for the specified - test case. - - :returns: Dictionary of test variables - settings for Honeycomb's SLAAC. - :rtype: dict - """ - slaac_data = { - "address": "10::10", - "prefix": 64, - "slaac_data": { - "send-advertisements": "True", - "min-rtr-adv-interval": "15", - "max-rtr-adv-interval": "100", - "default-lifetime": "601", - "vpp-routing-ra:suppress-link-layer": "False", - "vpp-routing-ra:initial-count": "3", - "vpp-routing-ra:initial-interval": "5" - }, - "slaac_data_01": { - "send-advertisements": "True", - "min-rtr-adv-interval": "3", - "max-rtr-adv-interval": "4", - "default-lifetime": "8", - "vpp-routing-ra:suppress-link-layer": "True", - "vpp-routing-ra:initial-count": "1", - "vpp-routing-ra:initial-interval": "1" - }, - "slaac_data_02": { - "send-advertisements": "False", - "min-rtr-adv-interval": "3", - "max-rtr-adv-interval": "4", - "default-lifetime": "5", - "vpp-routing-ra:suppress-link-layer": "False", - "vpp-routing-ra:initial-count": "1", - "vpp-routing-ra:initial-interval": "1" - }, - "slaac_data_03": { - "send-advertisements": "False", - "min-rtr-adv-interval": "1350", - "max-rtr-adv-interval": "1800", - "default-lifetime": "9000", - "vpp-routing-ra:suppress-link-layer": "True", - "vpp-routing-ra:initial-count": "3", - "vpp-routing-ra:initial-interval": "16" - }, - } - return slaac_data diff --git a/resources/test_data/honeycomb/span.py b/resources/test_data/honeycomb/span.py deleted file mode 100644 index 9e1004d8ed..0000000000 --- a/resources/test_data/honeycomb/span.py +++ /dev/null @@ -1,67 +0,0 @@ -# Copyright (c) 2016 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Test variables for SPAN port mirroring test suite.""" - - -def get_variables(interface1, interface2, interface3): - """Create and return a dictionary of test variables. - - :param interface1: Name of an interface. - :param interface2: Name of an interface. - :param interface3: Name of an interface. - :type interface1: string - :type interface2: string - :type interface3: string - - :returns: Dictionary of test variables - settings for Honeycomb's - SPAN port mirroring suite. - :rtype: dict - """ - variables = { - "interface1": interface1, - "interface2": interface2, - "interface3": interface3, - - # Interface 2 - ingress - "settings_receive": { - "state": "receive", - "iface-ref": interface2, - }, - - # Interface 2 - egress - "settings_transmit": { - "state": "transmit", - "iface-ref": interface2, - }, - - # Interface 2 - ingress/egress - "settings_both": { - "state": "both", - "iface-ref": interface2, - }, - - # Interface 3 - ingress/egress - "settings_if2": { - "state": "both", - "iface-ref": interface3, - }, - - # IP addresses for traffic test - "tg_to_dut_if1_ip": "192.168.1.1", - "dut_to_tg_if1_ip": "192.168.1.2", - "tg_to_dut_if2_ip": "192.168.2.1", - "dut_to_tg_if2_ip": "192.168.2.2", - "prefix": 24, - } - return variables diff --git a/resources/test_data/honeycomb/sub_interfaces.py b/resources/test_data/honeycomb/sub_interfaces.py deleted file mode 100644 index 1ab270b33c..0000000000 --- a/resources/test_data/honeycomb/sub_interfaces.py +++ /dev/null @@ -1,302 +0,0 @@ -# Copyright (c) 2016 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Test variables for Honeycomb sub-interface test suite.""" - -from copy import deepcopy - -# Sub-interface 1 and its settings: -sub_if_1_settings = { - "identifier": "1", - "vlan-type": "_802dot1q", - "enabled": "false" -} - -sub_if_1_tags = [ - { - "index": "0", - "dot1q-tag": { - "tag-type": "dot1q-types:s-vlan", - "vlan-id": "100" - } - }, - { - "index": "1", - "dot1q-tag": { - "tag-type": "dot1q-types:c-vlan", - "vlan-id": "any" - } - } -] - -sub_if_1_match = "vlan-tagged" - -# Expected operational data: sub-interface. -sub_if_1_oper = { - "identifier": 1, - "oper-status": "down", - "admin-status": "down", - "tags": { - "tag": [ - { - "index": 0, - "dot1q-tag": { - "tag-type": "dot1q-types:s-vlan", - "vlan-id": 100 - } - }, - { - "index": 1, - "dot1q-tag": { - "tag-type": "dot1q-types:c-vlan", - "vlan-id": "any" - } - }, - ] - }, - "match": { - "vlan-tagged": { - "match-exact-tags": False - } - } -} - -# Bridge domain name. -bd_name = 'test-sub-bd' - -# Bridge domain settings used while creating a test bridge domain. -bd_settings = { - 'flood': True, - 'forward': True, - 'learn': True, - 'unknown-unicast-flood': True, - 'arp-termination': True -} - -# Bridge domain configuration used while adding the sub-interface to the bridge -# domain. -sub_bd_settings = { - 'bridge-domain': bd_name, - 'split-horizon-group': 1, - 'bridged-virtual-interface': False -} - -# Configuration data: Enable tag-rewrite push. -tag_rewrite_push = { - "vlan-type": "vpp-vlan:_802dot1q", - "push-tags": [ - { - "index": 0, - "dot1q-tag": { - "tag-type": "dot1q-types:s-vlan", - "vlan-id": 123 - } - }, - { - "index": 1, - "dot1q-tag": { - "tag-type": "dot1q-types:c-vlan", - "vlan-id": 456 - } - } - ] -} - -# Expected operational data: tag-rewrite push. -tag_rewrite_push_oper = { - "vlan-type": "vpp-vlan:_802dot1q", - "push-tags": [ - { - "index": 0, - "dot1q-tag": { - "tag-type": "dot1q-types:s-vlan", - "vlan-id": 123 - } - }, - { - "index": 1, - "dot1q-tag": { - "tag-type": "dot1q-types:c-vlan", - "vlan-id": 456 - } - } - ] -} - -# Expected VAT data: tag-rewrite push. -tag_rewrite_push_VAT = { - 'sub_default': 0, - 'sub_dot1ad': 0, - 'sub_exact_match': 0, - 'sub_inner_vlan_id': 0, - 'sub_inner_vlan_id_any': 1, - 'sub_number_of_tags': 2, - 'sub_outer_vlan_id': 100, - 'sub_outer_vlan_id_any': 0, - 'vtr_op': 2, - 'vtr_push_dot1q': 1, - 'vtr_tag1': 123, - 'vtr_tag2': 456 -} - -# Configuration data: Enable tag-rewrite pop 1. -tag_rewrite_pop_1 = { - "pop-tags": "1" -} - -# Expected operational data: tag-rewrite pop 1. -tag_rewrite_pop_1_oper = { - "vlan-type": "vpp-vlan:_802dot1ad", - "pop-tags": 1 -} - -# Expected VAT data: tag-rewrite pop 1. -tag_rewrite_pop_1_VAT = { - 'sub_default': 0, - 'sub_dot1ad': 0, - 'sub_exact_match': 0, - 'sub_inner_vlan_id': 0, - 'sub_inner_vlan_id_any': 1, - 'sub_number_of_tags': 2, - 'sub_outer_vlan_id': 100, - 'sub_outer_vlan_id_any': 0, - 'vtr_op': 3, - 'vtr_push_dot1q': 0, - 'vtr_tag1': 0, - 'vtr_tag2': 0 -} - -# Configuration data: Enable tag-rewrite translate 1-2. -tag_rewrite_translate_1_2 = { - "vlan-type": "vpp-vlan:_802dot1q", - "pop-tags": "1", - "push-tags": [ - { - "index": 0, - "dot1q-tag": { - "tag-type": "dot1q-types:s-vlan", - "vlan-id": 111 - } - }, - { - "index": 1, - "dot1q-tag": { - "tag-type": "dot1q-types:c-vlan", - "vlan-id": 222 - } - } - ] -} - -# Expected operational data: tag-rewrite translate 1-2. -tag_rewrite_translate_1_2_oper = { - "vlan-type": "vpp-vlan:_802dot1q", - "pop-tags": 1, - "push-tags": [ - { - "index": 0, - "dot1q-tag": { - "tag-type": "dot1q-types:s-vlan", - "vlan-id": 111 - } - }, - { - "index": 1, - "dot1q-tag": { - "tag-type": "dot1q-types:c-vlan", - "vlan-id": 222 - } - }, - ] -} - -# Expected VAT data: tag-rewrite translate 1-2. -tag_rewrite_translate_1_2_VAT = { - 'sub_default': 0, - 'sub_dot1ad': 0, - 'sub_exact_match': 0, - 'sub_inner_vlan_id': 0, - 'sub_inner_vlan_id_any': 1, - 'sub_number_of_tags': 2, - 'sub_outer_vlan_id': 100, - 'sub_outer_vlan_id_any': 0, - 'vtr_op': 6, - 'vtr_push_dot1q': 1, - 'vtr_tag1': 111, - 'vtr_tag2': 222 -} - -# Configuration data: Disable tag-rewrite. -tag_rewrite_disabled = {} - -# Expected VAT data: Disable tag-rewrite. -tag_rewrite_disabled_VAT = { - 'sub_default': 0, - 'sub_dot1ad': 0, - 'sub_exact_match': 0, - 'sub_inner_vlan_id': 0, - 'sub_inner_vlan_id_any': 1, - 'sub_number_of_tags': 2, - 'sub_outer_vlan_id': 100, - 'sub_outer_vlan_id_any': 0, - 'vtr_op': 0, - 'vtr_push_dot1q': 0, - 'vtr_tag1': 0, - 'vtr_tag2': 0 -} - -# Configuration data: -# Wrong vlan-type for enable tag-rewrite translate 1-2. -tag_rewrite_translate_1_2_wrong = { - "vlan-type": "vpp-vlan:WRONG", - "pop-tags": "1", - "push-tags": [ - { - "index": 0, - "dot1q-tag": { - "tag-type": "dot1q-types:s-vlan", - "vlan-id": 111 - } - }, - { - "index": 1, - "dot1q-tag": { - "tag-type": "dot1q-types:c-vlan", - "vlan-id": 222 - } - } - ] -} - -# IP addresses configured on sub-interface during tests -ipv4 = { - "address": "192.168.0.4", - "netmask": "255.255.255.0", - "prefix-length": 24} -ipv4_2 = { - "address": "192.168.0.5", - "netmask": "255.255.0.0", - "prefix-length": 16} - -sub_if_2_settings = sub_if_1_settings -sub_if_2_tags = sub_if_1_tags -sub_if_2_match = "vlan-tagged-exact-match" -sub_if_2_oper = deepcopy(sub_if_1_oper) -sub_if_2_oper["match"]["vlan-tagged"]["match-exact-tags"] = True - -ipv6 = { - "address": "10::10", - "prefix-length": 24} -ipv6_2 = { - "address": "10::11", - "prefix-length": 16} diff --git a/resources/test_data/honeycomb/vxlan.py b/resources/test_data/honeycomb/vxlan.py deleted file mode 100644 index 43307aa61a..0000000000 --- a/resources/test_data/honeycomb/vxlan.py +++ /dev/null @@ -1,28 +0,0 @@ -# Copyright (c) 2016 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Test variables for Honeycomb VxLAN management test suite.""" - -# invalid VxLAN settings -vxlan_invalid = [ - # same source and destination IPs - {'src': '192.168.0.2', 'dst': '192.168.0.2', 'vni': 88, 'encap-vrf-id': 0}, - # missing source - {'dst': '192.168.0.2', 'vni': 88, 'encap-vrf-id': 0}, - # missing destination - {'src': '192.168.0.2', 'vni': 88, 'encap-vrf-id': 0}, - # missing vni - {'src': '192.168.0.2', 'dst': '192.168.0.3', 'encap-vrf-id': 0}, - # missing encap id - {'src': '192.168.0.2', 'dst': '192.168.0.3', 'vni': 88} -] diff --git a/resources/test_data/honeycomb/vxlan_gpe.py b/resources/test_data/honeycomb/vxlan_gpe.py deleted file mode 100644 index 308cd0a316..0000000000 --- a/resources/test_data/honeycomb/vxlan_gpe.py +++ /dev/null @@ -1,99 +0,0 @@ -# Copyright (c) 2016 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Test variables for Honeycomb VxLAN GPE management test suite.""" - -# The first VxLAN GPE Interface used in tests. -vxlan_gpe_if1 = 'vxlan_gpe_tunnel0' -vxlan_gpe_base_settings = { - 'name': vxlan_gpe_if1, - 'description': 'for testing purposes', - 'enabled': True, - 'link-up-down-trap-enable': 'enabled' -} -vxlan_gpe_settings = { - 'local': '192.168.50.76', - 'remote': '192.168.50.71', - 'vni': 9, - 'next-protocol': 'ipv4', - 'encap-vrf-id': 0, - 'decap-vrf-id': 0 -} - -# The values of parameters of disabled VxLAN GPE interface. -vxlan_gpe_disabled_base_settings = { - 'name': vxlan_gpe_if1, - 'description': 'for testing purposes', - 'enabled': 'false' -} - -# Wrong interface type. -vxlan_gpe_if2 = 'vxlan_gpe_tunnel1' -vxlan_gpe_wrong_type_base_settings = { - 'name': vxlan_gpe_if2, - 'type': 'iana-if-type:ethernetCsmacd', - 'description': 'for testing purposes', - 'enabled': True, - 'link-up-down-trap-enable': 'enabled' -} - -# Wrong next-protocol value. -vxlan_gpe_if3 = 'vxlan_gpe_tunnel1' -vxlan_gpe_wrong_protocol_base_settings = { - 'name': vxlan_gpe_if3, - 'description': 'for testing purposes', - 'enabled': 'true', - 'link-up-down-trap-enable': 'enabled' -} -vxlan_gpe_wrong_protocol_settings = { - 'local': '192.168.50.77', - 'remote': '192.168.50.72', - 'vni': 9, - 'next-protocol': 'wrong_ipv4', - 'encap-vrf-id': 0, - 'decap-vrf-id': 0 -} - -# The first IPv6 VxLAN GPE interface. -vxlan_gpe_if5 = 'vxlan_gpe_tunnel0' -vxlan_gpe_base_ipv6_settings = { - 'name': vxlan_gpe_if5, - 'description': 'for testing purposes', - 'enabled': True, - 'link-up-down-trap-enable': 'enabled' -} -vxlan_gpe_ipv6_settings = { - 'local': '10:10:10:10:10:10:10:10', - 'remote': '10:10:10:10:10:10:10:11', - 'vni': 9, - 'next-protocol':'ipv4', - 'encap-vrf-id': 0, - 'decap-vrf-id': 0 -} - -# The second IPv6 VxLAN GPE interface. -vxlan_gpe_if6 = 'vxlan_gpe_tunnel1' -vxlan_gpe_base_ipv6_settings2 = { - 'name': vxlan_gpe_if6, - 'description': 'for testing purposes', - 'enabled': True, - 'link-up-down-trap-enable': 'enabled' -} -vxlan_gpe_ipv6_settings2 = { - 'local': '10:10:10:10:10:10:10:20', - 'remote': '10:10:10:10:10:10:10:21', - 'vni': 9, - 'next-protocol': 'ipv4', - 'encap-vrf-id': 0, - 'decap-vrf-id': 0 -} |