diff --git a/tests/conftest.py b/tests/conftest.py index d678713cd..1637eabf5 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -97,6 +97,13 @@ def pytest_addoption(parser): help="skip updating firmware on the AP (useful for local testing)" ) + parser.addoption( + "--skip-lanforge", + action="store_true", + default=False, + help="skip to do any interactions on lanforge (to be used in case of interop)" + ) + # change behaviour parser.addoption( "--exit-on-fail", @@ -260,6 +267,11 @@ def get_sdk_version(fixtures_ver): yield version +@pytest.fixture(scope="session") +def skip_lf(request): + yield request.config.getoption("skip-lanforge") + + # Controller Fixture @pytest.fixture(scope="session") def setup_controller(request, get_configuration, add_env_properties, fixtures_ver): @@ -542,26 +554,32 @@ def traffic_generator_connectivity(testbed, get_configuration): @pytest.fixture(scope="session") -def create_lanforge_chamberview_dut(lf_tools): - dut_object, dut_name = lf_tools.Create_Dut() +def create_lanforge_chamberview_dut(lf_tools, skip_lf): + if not skip_lf: + dut_object, dut_name = lf_tools.Create_Dut() return dut_name @pytest.fixture(scope="session") -def lf_tools(get_configuration, testbed): +def lf_tools(get_configuration, testbed, skip_lf): """ Create a DUT on LANforge""" - obj = ChamberView(lanforge_data=get_configuration["traffic_generator"]["details"], - testbed=testbed, access_point_data=get_configuration["access_point"]) - + if not skip_lf: + obj = ChamberView(lanforge_data=get_configuration["traffic_generator"]["details"], + testbed=testbed, access_point_data=get_configuration["access_point"]) + else: + obj = False yield obj @pytest.fixture(scope="session") -def lf_test(get_configuration, setup_influx, request): - if request.config.getoption("--exit-on-fail"): - obj = RunTest(lanforge_data=get_configuration['traffic_generator']['details'], influx_params=setup_influx, debug=True) - if request.config.getoption("--exit-on-fail") is False: - obj = RunTest(lanforge_data=get_configuration['traffic_generator']['details'], influx_params=setup_influx, debug=False) +def lf_test(get_configuration, setup_influx, request, skip_lf): + if not skip_lf: + if request.config.getoption("--exit-on-fail"): + obj = RunTest(lanforge_data=get_configuration['traffic_generator']['details'], influx_params=setup_influx, + debug=True) + if request.config.getoption("--exit-on-fail") is False: + obj = RunTest(lanforge_data=get_configuration['traffic_generator']['details'], influx_params=setup_influx, + debug=False) yield obj diff --git a/tests/e2e/interOp/conftest.py b/tests/e2e/interOp/conftest.py index a6170d8c3..846582b96 100644 --- a/tests/e2e/interOp/conftest.py +++ b/tests/e2e/interOp/conftest.py @@ -195,39 +195,39 @@ def setup_vlan(): @pytest.fixture(scope="class") -def setup_profiles(request, setup_controller, testbed, get_equipment_ref, fixtures_ver, +def setup_profiles(request, setup_controller, testbed, get_equipment_ref, fixtures_ver, skip_lf, instantiate_profile, get_markers, create_lanforge_chamberview_dut, lf_tools, get_security_flags, get_configuration, radius_info, get_apnos, radius_accounting_info): lf_tools.reset_scenario() param = dict(request.param) - + if skip_lf: # VLAN Setup - if request.param["mode"] == "VLAN": + if request.param["mode"] == "VLAN": - vlan_list = list() - refactored_vlan_list = list() - ssid_modes = request.param["ssid_modes"].keys() - for mode in ssid_modes: - for ssid in range(len(request.param["ssid_modes"][mode])): - if "vlan" in request.param["ssid_modes"][mode][ssid]: - vlan_list.append(request.param["ssid_modes"][mode][ssid]["vlan"]) - else: - pass - if vlan_list: - [refactored_vlan_list.append(x) for x in vlan_list if x not in refactored_vlan_list] - vlan_list = refactored_vlan_list - for i in range(len(vlan_list)): - if vlan_list[i] > 4095 or vlan_list[i] < 1: - vlan_list.pop(i) - if request.param["mode"] == "VLAN": - lf_tools.add_vlan(vlan_ids=vlan_list) + vlan_list = list() + refactored_vlan_list = list() + ssid_modes = request.param["ssid_modes"].keys() + for mode in ssid_modes: + for ssid in range(len(request.param["ssid_modes"][mode])): + if "vlan" in request.param["ssid_modes"][mode][ssid]: + vlan_list.append(request.param["ssid_modes"][mode][ssid]["vlan"]) + else: + pass + if vlan_list: + [refactored_vlan_list.append(x) for x in vlan_list if x not in refactored_vlan_list] + vlan_list = refactored_vlan_list + for i in range(len(vlan_list)): + if vlan_list[i] > 4095 or vlan_list[i] < 1: + vlan_list.pop(i) + if request.param["mode"] == "VLAN": + lf_tools.add_vlan(vlan_ids=vlan_list) # call this, if 1.x return_var = fixtures_ver.setup_profiles(request, param, setup_controller, testbed, get_equipment_ref, instantiate_profile, get_markers, create_lanforge_chamberview_dut, lf_tools, get_security_flags, get_configuration, radius_info, get_apnos, - radius_accounting_info) + radius_accounting_info, skip_lf=skip_lf) yield return_var diff --git a/tests/fixtures_1x.py b/tests/fixtures_1x.py index 83c7754c8..8fe12c006 100644 --- a/tests/fixtures_1x.py +++ b/tests/fixtures_1x.py @@ -85,7 +85,7 @@ class Fixtures_1x: def setup_profiles(self, request, param, setup_controller, testbed, get_equipment_ref, instantiate_profile, get_markers, create_lanforge_chamberview_dut, lf_tools, - get_security_flags, get_configuration, radius_info, get_apnos, radius_accounting_info): + get_security_flags, get_configuration, radius_info, get_apnos, radius_accounting_info, skip_lf=False): instantiate_profile = instantiate_profile(sdk_client=setup_controller) vlan_id, mode = 0, 0 diff --git a/tests/fixtures_2x.py b/tests/fixtures_2x.py index 87705022b..65320a971 100644 --- a/tests/fixtures_2x.py +++ b/tests/fixtures_2x.py @@ -324,7 +324,8 @@ class Fixtures_2x: def setup_profiles(self, request, param, setup_controller, testbed, get_equipment_ref, instantiate_profile, get_markers, create_lanforge_chamberview_dut, lf_tools, - get_security_flags, get_configuration, radius_info, get_apnos, radius_accounting_info): + get_security_flags, get_configuration, radius_info, get_apnos, + radius_accounting_info, skip_lf=False): instantiate_profile_obj = instantiate_profile(sdk_client=setup_controller) print(1, instantiate_profile_obj.sdk_client) @@ -660,8 +661,9 @@ class Fixtures_2x: ] ssid_data.append(ssid) lf_tools.ssid_list.append(ssid_info_sdk[interface][0]) - lf_tools.dut_idx_mapping = idx_mapping - lf_tools.update_ssid(ssid_data=ssid_data) + if skip_lf: + lf_tools.dut_idx_mapping = idx_mapping + lf_tools.update_ssid(ssid_data=ssid_data) except Exception as e: print(e) pass