def vlan_variables(): global tg global tg_handler,hw_constants_DUT sc_data.cli_type_click = "click" sc_data.cli_type= st.get_ui_type(vars.D1, cli_type="") sc_data.vlan_list = random_vlan_list(count=2) sc_data.vlan_id = str(sc_data.vlan_list[0]) sc_data.vlan = str(sc_data.vlan_list[1]) sc_data.kbps = 1000 sc_data.frame_size = 68 sc_data.rate_pps =5000 sc_data.packets = (sc_data.kbps*1024)/(sc_data.frame_size*8) sc_data.bum_deviation = int(0.10 * sc_data.packets) sc_data.lower_pkt_count = int(sc_data.packets - sc_data.bum_deviation) sc_data.higher_pkt_count = int(sc_data.packets + sc_data.bum_deviation) sc_data.max_vlan = 4093 sc_data.source_mac = "00:0A:01:00:00:01" sc_data.source_mac1 = "00:0A:02:00:00:01" sc_data.line_rate = 100 sc_data.wait_stream_run = 10 sc_data.wait_for_stats = 10 sc_data.free_port = st.get_free_ports(vars.D1)[0] tg_handler = tgapi.get_handles_byname("T1D1P1", "T1D1P2", "T1D2P1", "T1D2P2") tg = tg_handler["tg"] tg_info['tg_info'] = tg_handler tg_info['vlan_id'] = sc_data.vlan sc_data.vlan_id_start = 1 sc_data.mac_count = 100 sc_data.dut_platform = basic_obj.get_hwsku(vars.D1) sc_data.vlan_data = [{"dut": [vars.D1], "vlan_id": sc_data.vlan, "tagged": [vars.D1T1P1, vars.D1T1P2]}] hw_constants_DUT = st.get_datastore(vars.D1, "constants") sc_data.warm_reboot_supported_platforms = hw_constants_DUT['WARM_REBOOT_SUPPORTED_PLATFORMS']
def initialize_variables(): static_data.portchannel_name = "PortChannel1" static_data.portchannel_name2 = "PortChannel2" static_data.portchannel_name3 = "PortChannel3" static_data.portchannel_name4 = "PortChannel4" static_data.max_portchannels = 128 static_data.vid = str(random_vlan_list()[0]) static_data.ip41 = '60.1.1.1' static_data.ip42 = '30.1.1.1' static_data.ip43 = '40.1.1.1' static_data.ip_mask = '8' static_data.src_ip = '60.1.1.2' static_data.dst_ip = '30.1.1.3' static_data.ip_src_count = 1000 static_data.ip_dst_count = 1000 static_data.tcp_src_port_count = 1000 static_data.tcp_dst_port_count = 1000 static_data.src_port = '123' static_data.dst_port = '234' static_data.subnet = '8' static_data.ip_addr_pc1 = '20.1.1.2' static_data.ip_addr_pc2 = '20.1.1.3' static_data.ipv4 = 'ipv4' static_data.ip_addr_po1 = '60.1.1.3' static_data.ip_addr_po2 = '30.1.1.2' static_data.ip_addr_po3 = '30.1.1.3' static_data.static_ip1 = '60.0.0.0/8' static_data.static_ip2 = '30.0.0.0/8' static_data.static_ip3 = '40.0.0.0/8' static_data.remote_mac = '00:00:00:00:12:34' static_data.remote_mac2 = '00:00:00:00:56:78' static_data.mtu_default = intfobj.get_interface_property( vars.D1, vars.D1D2P1, 'mtu')[0]
def test_ft_vlan_syslog_verify(): """ Author:Anil Kumar Kacharla <*****@*****.**> Referrence Topology : Test bed ID:4 D1--Mgmt network verify VLAN syslog functionality. """ vars = st.ensure_min_topology("D1") sc_data.vlan_test = str(random_vlan_list(1, [int(sc_data.vlan)])[0]) result = 1 st.log("checking vlan count before vlan addition or deletion") count_before_add = slog.get_logging_count(vars.D1, severity="NOTICE", filter_list=["addVlan"]) count_before_delete = slog.get_logging_count(vars.D1, severity="NOTICE", filter_list=["removeVlan"]) st.log("vlan count before adding vlan:{}".format(count_before_add)) st.log("vlan count before deleting vlan:{}".format(count_before_delete)) vlan.create_vlan(vars.D1, sc_data.vlan_test) vlan.delete_vlan(vars.D1, sc_data.vlan_test) st.log("checking vlan count after adding vlan") count_after_add = slog.get_logging_count(vars.D1, severity="NOTICE", filter_list=["addVlan"]) st.log("vlan count after adding vlan:{}".format(count_after_add)) count_after_delete = slog.get_logging_count(vars.D1, severity="NOTICE", filter_list=["removeVlan"]) st.log("vlan count after deleting vlan:{}".format(count_after_delete)) if not count_after_add > count_before_add: st.error("vlan log count increamented after adding vlan:{}".format(count_after_add)) result = 0 if not count_after_delete > count_before_delete: st.error("vlan log count increamented after deleting vlan:{}".format(count_after_delete)) result = 0 if not result: st.report_fail("test_case_fail") st.log(" vlan count after adding or deleting vlan is incremented") st.report_pass("test_case_passed")
def sf_module_prolog(): clear_vlan_configuration(vars.D1) sf_data.vlan = str(random_vlan_list()[0]) create_vlan(vars.D1, sf_data.vlan) add_vlan_member(vars.D1, sf_data.vlan, port_list=sf_data.port_list, tagging_mode=True) sf_data.tg, sf_data.tg_ph_list, sf_data.stream_sf_data = sf_tg_stream_config( )
def dut_vlan_config(): st.log("creating vlan and participating TGEN ports") data.vlan = str(random_vlan_list()[0]) exceptions = exec_all(True, [[vlan_obj.create_vlan, vars.D1, data.vlan], [vlan_obj.create_vlan, vars.D2, data.vlan]])[1] ensure_no_exception(exceptions) exceptions = exec_all(True, [[ vlan_obj.add_vlan_member, vars.D1, data.vlan, [vars.D1T1P1, vars.D1T1P2], True ], [vlan_obj.add_vlan_member, vars.D2, data.vlan, [vars.D2T1P1], True]])[1] ensure_no_exception(exceptions)
def bgp_rst_initialize_variables(): bgp_rst_data.dut1_ip_l = ["139.8.1.1", "147.8.1.1"] bgp_rst_data.dut2_ip_l = ["139.8.1.2", "147.8.1.2"] bgp_rst_data.dut1_lpbk_ip_l = ["39.8.1.1", "47.8.1.1"] bgp_rst_data.dut2_lpbk_ip_l = ["39.8.1.2", "47.8.1.2"] bgp_rst_data.dut1_asn = 1339 bgp_rst_data.dut2_asn = 1447 bgp_rst_data.ip_pre_len = 24 bgp_rst_data.dut1_ip6_l = ["3009::1", "3109::1"] bgp_rst_data.dut2_ip6_l = ["3009::2", "3109::2"] bgp_rst_data.ip6_pre_len = 64 bgp_rst_data.unconfig_flag = False bgp_rst_data.portchannel_name = "PortChannel3" bgp_rst_data.vlan_id = random_vlan_list(count=1)
def tf_module_config(config='yes'): if config == 'yes': tf_data.vlan = str(random_vlan_list()[0]) vapi.create_vlan(vars.D1, tf_data.vlan) vapi.add_vlan_member(vars.D1, tf_data.vlan, port_list=tf_data.port_list, tagging_mode=True) tf_data.tg, tf_data.tg_ph_list, tf_data.stream_tf_data = tf_tg_stream_config( ) tfapi.threshold_feature_debug(vars.D1, mode='port_map') else: vapi.delete_vlan_member(vars.D1, tf_data.vlan, port_list=tf_data.port_list, tagging_mode=True) vapi.delete_vlan(vars.D1, tf_data.vlan)
def bgp_unnum_initialize_variables(): global data data = SpyTestDict() data.shell_sonic = "sonic" data.shell_vtysh = "vtysh" data.vlan_li = random_vlan_list(2) data.vlan_in_1 = "Vlan{}".format(str(data.vlan_li[0])) data.vlan_in_2 = "Vlan{}".format(str(data.vlan_li[1])) data.d1_ip6_adr1_l = [ "2231:1:23::48", "5512::4", "7E31:21::48", "4141:1::2" ] data.d2_ip6_adr1_l = [ "2231:1:23::49", "5512::5", "7E31:21::49", "4141:1::23" ] data.d1d2_ip6_adr1_mask_l = ["78", "96", "64", "88"] data.d1d2_ip6_adr1_rt = ["2231:1:23::", "5512::", "7E31:21::", "4141:1::"] data.ip6_addr_manual_ll = [ "FE80:0:0:0:201:5FF:FE00:500", "FE80:0:0:0:204:5FF:FE00:500", "FE80:0:0:0:210:5FF:FE00:500" ] data.tg_ip4_addr_l = ["23.1.0.1", "55.1.1.1"] data.tgd_ip4_addr_l = ["23.1.0.2", "55.1.1.2"] data.tg_ip4_addr_mask_l = ["24", "24"] data.tg_ip4_addr_rt_l = ["23.1.0.0", "55.1.1.0"] data.tg_ip6_addr_l = ["33f1::1", "8911:1::12"] data.tgd_ip6_addr_l = ["33f1::2", "8911:1::13"] data.tg_ip6_addr_mask_l = ["64", "64"] data.tg_ip6_addr_rt_l = ["33f1::", "8911:1::"] data.d1_local_as = "10012" data.d2_local_as = "20012" data.d1_rid = "100.0.1.2" data.d2_rid = "200.0.1.2" data.wait = 10 data.vrf_name = 'Vrf-102' data.portchannel_name = "PortChannel9" data.wait_timer = 120 if not st.is_dry_run() else 1
import pytest import time from spytest import st, tgapi, SpyTestDict from spytest.utils import random_vlan_list import apis.system.reboot as rb_obj import apis.system.crm as crm_obj import apis.switching.vlan as vlan_obj import apis.switching.mac as mac_obj import apis.system.basic as basic_obj data = SpyTestDict() data.vlan = str(random_vlan_list()[0]) data.threshold_used_type = 'used' data.threshold_fdb_entry = 'FDB_ENTRY' data.threshold_exceed = "THRESHOLD_EXCEEDED" data.threshold_clear = "THRESHOLD_CLEAR" data.family = "fdb" data.mode_high = 'high' data.mode_low = 'low' data.polling_interval = 1 data.frame_size = 68 data.wait_stream_run = 10 data.wait_for_stats = 10 @pytest.fixture(scope="module", autouse=True) def system_warm_reboot_module_hooks(request): # add things at the start of this module
data.ip4_addr_rt = [ "192.168.1.0", "192.168.2.0", "192.168.3.0", "192.168.4.0", "192.168.5.0", "192.168.6.0" ] data.ip6_addr = [ "2001::1", "2001::2", "3301::1", "3301::2", "4441::1", "4441::2", "5551::1", "5551::2", "6661::1", "6661::2", "7771::1", "7771::2" ] data.ip6_addr_rt = ["2001::", "3301::", "4441::", "5551::", "6661::", "7771::"] data.loopback_1 = ["11.11.11.1", "22.22.22.1", "33.33.33.1"] data.loopback6_1 = ["7767:12::2", "6671:230f:12::f", "9109:2cd1:341::3"] data.af_ipv4 = "ipv4" data.af_ipv6 = "ipv6" data.shell_sonic = "sonic" data.shell_vtysh = "vtysh" data.vlan_1 = str(random_vlan_list()[0]) data.vlan_2 = str(random_vlan_list()[0]) data.vlan_int_1 = "Vlan{}".format(data.vlan_1) data.vlan_int_2 = "Vlan{}".format(data.vlan_2) data.port_channel = "PortChannel100" data.tg_mac1 = "00:00:00:EA:23:0F" data.tg_mac2 = "00:00:11:0A:45:33" data.rate_pps = 2000 data.static_ip6_rt_drop = "blackhole" data.static_ip6_rt = "6661::/64" data.static_ip_rt = "192.168.5.0/24" data.as_num = 100 data.remote_as_num = 200 data.routemap = "preferGlobal" data.wait_tgstats = 2 data.no_of_ports = 8
def vlan_variables(): global tg global tg_handler sc_data.vlan_list = random_vlan_list(count=2) sc_data.vlan = str(sc_data.vlan_list[1]) sc_data.vlan1 = str(sc_data.vlan_list[0]) sc_data.source_mac = "00:0A:01:00:00:01" sc_data.line_rate = 100 sc_data.wait_stream_run = 10 sc_data.wait_for_stats = 10 sc_data.frame_size = 68 tg_handler = tgapi.get_handles_byname("T1D1P1", "T1D1P2", "T1D2P1", "T1D2P2") tg = tg_handler["tg"] tg_info['tg_info'] = tg_handler tg_info['vlan_id'] = sc_data.vlan sc_data.mac_count = 100 sc_data.portchannel_name = "PortChannel7" sc_data.portchannel_name2 = "PortChannel8" sc_data.dut_list = [vars.D1, vars.D2] sc_data.members_dut1 = [vars.D1D2P1, vars.D1D2P2] sc_data.members_dut2 = [vars.D2D1P1, vars.D2D1P2] sc_data.members_dut1_p2 = [vars.D1D2P3, vars.D1D2P4] sc_data.members_dut2_p2 = [vars.D2D1P3, vars.D2D1P4] sc_data.vlan_pc_d1 = [{ "dut": [vars.D1], "vlan_id": sc_data.vlan, "tagged": [sc_data.portchannel_name, sc_data.portchannel_name2] }] sc_data.vlan_pc_d2 = [{ "dut": [vars.D2], "vlan_id": sc_data.vlan, "tagged": [sc_data.portchannel_name, sc_data.portchannel_name2] }] sc_data.vlan_data_d1 = [{ "dut": [vars.D1], "vlan_id": sc_data.vlan, "tagged": [vars.D1T1P1, vars.D1T1P2, vars.D1D2P1, vars.D1D2P2] }] sc_data.vlan_data_d2 = [{ "dut": [vars.D2], "vlan_id": sc_data.vlan, "tagged": [vars.D2T1P1, vars.D2T1P2, vars.D2D1P1, vars.D2D1P2] }] sc_data.vlan1_data_d1 = [{ "dut": [vars.D1], "vlan_id": sc_data.vlan1, "tagged": [vars.D1T1P1, vars.D1T1P2, vars.D1D2P1, vars.D1D2P2] }] sc_data.vlan1_data_d2 = [{ "dut": [vars.D2], "vlan_id": sc_data.vlan1, "tagged": [vars.D2T1P1, vars.D2T1P2, vars.D2D1P1, vars.D2D1P2] }]
def test_ft_ocyang_delete(): """ Verify the bare bone oc yang version using correct, no version and incorrect version using DELETE call :return: """ vlan_list = random_vlan_list(count=1) rest_url_patch = "{}openconfig-interfaces:interfaces/interface".format( oc_yang_data.base_url) data = { "openconfig-interfaces:interface": [{ "name": "Vlan{}".format(vlan_list[0]), "config": { "name": "Vlan{}".format(vlan_list[0]) } }] } headers = { "accept": "application/yang-data+json", "Content-Type": "application/yang-data+json" } response = rest_call(vars.D1, headers=headers, username=oc_yang_data.username, password=oc_yang_data.password, url=rest_url_patch, call_type='patch', data=data, port="") check_for_error(rest_url_patch, response) del headers["Content-Type"] rest_url = "{}openconfig-interfaces:interfaces/interface=Vlan{}".format( oc_yang_data.base_url, vlan_list[0]) st.banner("Verifying with out version ...") response = rest_call(vars.D1, headers=headers, username=oc_yang_data.username, password=oc_yang_data.password, url=rest_url, call_type='delete', port="") check_for_error(rest_url, response) st.banner("Verifying with wrong version as {}...".format( oc_yang_data.new_minor_version)) headers.update( {"accept-version": "{}".format(oc_yang_data.new_minor_version)}) response = rest_call(vars.D1, headers=headers, username=oc_yang_data.username, password=oc_yang_data.password, url=rest_url, call_type='delete', port="") check_for_error(rest_url, response, negative=False) headers = { "accept": "application/yang-data+json", "Content-Type": "application/yang-data+json" } response = rest_call(vars.D1, headers=headers, username=oc_yang_data.username, password=oc_yang_data.password, url=rest_url_patch, call_type='patch', data=data, port="") check_for_error(rest_url_patch, response) del headers["Content-Type"] st.banner("Verifying with actual version as {}...".format( oc_yang_data.version)) headers.update({"accept-version": oc_yang_data.version}) response = rest_call(vars.D1, headers=headers, username=oc_yang_data.username, password=oc_yang_data.password, url=rest_url, call_type='delete', port="") check_for_error(rest_url, response) st.report_pass("bare_bone_ocyang_version_status", "DELETE", "SUCCESS")
def initialize_variables(): data.clear() data.ro_community = 'test_123' data.location = 'hyderabad' data.contact = "Admin" data.sysname = "Sonic_device" data.mgmt_int = 'eth0' data.wait_time = 30 data.filter_cli = "-One" data.oid_sysName = '1.3.6.1.2.1.1.5.0' data.oid_syUpTime = '1.3.6.1.2.1.25.1.1.0' data.oid_sysLocation = '1.3.6.1.2.1.1.6.0' data.oid_sysDescr = '1.3.6.1.2.1.1.1.0' data.oid_sysContact = '1.3.6.1.2.1.1.4.0' data.oid_sysObjectId = '1.3.6.1.2.1.1.2.0' data.oid_mib_2 = '1.3.6.1.2.1' data.oid_if_mib_all = '1.3.6.1.2.1.31' data.oid_entity_mib_all = '1.3.6.1.2.1.47' data.oid_entity_sensor_mib = '1.3.6.1.2.1.99' data.oid_dot1q_mib = '1.3.6.1.2.1.17.7' data.oid_dot1db_mib = '1.3.6.1.2.1.17' data.oid_root_node_walk = '.' data.oid_IP_MIB_ipAddressRowStatus_ipv6 = '1.3.6.1.2.1.4.34.1.10.2' data.oid_IP_MIB_ipAddressStorageType_ipv6 = '1.3.6.1.2.1.4.34.1.11' data.oid_IPV6_MIB_ipv6IfDescr = '1.3.6.1.2.1.55.1.5.1.2' data.oid_IPV6_MIB_ipv6IfAdminStatus = '1.3.6.1.2.1.55.1.5.1.9' data.oid_IPV6_MIB_ipv6IpForwarding = '1.3.6.1.2.1.4.25.0' data.oid_IPV6_MIB_ipv6IpDefaultHopLimit = '1.3.6.1.2.1.4.26' data.oid_IPV6_MIB_ipv6ScopeZoneIndexTable = '1.3.6.1.2.1.4.36' data.oid_ipcidr_route_table = '1.3.6.1.2.1.4.24.4' data.af_ipv4 = "ipv4" data.loopback_addr = '67.66.66.66' data.loopback0 = 'Loopback0' data.oid_dot1d_Base = '1.3.6.1.2.1.17.1' data.oid_dot1d_Base_Bridge_Address = '1.3.6.1.2.1.17.1.1' data.oid_dot1d_Base_Num_Ports = '1.3.6.1.2.1.17.1.2' data.oid_dot1d_Base_Type = '1.3.6.1.2.1.17.1.3' data.oid_dot1d_Base_Port = '1.3.6.1.2.1.17.1.4.1.1' data.oid_dot1d_Base_PortIf_Index = '1.3.6.1.2.1.17.1.4.1.2' data.oid_dot1d_Base_Port_Delay_Exceeded_Discards = '1.3.6.1.2.1.17.1.4.1.4' data.oid_dot1d_Base_Port_Mtu_Exceeded_Discards = '1.3.6.1.2.1.17.1.4.1.5' data.oid_dot1d_Tp_Aging_Time = '1.3.6.1.2.1.17.4.2' data.oid_dot1q_Vlan_Version_Number = '1.3.6.1.2.1.17.7.1.1.1' data.oid_dot1q_Max_VlanId = '1.3.6.1.2.1.17.7.1.1.2' data.oid_dot1q_Max_Supported_Vlans = '1.3.6.1.2.1.17.7.1.1.3' data.oid_dot1q_Num_Vlans = '1.3.6.1.2.1.17.7.1.1.4' data.oid_dot1q_Vlan_Num_Deletes = '1.3.6.1.2.1.17.7.1.4.1' data.oid_dot1q_Fdb_Dynamic_Count = '1.3.6.1.2.1.17.7.1.2.1.1.2' data.oid_dot1q_Tp_Fdb_Address = '1.3.6.1.2.1.17.7.1.2.2.1.1' data.oid_dot1q_Tp_Fdb_Port = '1.3.6.1.2.1.17.7.1.2.2.1.2' data.oid_dot1q_Tp_Fdb_Status = '1.3.6.1.2.1.17.7.1.2.2.1.3' data.oid_dot1q_Vlan_Index = '1.3.6.1.2.1.17.7.1.4.2.1.2' data.oid_dot1q_Vlan_Current_Egress_Ports = '1.3.6.1.2.1.17.7.1.4.2.1.4' data.oid_dot1q_Vlan_Current_Untagged_Ports = '1.3.6.1.2.1.17.7.1.4.2.1.5' data.oid_dot1q_Vlan_Static_Name = '1.3.6.1.2.1.17.7.1.4.3.1.1' data.oid_dot1q_Vlan_Static_Egress_Ports = '1.3.6.1.2.1.17.7.1.4.3.1.2' data.oid_dot1q_Vlan_Static_Untagged_Ports = '1.3.6.1.2.1.17.7.1.4.3.1.4' data.oid_dot1q_Vlan_Static_Row_Status = '1.3.6.1.2.1.17.7.1.4.3.1.5' data.oid_dot1q_Pvid = '1.3.6.1.2.1.17.7.1.4.5.1.1' data.source_mac = "00:0a:01:00:00:01" data.source_mac1 = "00:0a:02:00:00:01" data.vlan = str(random_vlan_list()[0]) data.dot1q_Vlan_Static_Table = '1.3.6.1.2.1.17.7.1.4.3' data.dot1q_Vlan_Current_Table = '1.3.6.1.2.1.17.7.1.4.2' data.dot1q_Tp_Fdb_Table = '1.3.6.1.2.1.17.7.1.2.2' data.dot1q_Fdb_Table = '1.3.6.1.2.1.17.7.1.2.1' data.nsNotifyShutdown = '8072.4.0.2' data.filter = '-Oqv'
def nat_reboot_initialize_variables(): global data data = SpyTestDict() data.in1_ip_addr = "12.12.0.1" data.in1_ip_addr_h = ["12.12.0.2", "12.12.0.3", "12.12.0.4","12.12.0.5", "12.12.0.6", "12.12.0.7","12.12.0.8", "12.12.0.9", "12.12.0.10", "12.12.0.11"] data.in1_ip_addr_rt = "12.12.0.0" data.in1_ip_addr_mask = "16" data.in2_ip_addr = "13.13.13.1" data.in2_ip_addr_h = ["13.13.13.2", "13.13.13.3", "13.13.13.4"] data.in2_ip_addr_rt = "13.13.13.0" data.in2_ip_addr_mask = "24" data.in3_ip_addr = "23.1.0.1" data.in3_ip_addr_h = ["23.1.0.2", "23.1.0.3", "23.1.0.4"] data.in3_ip_addr_rt = "23.1.0.0" data.in3_ip_addr_mask = "16" data.out_ip_addr = "125.56.90.11" data.out_ip_addr_l = ["125.56.90.12", "125.56.90.13", "125.56.90.14", "125.56.90.15", "125.56.90.16"] data.out_ip_addr_h = "125.56.90.1" data.out_ip_range = "125.56.90.23-125.56.90.24" data.out_ip_pool = ["125.56.90.23", "125.56.90.24"] data.out_ip_addr_rt = "125.56.90.0" data.out_ip_addr_mask = "24" data.out2_ip_addr = "85.16.0.48" data.out2_ip_addr_l = ["85.16.0.49", "85.16.0.50", "85.16.0.51"] data.out2_ip_addr_h = "85.16.0.49" data.out2_ip_range = "85.16.0.30-85.16.0.50" data.out2_ip_addr_rt = "85.16.0.0" data.out2_ip_addr_mask = "16" data.global_ip_addr_h = "129.2.30.13" data.global_ip_addr = "129.2.30.12" data.global_ip_addr_rt = "129.2.30.0" data.global_ip_addr_mask = "24" data.test_ip_addr = "22.22.22.1" data.test_ip_addr_mask = "16" data.test_ip_addr_rt = "22.22.0.0" data.s_local_ip = "11.11.11.2" data.s_local_ip_route = "11.11.0.0" data.s_local_ip_mask = "16" data.s_global_ip = "88.98.128.2" data.s_global_ip_rt = "88.98.128.0" data.s_global_ip_mask = "24" data.proto_all = "all" data.proto_tcp = "tcp" data.proto_udp = "udp" data.zone_1 = "0" data.zone_2 = "1" data.zone_3 = "2" data.zone_4 = "3" data.pool_name = ["pool_123_nat", "88912_pool", "123Pool"] data.bind_name = ["bind_1", "7812_bind", "bind_11"] data.global_port_range = "333-334" data.local_src_port = ["251", "252"] data.local_dst_port = ["444", "8991"] data.global_src_port = ["12001", "7781"] data.global_dst_port = ["333", "334"] data.tcp_src_local_port = 1002 data.tcp_dst_local_port = 3345 data.udp_src_local_port = 7781 data.udp_dst_local_port = 8812 data.tcp_src_global_port = 100 data.tcp_dst_global_port = 345 data.udp_src_global_port = 7811 data.udp_dst_global_port = 5516 data.af_ipv4 = "ipv4" data.nat_type_snat = "snat" data.nat_type_dnat = "dnat" data.shell_sonic = "sonic" data.shell_vtysh = "vtysh" data.vlan_list = random_vlan_list(4) data.vlan_int_1 = "Vlan{}".format(str(data.vlan_list[0])) data.vlan_int_2 = "Vlan{}".format(str(data.vlan_list[1])) data.vlan_int_3 = "Vlan{}".format(str(data.vlan_list[2])) data.vlan_int_4 = "Vlan{}".format(str(data.vlan_list[3])) data.port_channel = "PortChannel100" data.l2_source_mac = "00:00:00:EA:23:0F" data.l2_destination_mac = "00:00:11:0A:45:33" data.rate_pkt_cap = '5' data.rate_traffic = '1500' data.pkt_count = '1500' data.host_mask = '32' data.mask_2 = '24' data.packet_forward_action = 'FORWARD' data.packet_do_not_nat_action = 'DO_NOT_NAT' data.packet_drop_action = 'DROP' data.stage_Ing = 'INGRESS' data.stage_Egr = 'EGRESS' data.acl_table_nat = 'NAT_ACL' data.acl_table_in_nat_eg = 'in_nat_eg' data.acl_table_out_nat_eg = 'out_nat_eg' data.acl_table_nat = 'NAT_ACL' data.type = 'L3' data.acl_drop_all_rule = 'INGRESS_FORWARD_L3_DROP_ALL_RULE' data.ipv4_type = 'ipv4any' data.tg1_src_mac_addr = '00:00:23:11:14:08' data.tg2_src_mac_addr = '00:00:23:1B:14:07' data.tg2_src_mac_addr = '00:00:43:32:1A:01' data.wait_time_traffic_run_to_pkt_cap = 1 data.wait_time_traffic_run = 1 data.wait_time_after_reload = 30 data.wait_time_after_reboot = 60 data.wait_time_to_no_shut = 30 data.wait_time_after_docker_restart = 30 data.wait_nat_tcp_timeout = 60 data.wait_nat_udp_timeout = 60 data.wait_nat_stats = 7 data.config_add='add' data.config_del='del' data.twice_nat_id_1 = '100' data.twice_nat_id_2 = '1100' data.wait_time_after_docker_restart = 10 data.mask = '32' data.max_nat_entries = "1024"