From 1d8c7cd4ab0c061407477cfc3ea9cb944a30ff58 Mon Sep 17 00:00:00 2001 From: Nikita Yadav Date: Sat, 4 Dec 2021 10:31:28 +0530 Subject: [PATCH 01/27] added rate limiting radius server and accounting data --- tests/configuration.py | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/tests/configuration.py b/tests/configuration.py index d10b41d24..9ae8f83ef 100644 --- a/tests/configuration.py +++ b/tests/configuration.py @@ -693,6 +693,24 @@ RADIUS_ACCOUNTING_DATA = { "pk_password": "whatever" } +RATE_LIMITING_RADIUS_SERVER_DATA = { + "ip": "18.189.85.200", + "port": 1812, + "secret": "testing123", + "user": "user", + "password": "password", + "pk_password": "whatever" +} + +RATE_LIMITING_RADIUS_ACCOUNTING_DATA = { + "ip": "18.189.85.200", + "port": 1813, + "secret": "testing123", + "user": "user", + "password": "password", + "pk_password": "whatever" +} + PASSPOINT_RADIUS_SERVER_DATA = { "ip": "52.234.179.191", "port": 11812, From b9f6999dfbbf9287b6718898ca326eb901e134f8 Mon Sep 17 00:00:00 2001 From: Nikita Yadav Date: Sat, 4 Dec 2021 10:39:52 +0530 Subject: [PATCH 02/27] added two fixtures for rate limiting radius server and accounting data --- tests/conftest.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/tests/conftest.py b/tests/conftest.py index db23806db..a0805abfe 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -49,6 +49,8 @@ from cv_test_manager import cv_test from configuration import CONFIGURATION from configuration import RADIUS_SERVER_DATA from configuration import RADIUS_ACCOUNTING_DATA +from configuration import RATE_LIMITING_RADIUS_SERVER_DATA +from configuration import RATE_LIMITING_RADIUS_ACCOUNTING_DATA from lanforge.scp_util import SCP_File from testrails.testrail_api import APIClient from testrails.reporting import Reporting @@ -224,6 +226,16 @@ def radius_accounting_info(): """yields the radius accounting information from lab info file""" yield RADIUS_ACCOUNTING_DATA +@pytest.fixture(scope="session") +def rate_radius_info(): + """yields the radius server information from lab info file""" + yield RATE_LIMITING_RADIUS_SERVER_DATA + +@pytest.fixture(scope="session") +def rate_radius_accounting_info(): + """yields the radius accounting information from lab info file""" + yield RATE_LIMITING_RADIUS_ACCOUNTING_DATA + @pytest.fixture(scope="session") def get_configuration(testbed, request): From a62418e9a0344a9f5197c2540e5706d1e6da96fb Mon Sep 17 00:00:00 2001 From: Nikita Yadav Date: Sat, 4 Dec 2021 14:42:00 +0530 Subject: [PATCH 03/27] added cleanup option in Eapconnect --- libs/lanforge/lf_tests.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/libs/lanforge/lf_tests.py b/libs/lanforge/lf_tests.py index fef4074ba..f4f05c6ee 100644 --- a/libs/lanforge/lf_tests.py +++ b/libs/lanforge/lf_tests.py @@ -164,7 +164,7 @@ class RunTest: station_name=[], key_mgmt="WPA-EAP", pairwise="NA", group="NA", wpa_psk="DEFAULT", ttls_passwd="nolastart", ieee80211w=1, - wep_key="NA", ca_cert="NA", eap="TTLS", identity="nolaradius"): + wep_key="NA", ca_cert="NA", eap="TTLS", identity="nolaradius",cleanup=True): self.eap_connect = TTLSTest(host=self.lanforge_ip, port=self.lanforge_port, sta_list=station_name, vap=False, _debug_on=self.debug) @@ -244,7 +244,8 @@ class RunTest: cx_data = cx_data + str(j) + " : " + str(i[j]) + "\n" cx_data = cx_data + "\n" allure.attach(name="cx_data", body=str(cx_data)) - self.eap_connect.cleanup(station_name) + if cleanup: + self.eap_connect.cleanup(station_name) return self.eap_connect.passes() def wifi_capacity(self, mode="BRIDGE", vlan_id=100, batch_size="1,5,10,20,40,64,128", From 8e09b1ca0421cac8fe9749361385979e36cf50ea Mon Sep 17 00:00:00 2001 From: Nikita Yadav Date: Sat, 4 Dec 2021 14:49:30 +0530 Subject: [PATCH 04/27] added rate radius server and accounting data to setup profile fixture --- tests/conftest.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/conftest.py b/tests/conftest.py index a0805abfe..3839d05ab 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -496,7 +496,7 @@ def get_security_flags(): # Add more classifications as we go security = ["open", "wpa", "wep", "wpa2_personal", "wpa3_personal", "wpa3_personal_mixed", "wpa_wpa2_enterprise_mixed", "wpa2_eap", "wpa2_only_eap", - "wpa_wpa2_personal_mixed", "wpa_enterprise", "wpa2_enterprise", "wpa3_enterprise_mixed", + "wpa_wpa2_personal_mixed", "wpa_enterprise", "wpa2_enterprise","wpa2_enterprise_rate", "wpa3_enterprise_mixed", "wpa3_enterprise", "twog", "fiveg", "radius"] yield security From 977d0e4be8e478534ea1abc3560cc2386501ab12 Mon Sep 17 00:00:00 2001 From: Nikita Yadav Date: Sat, 4 Dec 2021 14:51:08 +0530 Subject: [PATCH 05/27] added wpa2_enterprise_rate to security flag --- tests/e2e/basic/conftest.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/e2e/basic/conftest.py b/tests/e2e/basic/conftest.py index 8beea193f..9c9c3c593 100644 --- a/tests/e2e/basic/conftest.py +++ b/tests/e2e/basic/conftest.py @@ -49,7 +49,7 @@ def create_lanforge_chamberview_dut(lf_tools): @pytest.fixture(scope="class") def setup_profiles(request, setup_controller, testbed, get_equipment_ref, fixtures_ver, reset_scenario_lf, 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, rate_radius_info, rate_radius_accounting_info,): param = dict(request.param) # VLAN Setup @@ -79,7 +79,7 @@ def setup_profiles(request, setup_controller, testbed, get_equipment_ref, fixtur 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, rate_radius_info, rate_radius_accounting_info) yield return_var From 53777d88454b95b7945b3deee65bbc8da396210a Mon Sep 17 00:00:00 2001 From: Nikita Yadav Date: Sat, 4 Dec 2021 14:52:33 +0530 Subject: [PATCH 06/27] added wpa2_enterprise_rate mode functionality to setup_profiles --- tests/fixtures_2x.py | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/tests/fixtures_2x.py b/tests/fixtures_2x.py index 6a8f9a11c..2d255fb73 100644 --- a/tests/fixtures_2x.py +++ b/tests/fixtures_2x.py @@ -357,7 +357,7 @@ 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, + get_security_flags, get_configuration, radius_info, get_apnos,rate_radius_info, rate_radius_accounting_info, radius_accounting_info, skip_lf=False): instantiate_profile_obj = instantiate_profile(sdk_client=setup_controller) @@ -503,6 +503,25 @@ class Fixtures_2x: except Exception as e: print(e) test_cases["wpa2_personal"] = False + if mode == "wpa2_enterprise_rate": + for j in profile_data["ssid"][mode]: + if mode in get_markers.keys() and get_markers[mode]: + try: + if j["appliedRadios"].__contains__("2G"): + lf_dut_data.append(j) + if j["appliedRadios"].__contains__("5G"): + lf_dut_data.append(j) + j["appliedRadios"] = list(set(j["appliedRadios"])) + j['security'] = 'wpa2' + RADIUS_SERVER_DATA = rate_radius_accounting_info + RADIUS_ACCOUNTING_DATA = rate_radius_info + creates_profile = instantiate_profile_obj.add_ssid(ssid_data=j, radius=True, + radius_auth_data=RADIUS_SERVER_DATA, + radius_accounting_data=RADIUS_ACCOUNTING_DATA) + test_cases["wpa_2g"] = True + except Exception as e: + print(e) + test_cases["wpa2_personal"] = False if mode == "wpa3_enterprise": for j in profile_data["ssid"][mode]: if mode in get_markers.keys() and get_markers[mode]: From 7875421516f14644677c03ec8026ebe934118e44 Mon Sep 17 00:00:00 2001 From: Nikita Yadav Date: Sat, 4 Dec 2021 14:53:53 +0530 Subject: [PATCH 07/27] added testcase wifi-5849 --- .../rate_limiting_with_radius/__init__.py | 0 .../test_radius_limiting.py | 75 +++++++++++++++++++ 2 files changed, 75 insertions(+) create mode 100644 tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/__init__.py create mode 100644 tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py diff --git a/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/__init__.py b/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py b/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py new file mode 100644 index 000000000..6e047722b --- /dev/null +++ b/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py @@ -0,0 +1,75 @@ +""" +Rate LImiting with radius Bridge Mode Scenario +""" + +import allure +import pytest + +pytestmark = [pytest.mark.regression, pytest.mark.rate_limiting_with_radius, pytest.mark.bridge] + +setup_params_general = { + "mode": "BRIDGE", + "ssid_modes": { + "wpa2_enterprise_rate": [ + {"ssid_name": "ssid_wpa2_2g_br", + "appliedRadios": ["2G"], + "security_key": "something", + "rate-limit": { + "ingress-rate": 50, + "egress-rate": 50 + } + }, + {"ssid_name": "ssid_wpa2_5g_br", + "appliedRadios": ["5G"], + "security_key": "something", + "rate-limit": { + "ingress-rate": 50, + "egress-rate": 50 + } + }]}, + "rf": {}, + "radius": False +} + + +@allure.feature("Bridge MODE Rate Limiting with radius server") +@pytest.mark.parametrize( + 'setup_profiles', + [setup_params_general], + indirect=True, + scope="class" +) +@pytest.mark.usefixtures("setup_profiles") +class TestRateLimitingWithRadiusBridge(object): + + @pytest.mark.wpa2_enterprise_rate + @pytest.mark.twog + @allure.testcase(url="https://telecominfraproject.atlassian.net/browse/WIFI-5849", name="WIFI-5849") + def test_radius_server_2g_up(self, lf_test, lf_tools, rate_radius_info,rate_radius_accounting_info, station_names_twog): + profile_data = setup_params_general["ssid_modes"]["wpa2_enterprise_rate"][0] + ssid_name = profile_data["ssid_name"] + mode = "BRIDGE" + vlan = 1 + security = "wpa2" + band = "twog" + eap = "TTLS" + print("authentication", rate_radius_info) + print("accounting",rate_radius_accounting_info ) + ttls_passwd = rate_radius_info["password"] + identity = rate_radius_info['user'] + allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"])) + passes = lf_test.EAP_Connect(ssid=ssid_name, security=security, + mode=mode, band=band, + eap=eap, ttls_passwd=ttls_passwd, identity=identity, + station_name=station_names_twog, ieee80211w=0, vlan_id=vlan, cleanup=False) + print(passes) + if passes: + wct_obj = lf_test.wifi_capacity(instance_name="Test_Radius_2g", mode=mode, vlan_id=vlan, + download_rate="0bps", batch_size="1", + upload_rate="1Gbps", protocol="TCP-IPv4", duration="60000") + + report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + + lf_tools.attach_report_graphs(report_name=report_name) + print("Test Completed... Cleaning up Stations") + assert True \ No newline at end of file From d96d0671cf65428e51a5389a7e1422713521a36f Mon Sep 17 00:00:00 2001 From: Nikita Yadav Date: Sat, 4 Dec 2021 23:04:26 +0530 Subject: [PATCH 08/27] adding updated testcase now with radius setup param --- .../test_radius_limiting.py | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py b/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py index 6e047722b..94a69213d 100644 --- a/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py +++ b/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py @@ -4,20 +4,26 @@ Rate LImiting with radius Bridge Mode Scenario import allure import pytest +from configuration import RATE_LIMITING_RADIUS_SERVER_DATA +from configuration import RATE_LIMITING_RADIUS_ACCOUNTING_DATA pytestmark = [pytest.mark.regression, pytest.mark.rate_limiting_with_radius, pytest.mark.bridge] + setup_params_general = { "mode": "BRIDGE", "ssid_modes": { - "wpa2_enterprise_rate": [ + "wpa2_enterprise": [ {"ssid_name": "ssid_wpa2_2g_br", "appliedRadios": ["2G"], "security_key": "something", "rate-limit": { "ingress-rate": 50, "egress-rate": 50 - } + }, + "radius_auth_data": RATE_LIMITING_RADIUS_SERVER_DATA, + "radius_acc_data" : RATE_LIMITING_RADIUS_ACCOUNTING_DATA + }, {"ssid_name": "ssid_wpa2_5g_br", "appliedRadios": ["5G"], @@ -42,11 +48,11 @@ setup_params_general = { @pytest.mark.usefixtures("setup_profiles") class TestRateLimitingWithRadiusBridge(object): - @pytest.mark.wpa2_enterprise_rate + @pytest.mark.wpa2_enterprise @pytest.mark.twog @allure.testcase(url="https://telecominfraproject.atlassian.net/browse/WIFI-5849", name="WIFI-5849") - def test_radius_server_2g_up(self, lf_test, lf_tools, rate_radius_info,rate_radius_accounting_info, station_names_twog): - profile_data = setup_params_general["ssid_modes"]["wpa2_enterprise_rate"][0] + def test_radius_server_2g_up(self, lf_test, lf_tools, rate_radius_info, rate_radius_accounting_info, station_names_twog): + profile_data = setup_params_general["ssid_modes"]["wpa2_enterprise"][0] ssid_name = profile_data["ssid_name"] mode = "BRIDGE" vlan = 1 @@ -72,4 +78,4 @@ class TestRateLimitingWithRadiusBridge(object): lf_tools.attach_report_graphs(report_name=report_name) print("Test Completed... Cleaning up Stations") - assert True \ No newline at end of file + assert True \ No newline at end of file From eaa76836346ac34c423159f81d8bc170a19c54a4 Mon Sep 17 00:00:00 2001 From: Nikita Yadav Date: Sat, 4 Dec 2021 23:06:58 +0530 Subject: [PATCH 09/27] added method which take radius data from param --- tests/fixtures_2x.py | 52 ++++++++++++++++++++++---------------------- 1 file changed, 26 insertions(+), 26 deletions(-) diff --git a/tests/fixtures_2x.py b/tests/fixtures_2x.py index 2d255fb73..38e8c9faa 100644 --- a/tests/fixtures_2x.py +++ b/tests/fixtures_2x.py @@ -357,15 +357,17 @@ 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,rate_radius_info, rate_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) vlan_id, mode = 0, 0 parameter = dict(param) + print("parameter", parameter) test_cases = {} profile_data = {} + var = "" if parameter['mode'] not in ["BRIDGE", "NAT", "VLAN"]: print("Invalid Mode: ", parameter['mode']) @@ -392,6 +394,7 @@ class Fixtures_2x: data = parameter["ssid_modes"][i][j] profile_data["ssid"][i].append(data) lf_dut_data = [] + for mode in profile_data['ssid']: if mode == "open": for j in profile_data["ssid"][mode]: @@ -425,6 +428,7 @@ class Fixtures_2x: test_cases["wpa_2g"] = False if mode == "wpa2_personal": for j in profile_data["ssid"][mode]: + if mode in get_markers.keys() and get_markers[mode]: try: if j["appliedRadios"].__contains__("2G"): @@ -486,6 +490,13 @@ class Fixtures_2x: # EAP SSID Modes if mode == "wpa2_enterprise": for j in profile_data["ssid"][mode]: + if "radius_auth_data" in j: + print("yes") + var = True + else: + print("no") + var = False + if mode in get_markers.keys() and get_markers[mode]: try: if j["appliedRadios"].__contains__("2G"): @@ -494,31 +505,20 @@ class Fixtures_2x: lf_dut_data.append(j) j["appliedRadios"] = list(set(j["appliedRadios"])) j['security'] = 'wpa2' - RADIUS_SERVER_DATA = radius_info - RADIUS_ACCOUNTING_DATA = radius_accounting_info - creates_profile = instantiate_profile_obj.add_ssid(ssid_data=j, radius=True, - radius_auth_data=RADIUS_SERVER_DATA, - radius_accounting_data=RADIUS_ACCOUNTING_DATA) - test_cases["wpa_2g"] = True - except Exception as e: - print(e) - test_cases["wpa2_personal"] = False - if mode == "wpa2_enterprise_rate": - for j in profile_data["ssid"][mode]: - if mode in get_markers.keys() and get_markers[mode]: - try: - if j["appliedRadios"].__contains__("2G"): - lf_dut_data.append(j) - if j["appliedRadios"].__contains__("5G"): - lf_dut_data.append(j) - j["appliedRadios"] = list(set(j["appliedRadios"])) - j['security'] = 'wpa2' - RADIUS_SERVER_DATA = rate_radius_accounting_info - RADIUS_ACCOUNTING_DATA = rate_radius_info - creates_profile = instantiate_profile_obj.add_ssid(ssid_data=j, radius=True, - radius_auth_data=RADIUS_SERVER_DATA, - radius_accounting_data=RADIUS_ACCOUNTING_DATA) - test_cases["wpa_2g"] = True + if var : + RADIUS_SERVER_DATA = j["radius_auth_data"] + RADIUS_ACCOUNTING_DATA = j['radius_acc_data'] + creates_profile = instantiate_profile_obj.add_ssid(ssid_data=j, radius=True, + radius_auth_data=RADIUS_SERVER_DATA, + radius_accounting_data=RADIUS_ACCOUNTING_DATA) + test_cases["wpa_2g"] = True + else: + RADIUS_SERVER_DATA = radius_info + RADIUS_ACCOUNTING_DATA = radius_accounting_info + creates_profile = instantiate_profile_obj.add_ssid(ssid_data=j, radius=True, + radius_auth_data=RADIUS_SERVER_DATA, + radius_accounting_data=RADIUS_ACCOUNTING_DATA) + test_cases["wpa_2g"] = True except Exception as e: print(e) test_cases["wpa2_personal"] = False From 40d42bd3348400e8b0cdf0743c6614d9c2c1d500 Mon Sep 17 00:00:00 2001 From: Nikita Yadav Date: Sat, 4 Dec 2021 23:08:57 +0530 Subject: [PATCH 10/27] removed rate radius data from fixture --- tests/e2e/basic/conftest.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/e2e/basic/conftest.py b/tests/e2e/basic/conftest.py index 9c9c3c593..8beea193f 100644 --- a/tests/e2e/basic/conftest.py +++ b/tests/e2e/basic/conftest.py @@ -49,7 +49,7 @@ def create_lanforge_chamberview_dut(lf_tools): @pytest.fixture(scope="class") def setup_profiles(request, setup_controller, testbed, get_equipment_ref, fixtures_ver, reset_scenario_lf, instantiate_profile, get_markers, create_lanforge_chamberview_dut, lf_tools, - get_security_flags, get_configuration, radius_info, get_apnos, radius_accounting_info, rate_radius_info, rate_radius_accounting_info,): + get_security_flags, get_configuration, radius_info, get_apnos, radius_accounting_info): param = dict(request.param) # VLAN Setup @@ -79,7 +79,7 @@ def setup_profiles(request, setup_controller, testbed, get_equipment_ref, fixtur instantiate_profile, get_markers, create_lanforge_chamberview_dut, lf_tools, get_security_flags, get_configuration, radius_info, get_apnos, - radius_accounting_info, rate_radius_info, rate_radius_accounting_info) + radius_accounting_info) yield return_var From 12237556157ef6a863b528cf7b3e7f45f27d087a Mon Sep 17 00:00:00 2001 From: Nikita Yadav Date: Sat, 4 Dec 2021 23:11:04 +0530 Subject: [PATCH 11/27] removed rate marker from get security flag --- tests/conftest.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/conftest.py b/tests/conftest.py index 3839d05ab..a0805abfe 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -496,7 +496,7 @@ def get_security_flags(): # Add more classifications as we go security = ["open", "wpa", "wep", "wpa2_personal", "wpa3_personal", "wpa3_personal_mixed", "wpa_wpa2_enterprise_mixed", "wpa2_eap", "wpa2_only_eap", - "wpa_wpa2_personal_mixed", "wpa_enterprise", "wpa2_enterprise","wpa2_enterprise_rate", "wpa3_enterprise_mixed", + "wpa_wpa2_personal_mixed", "wpa_enterprise", "wpa2_enterprise", "wpa3_enterprise_mixed", "wpa3_enterprise", "twog", "fiveg", "radius"] yield security From 238c06529d285cd686e5355de9962aaedfa32865 Mon Sep 17 00:00:00 2001 From: Nikita Yadav Date: Mon, 6 Dec 2021 18:26:51 +0530 Subject: [PATCH 12/27] added tescase wifi-3766 Signed-off-by: Nikita Yadav --- .../test_radius_limiting.py | 39 ++++++++++++++++++- 1 file changed, 37 insertions(+), 2 deletions(-) diff --git a/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py b/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py index 94a69213d..e16004149 100644 --- a/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py +++ b/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py @@ -50,8 +50,9 @@ class TestRateLimitingWithRadiusBridge(object): @pytest.mark.wpa2_enterprise @pytest.mark.twog + @pytest.mark.twog_upload @allure.testcase(url="https://telecominfraproject.atlassian.net/browse/WIFI-5849", name="WIFI-5849") - def test_radius_server_2g_up(self, lf_test, lf_tools, rate_radius_info, rate_radius_accounting_info, station_names_twog): + def test_radius_server_2g_upload(self, lf_test, lf_tools, rate_radius_info, rate_radius_accounting_info, station_names_twog): profile_data = setup_params_general["ssid_modes"]["wpa2_enterprise"][0] ssid_name = profile_data["ssid_name"] mode = "BRIDGE" @@ -70,12 +71,46 @@ class TestRateLimitingWithRadiusBridge(object): station_name=station_names_twog, ieee80211w=0, vlan_id=vlan, cleanup=False) print(passes) if passes: - wct_obj = lf_test.wifi_capacity(instance_name="Test_Radius_2g", mode=mode, vlan_id=vlan, + wct_obj = lf_test.wifi_capacity(instance_name="Test_Radius_2g_up", mode=mode, vlan_id=vlan, download_rate="0bps", batch_size="1", upload_rate="1Gbps", protocol="TCP-IPv4", duration="60000") report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + lf_tools.attach_report_graphs(report_name=report_name) + print("Test Completed... Cleaning up Stations") + assert True + + @pytest.mark.wpa2_enterprise + @pytest.mark.twog + @pytest.mark.twog_download + @allure.testcase(url="https://telecominfraproject.atlassian.net/browse/WIFI-3766", name="WIFI-3766") + def test_radius_server_2g_download(self, lf_test, lf_tools, rate_radius_info, rate_radius_accounting_info, + station_names_twog): + profile_data = setup_params_general["ssid_modes"]["wpa2_enterprise"][0] + ssid_name = profile_data["ssid_name"] + mode = "BRIDGE" + vlan = 1 + security = "wpa2" + band = "twog" + eap = "TTLS" + print("authentication", rate_radius_info) + print("accounting", rate_radius_accounting_info) + ttls_passwd = rate_radius_info["password"] + identity = rate_radius_info['user'] + allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"])) + passes = lf_test.EAP_Connect(ssid=ssid_name, security=security, + mode=mode, band=band, + eap=eap, ttls_passwd=ttls_passwd, identity=identity, + station_name=station_names_twog, ieee80211w=0, vlan_id=vlan, cleanup=False) + print(passes) + if passes: + wct_obj = lf_test.wifi_capacity(instance_name="Test_Radius_2g_down", mode=mode, vlan_id=vlan, + download_rate="1Gbps", batch_size="1", + upload_rate="0bps", protocol="TCP-IPv4", duration="60000") + + report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + lf_tools.attach_report_graphs(report_name=report_name) print("Test Completed... Cleaning up Stations") assert True \ No newline at end of file From 490f4bd38bfb37dd4fb50257f18057ec142d211b Mon Sep 17 00:00:00 2001 From: Nikita Yadav Date: Mon, 6 Dec 2021 18:38:59 +0530 Subject: [PATCH 13/27] added tescase wifi-5851 Signed-off-by: Nikita Yadav --- .../test_radius_limiting.py | 36 ++++++++++++++++++- 1 file changed, 35 insertions(+), 1 deletion(-) diff --git a/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py b/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py index e16004149..64260aee5 100644 --- a/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py +++ b/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py @@ -84,7 +84,7 @@ class TestRateLimitingWithRadiusBridge(object): @pytest.mark.wpa2_enterprise @pytest.mark.twog @pytest.mark.twog_download - @allure.testcase(url="https://telecominfraproject.atlassian.net/browse/WIFI-3766", name="WIFI-3766") + @allure.testcase(url="https://telecominfraproject.atlassian.net/browse/WIFI-5850", name="WIFI-5850") def test_radius_server_2g_download(self, lf_test, lf_tools, rate_radius_info, rate_radius_accounting_info, station_names_twog): profile_data = setup_params_general["ssid_modes"]["wpa2_enterprise"][0] @@ -111,6 +111,40 @@ class TestRateLimitingWithRadiusBridge(object): report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + lf_tools.attach_report_graphs(report_name=report_name) + print("Test Completed... Cleaning up Stations") + assert True + + @pytest.mark.wpa2_enterprise + @pytest.mark.twog + @pytest.mark.twog_upload_higher + @allure.testcase(url="https://telecominfraproject.atlassian.net/browse/WIFI-5851", name="WIFI-5851") + def test_radius_server_2g_upload_higher_rate(self, lf_test, lf_tools, rate_radius_info, rate_radius_accounting_info, + station_names_twog): + profile_data = setup_params_general["ssid_modes"]["wpa2_enterprise"][0] + ssid_name = profile_data["ssid_name"] + mode = "BRIDGE" + vlan = 1 + security = "wpa2" + band = "twog" + eap = "TTLS" + print("authentication", rate_radius_info) + print("accounting", rate_radius_accounting_info) + ttls_passwd = rate_radius_info["password"] + identity = rate_radius_info['user'] + allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"])) + passes = lf_test.EAP_Connect(ssid=ssid_name, security=security, + mode=mode, band=band, + eap=eap, ttls_passwd=ttls_passwd, identity=identity, + station_name=station_names_twog, ieee80211w=0, vlan_id=vlan, cleanup=False) + print(passes) + if passes: + wct_obj = lf_test.wifi_capacity(instance_name="Test_Radius_2g_up_higher", mode=mode, vlan_id=vlan, + download_rate="0bps", batch_size="1", + upload_rate="2.488Gbps", protocol="TCP-IPv4", duration="60000") + + report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + lf_tools.attach_report_graphs(report_name=report_name) print("Test Completed... Cleaning up Stations") assert True \ No newline at end of file From c55e28841d2859a925c0a95e316a7abb646e0244 Mon Sep 17 00:00:00 2001 From: Nikita Yadav Date: Mon, 6 Dec 2021 18:52:40 +0530 Subject: [PATCH 14/27] added tescase wifi-5852 Signed-off-by: Nikita Yadav --- .../test_radius_limiting.py | 34 +++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py b/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py index 64260aee5..be9658313 100644 --- a/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py +++ b/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py @@ -145,6 +145,40 @@ class TestRateLimitingWithRadiusBridge(object): report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + lf_tools.attach_report_graphs(report_name=report_name) + print("Test Completed... Cleaning up Stations") + assert True + + @pytest.mark.wpa2_enterprise + @pytest.mark.twog + @pytest.mark.twog_upload_download + @allure.testcase(url="https://telecominfraproject.atlassian.net/browse/WIFI-5852", name="WIFI-5852") + def test_radius_server_2g_upload_download(self, lf_test, lf_tools, rate_radius_info, rate_radius_accounting_info, + station_names_twog): + profile_data = setup_params_general["ssid_modes"]["wpa2_enterprise"][0] + ssid_name = profile_data["ssid_name"] + mode = "BRIDGE" + vlan = 1 + security = "wpa2" + band = "twog" + eap = "TTLS" + print("authentication", rate_radius_info) + print("accounting", rate_radius_accounting_info) + ttls_passwd = rate_radius_info["password"] + identity = rate_radius_info['user'] + allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"])) + passes = lf_test.EAP_Connect(ssid=ssid_name, security=security, + mode=mode, band=band, + eap=eap, ttls_passwd=ttls_passwd, identity=identity, + station_name=station_names_twog, ieee80211w=0, vlan_id=vlan, cleanup=False) + print(passes) + if passes: + wct_obj = lf_test.wifi_capacity(instance_name="Test_Radius_2g_up_down", mode=mode, vlan_id=vlan, + download_rate="1Gbps", batch_size="1", + upload_rate="1Gbps", protocol="TCP-IPv4", duration="60000") + + report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + lf_tools.attach_report_graphs(report_name=report_name) print("Test Completed... Cleaning up Stations") assert True \ No newline at end of file From 2588fa919fab9d4be2af0425a14fbeb6758bf967 Mon Sep 17 00:00:00 2001 From: Nikita Yadav Date: Mon, 6 Dec 2021 19:08:46 +0530 Subject: [PATCH 15/27] added tescase wifi-5853 Signed-off-by: Nikita Yadav --- .../test_radius_limiting.py | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py b/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py index be9658313..8dc7037cf 100644 --- a/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py +++ b/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py @@ -150,17 +150,17 @@ class TestRateLimitingWithRadiusBridge(object): assert True @pytest.mark.wpa2_enterprise - @pytest.mark.twog - @pytest.mark.twog_upload_download - @allure.testcase(url="https://telecominfraproject.atlassian.net/browse/WIFI-5852", name="WIFI-5852") - def test_radius_server_2g_upload_download(self, lf_test, lf_tools, rate_radius_info, rate_radius_accounting_info, - station_names_twog): - profile_data = setup_params_general["ssid_modes"]["wpa2_enterprise"][0] + @pytest.mark.fiveg + @pytest.mark.twog_download + @allure.testcase(url="https://telecominfraproject.atlassian.net/browse/WIFI-5853", name="WIFI-5853") + def test_radius_server_fiveg_download(self, lf_test, lf_tools, rate_radius_info, rate_radius_accounting_info, + station_names_fiveg): + profile_data = setup_params_general["ssid_modes"]["wpa2_enterprise"][1] ssid_name = profile_data["ssid_name"] mode = "BRIDGE" vlan = 1 security = "wpa2" - band = "twog" + band = "fiveg" eap = "TTLS" print("authentication", rate_radius_info) print("accounting", rate_radius_accounting_info) @@ -170,12 +170,12 @@ class TestRateLimitingWithRadiusBridge(object): passes = lf_test.EAP_Connect(ssid=ssid_name, security=security, mode=mode, band=band, eap=eap, ttls_passwd=ttls_passwd, identity=identity, - station_name=station_names_twog, ieee80211w=0, vlan_id=vlan, cleanup=False) + station_name=station_names_fiveg, ieee80211w=0, vlan_id=vlan, cleanup=False) print(passes) if passes: - wct_obj = lf_test.wifi_capacity(instance_name="Test_Radius_2g_up_down", mode=mode, vlan_id=vlan, + wct_obj = lf_test.wifi_capacity(instance_name="Test_Radius_5g_down", mode=mode, vlan_id=vlan, download_rate="1Gbps", batch_size="1", - upload_rate="1Gbps", protocol="TCP-IPv4", duration="60000") + upload_rate="0bps", protocol="TCP-IPv4", duration="60000") report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] From 4395c654f76ba27f691827ec307575e22f15bd11 Mon Sep 17 00:00:00 2001 From: Nikita Yadav Date: Mon, 6 Dec 2021 19:14:31 +0530 Subject: [PATCH 16/27] added tescase wifi-5854 Signed-off-by: Nikita Yadav --- .../test_radius_limiting.py | 36 ++++++++++++++++++- 1 file changed, 35 insertions(+), 1 deletion(-) diff --git a/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py b/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py index 8dc7037cf..35a7bbb25 100644 --- a/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py +++ b/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py @@ -151,7 +151,7 @@ class TestRateLimitingWithRadiusBridge(object): @pytest.mark.wpa2_enterprise @pytest.mark.fiveg - @pytest.mark.twog_download + @pytest.mark.fiveg_download @allure.testcase(url="https://telecominfraproject.atlassian.net/browse/WIFI-5853", name="WIFI-5853") def test_radius_server_fiveg_download(self, lf_test, lf_tools, rate_radius_info, rate_radius_accounting_info, station_names_fiveg): @@ -179,6 +179,40 @@ class TestRateLimitingWithRadiusBridge(object): report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + lf_tools.attach_report_graphs(report_name=report_name) + print("Test Completed... Cleaning up Stations") + assert True + + @pytest.mark.wpa2_enterprise + @pytest.mark.fiveg + @pytest.mark.fiveg_upload + @allure.testcase(url="https://telecominfraproject.atlassian.net/browse/WIFI-5854", name="WIFI-5854") + def test_radius_server_fiveg_upload(self, lf_test, lf_tools, rate_radius_info, rate_radius_accounting_info, + station_names_fiveg): + profile_data = setup_params_general["ssid_modes"]["wpa2_enterprise"][1] + ssid_name = profile_data["ssid_name"] + mode = "BRIDGE" + vlan = 1 + security = "wpa2" + band = "fiveg" + eap = "TTLS" + print("authentication", rate_radius_info) + print("accounting", rate_radius_accounting_info) + ttls_passwd = rate_radius_info["password"] + identity = rate_radius_info['user'] + allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"])) + passes = lf_test.EAP_Connect(ssid=ssid_name, security=security, + mode=mode, band=band, + eap=eap, ttls_passwd=ttls_passwd, identity=identity, + station_name=station_names_fiveg, ieee80211w=0, vlan_id=vlan, cleanup=False) + print(passes) + if passes: + wct_obj = lf_test.wifi_capacity(instance_name="Test_Radius_5g_up", mode=mode, vlan_id=vlan, + download_rate="0bps", batch_size="1", + upload_rate="1Gbps", protocol="TCP-IPv4", duration="60000") + + report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + lf_tools.attach_report_graphs(report_name=report_name) print("Test Completed... Cleaning up Stations") assert True \ No newline at end of file From 56a50c384d50d82c22c461455578174ae8a02545 Mon Sep 17 00:00:00 2001 From: Nikita Yadav Date: Mon, 6 Dec 2021 20:41:45 +0530 Subject: [PATCH 17/27] added tescase wifi-5855 Signed-off-by: Nikita Yadav --- .../test_radius_limiting.py | 118 +++++++++++++++--- 1 file changed, 98 insertions(+), 20 deletions(-) diff --git a/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py b/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py index 35a7bbb25..c56847305 100644 --- a/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py +++ b/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py @@ -50,9 +50,9 @@ class TestRateLimitingWithRadiusBridge(object): @pytest.mark.wpa2_enterprise @pytest.mark.twog - @pytest.mark.twog_upload + @pytest.mark.twog_upload_per_ssid @allure.testcase(url="https://telecominfraproject.atlassian.net/browse/WIFI-5849", name="WIFI-5849") - def test_radius_server_2g_upload(self, lf_test, lf_tools, rate_radius_info, rate_radius_accounting_info, station_names_twog): + def test_radius_server_2g_upload_per_ssid(self, lf_test, lf_tools, rate_radius_info, rate_radius_accounting_info, station_names_twog): profile_data = setup_params_general["ssid_modes"]["wpa2_enterprise"][0] ssid_name = profile_data["ssid_name"] mode = "BRIDGE" @@ -71,9 +71,10 @@ class TestRateLimitingWithRadiusBridge(object): station_name=station_names_twog, ieee80211w=0, vlan_id=vlan, cleanup=False) print(passes) if passes: - wct_obj = lf_test.wifi_capacity(instance_name="Test_Radius_2g_up", mode=mode, vlan_id=vlan, + raw_lines = [["dl_rate_sel: Total Download Rate:"], ["ul_rate_sel: Per-Total Download Rate:"]] + wct_obj = lf_test.wifi_capacity(instance_name="Test_Radius_2g_up_per_ssid", mode=mode, vlan_id=vlan, download_rate="0bps", batch_size="1", - upload_rate="1Gbps", protocol="TCP-IPv4", duration="60000") + upload_rate="1Gbps", protocol="TCP-IPv4", duration="60000", raw_lines=raw_lines) report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] @@ -83,9 +84,9 @@ class TestRateLimitingWithRadiusBridge(object): @pytest.mark.wpa2_enterprise @pytest.mark.twog - @pytest.mark.twog_download + @pytest.mark.twog_download_perssid_persta @allure.testcase(url="https://telecominfraproject.atlassian.net/browse/WIFI-5850", name="WIFI-5850") - def test_radius_server_2g_download(self, lf_test, lf_tools, rate_radius_info, rate_radius_accounting_info, + def test_radius_server_2g_download_perssid_persta(self, lf_test, lf_tools, rate_radius_info, rate_radius_accounting_info, station_names_twog): profile_data = setup_params_general["ssid_modes"]["wpa2_enterprise"][0] ssid_name = profile_data["ssid_name"] @@ -105,9 +106,10 @@ class TestRateLimitingWithRadiusBridge(object): station_name=station_names_twog, ieee80211w=0, vlan_id=vlan, cleanup=False) print(passes) if passes: - wct_obj = lf_test.wifi_capacity(instance_name="Test_Radius_2g_down", mode=mode, vlan_id=vlan, + raw_lines = [["dl_rate_sel: Per-Station Download Rate:"], ["ul_rate_sel: Per-Station Download Rate:"]] + wct_obj = lf_test.wifi_capacity(instance_name="Test_Radius_2g_down_perssid_persta", mode=mode, vlan_id=vlan, download_rate="1Gbps", batch_size="1", - upload_rate="0bps", protocol="TCP-IPv4", duration="60000") + upload_rate="0bps", protocol="TCP-IPv4", duration="60000", raw_lines=raw_lines) report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] @@ -117,9 +119,9 @@ class TestRateLimitingWithRadiusBridge(object): @pytest.mark.wpa2_enterprise @pytest.mark.twog - @pytest.mark.twog_upload_higher + @pytest.mark.twog_upload_persta_perclient @allure.testcase(url="https://telecominfraproject.atlassian.net/browse/WIFI-5851", name="WIFI-5851") - def test_radius_server_2g_upload_higher_rate(self, lf_test, lf_tools, rate_radius_info, rate_radius_accounting_info, + def test_radius_server_2g_upload_persta_perclient_rate(self, lf_test, lf_tools, rate_radius_info, rate_radius_accounting_info, station_names_twog): profile_data = setup_params_general["ssid_modes"]["wpa2_enterprise"][0] ssid_name = profile_data["ssid_name"] @@ -139,9 +141,47 @@ class TestRateLimitingWithRadiusBridge(object): station_name=station_names_twog, ieee80211w=0, vlan_id=vlan, cleanup=False) print(passes) if passes: - wct_obj = lf_test.wifi_capacity(instance_name="Test_Radius_2g_up_higher", mode=mode, vlan_id=vlan, + raw_lines = [["dl_rate_sel: Per-Station Download Rate:"], ["ul_rate_sel: Per-Station Download Rate:"]] + wct_obj = lf_test.wifi_capacity(instance_name="Test_Radius_2g_up_per_per_client", mode=mode, vlan_id=vlan, download_rate="0bps", batch_size="1", - upload_rate="2.488Gbps", protocol="TCP-IPv4", duration="60000") + upload_rate="2.488Gbps", protocol="TCP-IPv4", duration="60000", raw_lines=raw_lines) + + report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + + lf_tools.attach_report_graphs(report_name=report_name) + print("Test Completed... Cleaning up Stations") + assert True + + @pytest.mark.wpa2_enterprise + @pytest.mark.twog + @pytest.mark.twog_upload_download_persta_perclient + @allure.testcase(url="https://telecominfraproject.atlassian.net/browse/WIFI-5852", name="WIFI-5852") + def test_radius_server_2g_upload_download_persta_perclient_rate(self, lf_test, lf_tools, rate_radius_info, + rate_radius_accounting_info, + station_names_twog): + profile_data = setup_params_general["ssid_modes"]["wpa2_enterprise"][0] + ssid_name = profile_data["ssid_name"] + mode = "BRIDGE" + vlan = 1 + security = "wpa2" + band = "twog" + eap = "TTLS" + print("authentication", rate_radius_info) + print("accounting", rate_radius_accounting_info) + ttls_passwd = rate_radius_info["password"] + identity = rate_radius_info['user'] + allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"])) + passes = lf_test.EAP_Connect(ssid=ssid_name, security=security, + mode=mode, band=band, + eap=eap, ttls_passwd=ttls_passwd, identity=identity, + station_name=station_names_twog, ieee80211w=0, vlan_id=vlan, cleanup=False) + print(passes) + if passes: + raw_lines = [["dl_rate_sel: Per-Station Download Rate:"], ["ul_rate_sel: Per-Station Download Rate:"]] + wct_obj = lf_test.wifi_capacity(instance_name="Test_Radius_2g_up_down_per_per_client", mode=mode, vlan_id=vlan, + download_rate="1Gbps", batch_size="1", + upload_rate="1Gbps", protocol="TCP-IPv4", duration="60000", + raw_lines=raw_lines) report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] @@ -151,9 +191,9 @@ class TestRateLimitingWithRadiusBridge(object): @pytest.mark.wpa2_enterprise @pytest.mark.fiveg - @pytest.mark.fiveg_download + @pytest.mark.fiveg_download_per_ssid @allure.testcase(url="https://telecominfraproject.atlassian.net/browse/WIFI-5853", name="WIFI-5853") - def test_radius_server_fiveg_download(self, lf_test, lf_tools, rate_radius_info, rate_radius_accounting_info, + def test_radius_server_fiveg_per_ssid_download(self, lf_test, lf_tools, rate_radius_info, rate_radius_accounting_info, station_names_fiveg): profile_data = setup_params_general["ssid_modes"]["wpa2_enterprise"][1] ssid_name = profile_data["ssid_name"] @@ -173,9 +213,10 @@ class TestRateLimitingWithRadiusBridge(object): station_name=station_names_fiveg, ieee80211w=0, vlan_id=vlan, cleanup=False) print(passes) if passes: - wct_obj = lf_test.wifi_capacity(instance_name="Test_Radius_5g_down", mode=mode, vlan_id=vlan, + raw_lines = [["dl_rate_sel: Total Download Rate:"], ["ul_rate_sel: Per-Total Download Rate:"]] + wct_obj = lf_test.wifi_capacity(instance_name="Test_Radius_5g_down_per_ssid", mode=mode, vlan_id=vlan, download_rate="1Gbps", batch_size="1", - upload_rate="0bps", protocol="TCP-IPv4", duration="60000") + upload_rate="0bps", protocol="TCP-IPv4", duration="60000",raw_lines=raw_lines) report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] @@ -185,9 +226,9 @@ class TestRateLimitingWithRadiusBridge(object): @pytest.mark.wpa2_enterprise @pytest.mark.fiveg - @pytest.mark.fiveg_upload + @pytest.mark.fiveg_upload_per_ssid @allure.testcase(url="https://telecominfraproject.atlassian.net/browse/WIFI-5854", name="WIFI-5854") - def test_radius_server_fiveg_upload(self, lf_test, lf_tools, rate_radius_info, rate_radius_accounting_info, + def test_radius_server_fiveg_per_ssid_upload(self, lf_test, lf_tools, rate_radius_info, rate_radius_accounting_info, station_names_fiveg): profile_data = setup_params_general["ssid_modes"]["wpa2_enterprise"][1] ssid_name = profile_data["ssid_name"] @@ -207,9 +248,46 @@ class TestRateLimitingWithRadiusBridge(object): station_name=station_names_fiveg, ieee80211w=0, vlan_id=vlan, cleanup=False) print(passes) if passes: - wct_obj = lf_test.wifi_capacity(instance_name="Test_Radius_5g_up", mode=mode, vlan_id=vlan, + raw_lines = [["dl_rate_sel: Total Download Rate:"], ["ul_rate_sel: Per-Station Download Rate:"]] + wct_obj = lf_test.wifi_capacity(instance_name="Test_Radius_5g_up_per_ssid", mode=mode, vlan_id=vlan, download_rate="0bps", batch_size="1", - upload_rate="1Gbps", protocol="TCP-IPv4", duration="60000") + upload_rate="1Gbps", protocol="TCP-IPv4", duration="60000", raw_lines=raw_lines) + + report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + + lf_tools.attach_report_graphs(report_name=report_name) + print("Test Completed... Cleaning up Stations") + assert True + + @pytest.mark.wpa2_enterprise + @pytest.mark.fiveg + @pytest.mark.fiveg_download_per_ssid_per_client + @allure.testcase(url="https://telecominfraproject.atlassian.net/browse/WIFI-5855", name="WIFI-5855") + def test_radius_server_fiveg_per_ssid_perclient_download(self, lf_test, lf_tools, rate_radius_info, rate_radius_accounting_info, + station_names_fiveg): + profile_data = setup_params_general["ssid_modes"]["wpa2_enterprise"][1] + ssid_name = profile_data["ssid_name"] + mode = "BRIDGE" + vlan = 1 + security = "wpa2" + band = "fiveg" + eap = "TTLS" + print("authentication", rate_radius_info) + print("accounting", rate_radius_accounting_info) + ttls_passwd = rate_radius_info["password"] + identity = rate_radius_info['user'] + allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"])) + passes = lf_test.EAP_Connect(ssid=ssid_name, security=security, + mode=mode, band=band, + eap=eap, ttls_passwd=ttls_passwd, identity=identity, + station_name=station_names_fiveg, ieee80211w=0, vlan_id=vlan, cleanup=False) + print(passes) + if passes: + raw_lines = [["dl_rate_sel: Per-Station Download Rate:"], ["ul_rate_sel: Per-Station Download Rate:"]] + wct_obj = lf_test.wifi_capacity(instance_name="Test_Radius_5g_down_per_ssid_perclient", mode=mode, vlan_id=vlan, + download_rate="1Gbps", batch_size="1", + upload_rate="0bps", protocol="TCP-IPv4", duration="60000", + raw_lines=raw_lines) report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] From 32fdb2302eb78c6dd06bb3bcf6c0978817594eda Mon Sep 17 00:00:00 2001 From: Nikita Yadav Date: Mon, 6 Dec 2021 20:49:38 +0530 Subject: [PATCH 18/27] added tescase wifi-5856 Signed-off-by: Nikita Yadav --- .../test_radius_limiting.py | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py b/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py index c56847305..16bb62f72 100644 --- a/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py +++ b/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py @@ -291,6 +291,44 @@ class TestRateLimitingWithRadiusBridge(object): report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + lf_tools.attach_report_graphs(report_name=report_name) + print("Test Completed... Cleaning up Stations") + assert True + + @pytest.mark.wpa2_enterprise + @pytest.mark.fiveg + @pytest.mark.fiveg_upstream_per_ssid_per_client + @allure.testcase(url="https://telecominfraproject.atlassian.net/browse/WIFI-5856", name="WIFI-5856") + def test_radius_server_fiveg_per_ssid_perclient_upstream(self, lf_test, lf_tools, rate_radius_info, + rate_radius_accounting_info, + station_names_fiveg): + profile_data = setup_params_general["ssid_modes"]["wpa2_enterprise"][1] + ssid_name = profile_data["ssid_name"] + mode = "BRIDGE" + vlan = 1 + security = "wpa2" + band = "fiveg" + eap = "TTLS" + print("authentication", rate_radius_info) + print("accounting", rate_radius_accounting_info) + ttls_passwd = rate_radius_info["password"] + identity = rate_radius_info['user'] + allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"])) + passes = lf_test.EAP_Connect(ssid=ssid_name, security=security, + mode=mode, band=band, + eap=eap, ttls_passwd=ttls_passwd, identity=identity, + station_name=station_names_fiveg, ieee80211w=0, vlan_id=vlan, cleanup=False) + print(passes) + if passes: + raw_lines = [["dl_rate_sel: Per-Station Download Rate:"], ["ul_rate_sel: Per-Station Download Rate:"]] + wct_obj = lf_test.wifi_capacity(instance_name="Test_Radius_5g_upstream_per_ssid_perclient", mode=mode, + vlan_id=vlan, + download_rate="0bps", batch_size="1", + upload_rate="1Gbps", protocol="TCP-IPv4", duration="60000", + raw_lines=raw_lines) + + report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + lf_tools.attach_report_graphs(report_name=report_name) print("Test Completed... Cleaning up Stations") assert True \ No newline at end of file From 4f82889111d1ae7ace98ce58d055e16c34412ce9 Mon Sep 17 00:00:00 2001 From: Nikita Yadav Date: Mon, 6 Dec 2021 20:53:49 +0530 Subject: [PATCH 19/27] added tescase wifi-5857 Signed-off-by: Nikita Yadav --- .../test_radius_limiting.py | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py b/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py index 16bb62f72..39610919f 100644 --- a/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py +++ b/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py @@ -329,6 +329,44 @@ class TestRateLimitingWithRadiusBridge(object): report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + lf_tools.attach_report_graphs(report_name=report_name) + print("Test Completed... Cleaning up Stations") + assert True + + @pytest.mark.wpa2_enterprise + @pytest.mark.fiveg + @pytest.mark.fiveg_upstream__downstream_per_ssid_per_client + @allure.testcase(url="https://telecominfraproject.atlassian.net/browse/WIFI-5857", name="WIFI-5857") + def test_radius_server_fiveg_per_ssid_perclient_upstream_downstream(self, lf_test, lf_tools, rate_radius_info, + rate_radius_accounting_info, + station_names_fiveg): + profile_data = setup_params_general["ssid_modes"]["wpa2_enterprise"][1] + ssid_name = profile_data["ssid_name"] + mode = "BRIDGE" + vlan = 1 + security = "wpa2" + band = "fiveg" + eap = "TTLS" + print("authentication", rate_radius_info) + print("accounting", rate_radius_accounting_info) + ttls_passwd = rate_radius_info["password"] + identity = rate_radius_info['user'] + allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"])) + passes = lf_test.EAP_Connect(ssid=ssid_name, security=security, + mode=mode, band=band, + eap=eap, ttls_passwd=ttls_passwd, identity=identity, + station_name=station_names_fiveg, ieee80211w=0, vlan_id=vlan, cleanup=False) + print(passes) + if passes: + raw_lines = [["dl_rate_sel: Per-Station Download Rate:"], ["ul_rate_sel: Per-Station Download Rate:"]] + wct_obj = lf_test.wifi_capacity(instance_name="Test_Radius_5g_upstream_downstream_per_ssid_perclient", mode=mode, + vlan_id=vlan, + download_rate="1Gbps", batch_size="1", + upload_rate="1Gbps", protocol="TCP-IPv4", duration="60000", + raw_lines=raw_lines) + + report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + lf_tools.attach_report_graphs(report_name=report_name) print("Test Completed... Cleaning up Stations") assert True \ No newline at end of file From 354f7fac51d210b0841b64896fa1a8e6d2bb4342 Mon Sep 17 00:00:00 2001 From: Nikita Yadav Date: Mon, 6 Dec 2021 21:03:21 +0530 Subject: [PATCH 20/27] added tescase wifi-5858 Signed-off-by: Nikita Yadav --- .../test_radius_limiting.py | 39 ++++++++++++++++++- 1 file changed, 38 insertions(+), 1 deletion(-) diff --git a/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py b/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py index 39610919f..68e7043a9 100644 --- a/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py +++ b/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py @@ -369,4 +369,41 @@ class TestRateLimitingWithRadiusBridge(object): lf_tools.attach_report_graphs(report_name=report_name) print("Test Completed... Cleaning up Stations") - assert True \ No newline at end of file + assert True + + @pytest.mark.wpa2_enterprise + @pytest.mark.twog + @pytest.mark.twog_per_ssid + @allure.testcase(url="https://telecominfraproject.atlassian.net/browse/WIFI-5858", name="WIFI-5858") + def test_radius_server_2g_per_ssid(self, lf_test, lf_tools, rate_radius_info, rate_radius_accounting_info, + station_names_twog): + profile_data = setup_params_general["ssid_modes"]["wpa2_enterprise"][0] + ssid_name = profile_data["ssid_name"] + mode = "BRIDGE" + vlan = 1 + security = "wpa2" + band = "twog" + eap = "TTLS" + print("authentication", rate_radius_info) + print("accounting", rate_radius_accounting_info) + ttls_passwd = rate_radius_info["password"] + identity = rate_radius_info['user'] + allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"])) + passes = lf_test.EAP_Connect(ssid=ssid_name, security=security, + mode=mode, band=band, + eap=eap, ttls_passwd=ttls_passwd, identity=identity, + station_name=station_names_twog, ieee80211w=0, vlan_id=vlan, cleanup=False) + print(passes) + if passes: + raw_lines = [["dl_rate_sel: Total Download Rate:"], ["ul_rate_sel: Per-Total Download Rate:"]] + wct_obj = lf_test.wifi_capacity(instance_name="Test_Radius_2g_per_ssid", mode=mode, vlan_id=vlan, + download_rate="0bps", batch_size="1", + upload_rate="1Gbps", protocol="TCP and UDP IPv4", duration="60000", + raw_lines=raw_lines) + + report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + + lf_tools.attach_report_graphs(report_name=report_name) + print("Test Completed... Cleaning up Stations") + assert True + From 2701f2754d8e87fd97190f9604d0a53e8b69e874 Mon Sep 17 00:00:00 2001 From: Nikita Yadav Date: Mon, 6 Dec 2021 21:15:03 +0530 Subject: [PATCH 21/27] added tescase wifi-5860 Signed-off-by: Nikita Yadav --- .../test_radius_limiting.py | 38 ++++++++++++++++++- 1 file changed, 37 insertions(+), 1 deletion(-) diff --git a/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py b/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py index 68e7043a9..62cbee60e 100644 --- a/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py +++ b/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py @@ -395,7 +395,7 @@ class TestRateLimitingWithRadiusBridge(object): station_name=station_names_twog, ieee80211w=0, vlan_id=vlan, cleanup=False) print(passes) if passes: - raw_lines = [["dl_rate_sel: Total Download Rate:"], ["ul_rate_sel: Per-Total Download Rate:"]] + raw_lines = [["dl_rate_sel: Total Download Rate:"], ["ul_rate_sel: Total Download Rate:"]] wct_obj = lf_test.wifi_capacity(instance_name="Test_Radius_2g_per_ssid", mode=mode, vlan_id=vlan, download_rate="0bps", batch_size="1", upload_rate="1Gbps", protocol="TCP and UDP IPv4", duration="60000", @@ -407,3 +407,39 @@ class TestRateLimitingWithRadiusBridge(object): print("Test Completed... Cleaning up Stations") assert True + @pytest.mark.wpa2_enterprise + @pytest.mark.fiveg + @pytest.mark.fiveg_per_ssid + @allure.testcase(url="https://telecominfraproject.atlassian.net/browse/WIFI-5860", name="WIFI-5860") + def test_radius_server_fiveg_per_ssid(self, lf_test, lf_tools, rate_radius_info, rate_radius_accounting_info, + station_names_fiveg): + profile_data = setup_params_general["ssid_modes"]["wpa2_enterprise"][1] + ssid_name = profile_data["ssid_name"] + mode = "BRIDGE" + vlan = 1 + security = "wpa2" + band = "fiveg" + eap = "TTLS" + print("authentication", rate_radius_info) + print("accounting", rate_radius_accounting_info) + ttls_passwd = rate_radius_info["password"] + identity = rate_radius_info['user'] + allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"])) + passes = lf_test.EAP_Connect(ssid=ssid_name, security=security, + mode=mode, band=band, + eap=eap, ttls_passwd=ttls_passwd, identity=identity, + station_name=station_names_fiveg, ieee80211w=0, vlan_id=vlan, cleanup=False) + print(passes) + if passes: + raw_lines = [["dl_rate_sel: Total Download Rate:"], ["ul_rate_sel: Per-Station Upload Rate:"]] + wct_obj = lf_test.wifi_capacity(instance_name="Test_Radius_5g_per_ssid", mode=mode, vlan_id=vlan, + download_rate="1Gbps", batch_size="1", + upload_rate="0bps", protocol="TCP-IPv4", duration="60000", + raw_lines=raw_lines) + + report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + + lf_tools.attach_report_graphs(report_name=report_name) + print("Test Completed... Cleaning up Stations") + assert True + From 6ed89e1a8eeca8f850c4ccdb51c9c21f194d59f2 Mon Sep 17 00:00:00 2001 From: Nikita Yadav Date: Mon, 6 Dec 2021 21:25:42 +0530 Subject: [PATCH 22/27] added tescase wifi-5862 Signed-off-by: Nikita Yadav --- .../test_radius_limiting.py | 36 +++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py b/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py index 62cbee60e..77e9caefb 100644 --- a/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py +++ b/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py @@ -443,3 +443,39 @@ class TestRateLimitingWithRadiusBridge(object): print("Test Completed... Cleaning up Stations") assert True + @pytest.mark.wpa2_enterprise + @pytest.mark.twog + @pytest.mark.twog_per_ssid_per_client + @allure.testcase(url="https://telecominfraproject.atlassian.net/browse/WIFI-5862", name="WIFI-5862") + def test_radius_server_2g_per_ssid_per_client(self, lf_test, lf_tools, rate_radius_info, rate_radius_accounting_info, + station_names_twog): + profile_data = setup_params_general["ssid_modes"]["wpa2_enterprise"][0] + ssid_name = profile_data["ssid_name"] + mode = "BRIDGE" + vlan = 1 + security = "wpa2" + band = "twog" + eap = "TTLS" + print("authentication", rate_radius_info) + print("accounting", rate_radius_accounting_info) + ttls_passwd = rate_radius_info["password"] + identity = rate_radius_info['user'] + allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"])) + passes = lf_test.EAP_Connect(ssid=ssid_name, security=security, + mode=mode, band=band, + eap=eap, ttls_passwd=ttls_passwd, identity=identity, + station_name=station_names_twog, ieee80211w=0, vlan_id=vlan, cleanup=False) + print(passes) + if passes: + raw_lines = [["dl_rate_sel: Per-Station Download Rate:"], ["ul_rate_sel: Per-Station Upload Rate:"]] + wct_obj = lf_test.wifi_capacity(instance_name="Test_Radius_2g_per_ssid_per_client", mode=mode, vlan_id=vlan, + download_rate="1Gbps", batch_size="1", + upload_rate="1Gbps", protocol="TCP and UDP IPv4", duration="60000", + raw_lines=raw_lines) + + report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + + lf_tools.attach_report_graphs(report_name=report_name) + print("Test Completed... Cleaning up Stations") + assert True + From c81d4f84ae337d95b85c1d363109650a23a2ea6f Mon Sep 17 00:00:00 2001 From: Nikita Yadav Date: Mon, 6 Dec 2021 21:42:03 +0530 Subject: [PATCH 23/27] added tescase wifi-5864 Signed-off-by: Nikita Yadav --- .../test_radius_limiting.py | 35 +++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py b/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py index 77e9caefb..31104b3f4 100644 --- a/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py +++ b/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py @@ -479,3 +479,38 @@ class TestRateLimitingWithRadiusBridge(object): print("Test Completed... Cleaning up Stations") assert True + @pytest.mark.wpa2_enterprise + @pytest.mark.fiveg + @pytest.mark.fiveg_per_ssid_per_client + @allure.testcase(url="https://telecominfraproject.atlassian.net/browse/WIFI-5864", name="WIFI-5864") + def test_radius_server_fiveg_per_ssid_per_client(self, lf_test, lf_tools, rate_radius_info, rate_radius_accounting_info, + station_names_fiveg): + profile_data = setup_params_general["ssid_modes"]["wpa2_enterprise"][1] + ssid_name = profile_data["ssid_name"] + mode = "BRIDGE" + vlan = 1 + security = "wpa2" + band = "fiveg" + eap = "TTLS" + print("authentication", rate_radius_info) + print("accounting", rate_radius_accounting_info) + ttls_passwd = rate_radius_info["password"] + identity = rate_radius_info['user'] + allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"])) + passes = lf_test.EAP_Connect(ssid=ssid_name, security=security, + mode=mode, band=band, + eap=eap, ttls_passwd=ttls_passwd, identity=identity, + station_name=station_names_fiveg, ieee80211w=0, vlan_id=vlan, cleanup=False) + print(passes) + if passes: + raw_lines = [["dl_rate_sel: Per-Station Download Rate:"], ["ul_rate_sel: Per-Station Upload Rate:"]] + wct_obj = lf_test.wifi_capacity(instance_name="Test_Radius_5g_per_ssid_per_client", mode=mode, vlan_id=vlan, + download_rate="1Gbps", batch_size="1", + upload_rate="0bps", protocol="TCP and UDP IPv4", duration="60000", + raw_lines=raw_lines) + + report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + + lf_tools.attach_report_graphs(report_name=report_name) + print("Test Completed... Cleaning up Stations") + assert True From df2407f2efdcfd6192d65c2ed0cca94622e26cd7 Mon Sep 17 00:00:00 2001 From: Nikita Yadav Date: Mon, 6 Dec 2021 22:00:52 +0530 Subject: [PATCH 24/27] added tescase wifi-5868 Signed-off-by: Nikita Yadav --- .../test_radius_limiting.py | 37 +++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py b/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py index 31104b3f4..21f18556e 100644 --- a/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py +++ b/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py @@ -514,3 +514,40 @@ class TestRateLimitingWithRadiusBridge(object): lf_tools.attach_report_graphs(report_name=report_name) print("Test Completed... Cleaning up Stations") assert True + + @pytest.mark.wpa2_enterprise + @pytest.mark.twog + @pytest.mark.twog_per_ssid_down + @allure.testcase(url="https://telecominfraproject.atlassian.net/browse/WIFI-5868", name="WIFI-5868") + def test_radius_server_2g_per_ssid_downstream(self, lf_test, lf_tools, rate_radius_info, + rate_radius_accounting_info, + station_names_twog): + profile_data = setup_params_general["ssid_modes"]["wpa2_enterprise"][0] + ssid_name = profile_data["ssid_name"] + mode = "BRIDGE" + vlan = 1 + security = "wpa2" + band = "twog" + eap = "TTLS" + print("authentication", rate_radius_info) + print("accounting", rate_radius_accounting_info) + ttls_passwd = rate_radius_info["password"] + identity = rate_radius_info['user'] + allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"])) + passes = lf_test.EAP_Connect(ssid=ssid_name, security=security, + mode=mode, band=band, + eap=eap, ttls_passwd=ttls_passwd, identity=identity, + station_name=station_names_twog, ieee80211w=0, vlan_id=vlan, cleanup=False) + print(passes) + if passes: + raw_lines = [["dl_rate_sel: Total Download Rate:"], ["ul_rate_sel: Total Upload Rate:"]] + wct_obj = lf_test.wifi_capacity(instance_name="Test_Radius_2g", mode=mode, vlan_id=vlan, + download_rate="1Gbps", batch_size="1", + upload_rate="0bps", protocol="TCP and UDP IPv4", duration="60000", + raw_lines=raw_lines) + + report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1] + + lf_tools.attach_report_graphs(report_name=report_name) + print("Test Completed... Cleaning up Stations") + assert True From 24d78e173ee7feeed5d014a3b68914f29b031113 Mon Sep 17 00:00:00 2001 From: Nikita Yadav Date: Mon, 6 Dec 2021 23:21:27 +0530 Subject: [PATCH 25/27] added rate radius in setup param --- .../rate_limiting_with_radius/test_radius_limiting.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py b/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py index 21f18556e..b383e8a38 100644 --- a/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py +++ b/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py @@ -31,7 +31,9 @@ setup_params_general = { "rate-limit": { "ingress-rate": 50, "egress-rate": 50 - } + }, + "radius_auth_data": RATE_LIMITING_RADIUS_SERVER_DATA, + "radius_acc_data" : RATE_LIMITING_RADIUS_ACCOUNTING_DATA }]}, "rf": {}, "radius": False From 3ae74aa01fa3f6c25b4bdef6cdaac2a637355c22 Mon Sep 17 00:00:00 2001 From: Nikita Yadav Date: Mon, 6 Dec 2021 23:23:59 +0530 Subject: [PATCH 26/27] added rate radius in setup params Signed-off-by: Nikita Yadav --- .../rate_limiting_with_radius/test_radius_limiting.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py b/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py index b383e8a38..e2023d805 100644 --- a/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py +++ b/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py @@ -34,7 +34,8 @@ setup_params_general = { }, "radius_auth_data": RATE_LIMITING_RADIUS_SERVER_DATA, "radius_acc_data" : RATE_LIMITING_RADIUS_ACCOUNTING_DATA - }]}, + } + ]}, "rf": {}, "radius": False } From b918ba5d21846cee15facc54fc0280ceed392687 Mon Sep 17 00:00:00 2001 From: Nikita Yadav Date: Mon, 6 Dec 2021 23:28:08 +0530 Subject: [PATCH 27/27] added rate radius data setup params Signed-off-by: Nikita Yadav --- .../rate_limiting_with_radius/test_radius_limiting.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py b/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py index e2023d805..a4060f2c1 100644 --- a/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py +++ b/tests/e2e/basic/validation_of_operating_modes/bridge_mode/rate_limiting_with_radius/test_radius_limiting.py @@ -35,7 +35,8 @@ setup_params_general = { "radius_auth_data": RATE_LIMITING_RADIUS_SERVER_DATA, "radius_acc_data" : RATE_LIMITING_RADIUS_ACCOUNTING_DATA } - ]}, + ] + }, "rf": {}, "radius": False }