Merge pull request #221 from Telecominfraproject/feature-wifi-3381

Feature wifi 3381
This commit is contained in:
Shivam Thakur
2021-10-19 11:49:13 -04:00
committed by GitHub
4 changed files with 1622 additions and 15 deletions

View File

@@ -40,7 +40,7 @@ from lf_rx_sensitivity_test import RxSensitivityTest
from lf_ap_auto_test import ApAutoTest
from csv_to_influx import CSVtoInflux
from influx2 import RecordInflux
#from lf_multipsk import MultiPsk
from lf_multipsk import MultiPsk
class RunTest:
@@ -231,7 +231,7 @@ class RunTest:
def wifi_capacity(self, mode="BRIDGE", vlan_id=100, batch_size="1,5,10,20,40,64,128",
instance_name="wct_instance", download_rate="1Gbps", influx_tags=[],
upload_rate="1Gbps", protocol="TCP-IPv4", duration="60000"):
upload_rate="1Gbps", protocol="TCP-IPv4", duration="60000", raw_lines=[]):
instance_name = ''.join(random.choices(string.ascii_uppercase + string.digits, k=S))
if mode == "BRIDGE":
upstream_port = self.upstream_port
@@ -242,6 +242,7 @@ class RunTest:
'''SINGLE WIFI CAPACITY using lf_wifi_capacity.py'''
wificapacity_obj = WiFiCapacityTest(lfclient_host=self.lanforge_ip,
lf_port=self.lanforge_port,
ssh_port=self.lf_ssh_port,
lf_user="lanforge",
lf_password="lanforge",
local_lf_report_dir=self.local_report_path,
@@ -264,7 +265,7 @@ class RunTest:
ssid=None,
enables=[],
disables=[],
raw_lines=[],
raw_lines=raw_lines,
raw_lines_file="",
sets=[])

View File

@@ -65,7 +65,7 @@ class TestRateLimitingBridge(object):
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_tcp_dl", mode=mode, vlan_id=vlan,
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_up", mode=mode, vlan_id=vlan,
download_rate="0Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000")
@@ -97,7 +97,7 @@ class TestRateLimitingBridge(object):
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_tcp_dl", mode=mode, vlan_id=vlan,
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_dw", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="0Gbps", protocol="UDP-IPv4", duration="60000")
@@ -129,7 +129,7 @@ class TestRateLimitingBridge(object):
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_tcp_dl", mode=mode, vlan_id=vlan,
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_up_dw", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000")
@@ -139,6 +139,131 @@ class TestRateLimitingBridge(object):
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.twog
@pytest.mark.disable_up_dw
def test_wpa2_personal_ssid_disable_up_dw_batch_size_125_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and bridge and wpa2_personal and twog and disable_up_dw"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
profile_data["rate-limit"][0] = 0
profile_data["rate-limit"][1] = 0
mode = "BRIDGE"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_up_dw_di", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-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_personal
@pytest.mark.twog
@pytest.mark.up_dw_per_client
def test_wpa2_personal_ssid_up_dw_per_client_batch_size_125_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and bridge and wpa2_personal and twog and up_dw_per_client"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
mode = "BRIDGE"
vlan = 1
raw_lines = [["dl_rate_sel: Per-Station Download Rate:"], ["ul_rate_sel: Per-Station Download Rate:"]]
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_bridge_up_dw_per_cl", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="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
@pytest.mark.wpa2_personal
@pytest.mark.twog
@pytest.mark.up_per_client
def test_wpa2_personal_ssid_up_per_client_batch_size_125_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and bridge and wpa2_personal and twog and up_per_client"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
mode = "BRIDGE"
vlan = 1
raw_lines = [["ul_rate_sel: Per-Station Download Rate:"]]
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_up_per_cl", mode=mode, vlan_id=vlan,
download_rate="0Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="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
@pytest.mark.wpa2_personal
@pytest.mark.twog
@pytest.mark.dw_per_client
def test_wpa2_personal_ssid_dw_per_client_batch_size_125_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and bridge and wpa2_personal and twog and dw_per_client"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
mode = "BRIDGE"
vlan = 1
raw_lines = [["dw_rate_sel: Per-Station Download Rate:"]]
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_dw_per_cl", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="0Gbps", protocol="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
@pytest.mark.wpa2_personal
@pytest.mark.fiveg
@pytest.mark.up
@@ -161,7 +286,7 @@ class TestRateLimitingBridge(object):
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_tcp_dl", mode=mode, vlan_id=vlan,
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_up_125", mode=mode, vlan_id=vlan,
download_rate="0Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000")
@@ -193,7 +318,7 @@ class TestRateLimitingBridge(object):
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_tcp_dl", mode=mode, vlan_id=vlan,
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_dw_125", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="0Gbps", protocol="UDP-IPv4", duration="60000")
@@ -225,7 +350,7 @@ class TestRateLimitingBridge(object):
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_tcp_dl", mode=mode, vlan_id=vlan,
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_up_dw_125", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000")
@@ -257,7 +382,7 @@ class TestRateLimitingBridge(object):
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=1, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_tcp_dl", mode=mode, vlan_id=vlan,
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_up_1", mode=mode, vlan_id=vlan,
download_rate="0Gbps", batch_size="1",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000")
@@ -289,7 +414,7 @@ class TestRateLimitingBridge(object):
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=1, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_tcp_dl", mode=mode, vlan_id=vlan,
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_tcp_dl_dw_1", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1",
upload_rate="0Gbps", protocol="UDP-IPv4", duration="60000")
@@ -321,7 +446,7 @@ class TestRateLimitingBridge(object):
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=1, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_tcp_dl", mode=mode, vlan_id=vlan,
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_tcp_dl_up_dw_1", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000")
@@ -353,7 +478,7 @@ class TestRateLimitingBridge(object):
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=1, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_tcp_dl", mode=mode, vlan_id=vlan,
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_up_1_5g", mode=mode, vlan_id=vlan,
download_rate="0Gbps", batch_size="1",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000")
@@ -385,7 +510,7 @@ class TestRateLimitingBridge(object):
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=1, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_tcp_dl", mode=mode, vlan_id=vlan,
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_dw_1_5g", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1",
upload_rate="0Gbps", protocol="UDP-IPv4", duration="60000")
@@ -417,7 +542,7 @@ class TestRateLimitingBridge(object):
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=1, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_tcp_dl", mode=mode, vlan_id=vlan,
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_up_dw_1_5g", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000")
@@ -426,3 +551,128 @@ class TestRateLimitingBridge(object):
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.fiveg
@pytest.mark.disable_up_dw
def test_wpa2_personal_ssid_disable_up_dw_batch_size_125_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and bridge and wpa2_personal and fiveg and disable_up_dw"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
profile_data["rate-limit"][0] = 0
profile_data["rate-limit"][1] = 0
mode = "BRIDGE"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_up_dw_di_5g", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-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_personal
@pytest.mark.fiveg
@pytest.mark.up_dw_per_client
def test_wpa2_personal_ssid_up_dw_per_client_batch_size_125_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and bridge and wpa2_personal and fiveg and up_dw_per_client"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
mode = "BRIDGE"
vlan = 1
raw_lines = [["dl_rate_sel: Per-Station Download Rate:"], ["ul_rate_sel: Per-Station Download Rate:"]]
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_per_cl_5g", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="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
@pytest.mark.wpa2_personal
@pytest.mark.fiveg
@pytest.mark.up_per_client
def test_wpa2_personal_ssid_up_per_client_batch_size_125_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and bridge and wpa2_personal and fiveg and up_per_client"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
mode = "BRIDGE"
vlan = 1
raw_lines = [["ul_rate_sel: Per-Station Download Rate:"]]
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_up_per_cl_5g", mode=mode, vlan_id=vlan,
download_rate="0Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="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
@pytest.mark.wpa2_personal
@pytest.mark.fiveg
@pytest.mark.dw_per_client
def test_wpa2_personal_ssid_dw_per_client_batch_size_125_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and bridge and wpa2_personal and fiveg and dw_per_client"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
mode = "BRIDGE"
vlan = 1
raw_lines = [["dw_rate_sel: Per-Station Download Rate:"]]
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_dw_per_cl_5g", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="0Gbps", protocol="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

View File

@@ -0,0 +1,678 @@
"""
Rate LImiting Nat Mode Scenario
"""
import allure
import pytest
pytestmark = [pytest.mark.rate_limiting, pytest.mark.nat, pytest.mark.general, pytest.mark.ucentral,
pytest.mark.regression]
setup_params_general = {
"mode": "NAT",
"ssid_modes": {
"wpa2_personal": [
{"ssid_name": "ssid_wpa2_2g_br",
"appliedRadios": ["2G"],
"security_key": "something",
"rate-limit": {
"ingress-rate": 100,
"egress-rate": 100
}
},
{"ssid_name": "ssid_wpa2_5g_br",
"appliedRadios": ["5G"],
"security_key": "something",
"rate-limit": {
"ingress-rate": 100,
"egress-rate": 100
}
}]},
"rf": {},
"radius": False
}
@allure.feature("Nat Mode Rate Limiting")
@pytest.mark.parametrize(
'setup_profiles',
[setup_params_general],
indirect=True,
scope="class"
)
@pytest.mark.usefixtures("setup_profiles")
class TestRateLimitingNat(object):
@pytest.mark.wpa2_personal
@pytest.mark.twog
@pytest.mark.up
@pytest.mark.batch_size_125
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_nat_ssid_up_batch_size_125_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and nat and wpa2_personal and twog and up and batch_size_125"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
mode = "NAT"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_nat_up", mode=mode, vlan_id=vlan,
download_rate="0Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-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_personal
@pytest.mark.twog
@pytest.mark.dw
@pytest.mark.batch_size_125
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_nat_ssid_dw_batch_size_125_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and nat and wpa2_personal and twog and dw and batch_size_125"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
mode = "NAT"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_nat_dw", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="0Gbps", protocol="UDP-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_personal
@pytest.mark.twog
@pytest.mark.up_dw
@pytest.mark.batch_size_125
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_nat_ssid_up_dw_batch_size_125_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and nat and wpa2_personal and twog and up_dw and batch_size_125"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
mode = "NAT"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_nat_up_dw", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-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_personal
@pytest.mark.twog
@pytest.mark.disable_up_dw
def test_wpa2_personal_nat_ssid_disable_up_dw_batch_size_125_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and nat and wpa2_personal and twog and disable_up_dw"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
profile_data["rate-limit"][0] = 0
profile_data["rate-limit"][1] = 0
mode = "NAT"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_nat_up_dw_di", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-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_personal
@pytest.mark.twog
@pytest.mark.up_dw_per_client
def test_wpa2_personal_nat_ssid_up_dw_per_client_batch_size_125_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and nat and wpa2_personal and twog and up_dw_per_client"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
mode = "NAT"
vlan = 1
raw_lines = [["dl_rate_sel: Per-Station Download Rate:"], ["ul_rate_sel: Per-Station Download Rate:"]]
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_nat_up_dw_per_cl", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="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
@pytest.mark.wpa2_personal
@pytest.mark.twog
@pytest.mark.up_per_client
def test_wpa2_personal_nat_ssid_up_per_client_batch_size_125_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and nat and wpa2_personal and twog and up_per_client"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
mode = "NAT"
vlan = 1
raw_lines = [["ul_rate_sel: Per-Station Download Rate:"]]
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_nat_up_per_cl", mode=mode, vlan_id=vlan,
download_rate="0Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="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
@pytest.mark.wpa2_personal
@pytest.mark.twog
@pytest.mark.dw_per_client
def test_wpa2_personal_nat_ssid_dw_per_client_batch_size_125_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and nat and wpa2_personal and twog and dw_per_client"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
mode = "NAT"
vlan = 1
raw_lines = [["dw_rate_sel: Per-Station Download Rate:"]]
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_nat_dw_per_cl", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="0Gbps", protocol="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
@pytest.mark.wpa2_personal
@pytest.mark.fiveg
@pytest.mark.up
@pytest.mark.batch_size_125
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_nat_ssid_up_batch_size_125_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and nat and wpa2_personal and fiveg and up and batch_size_125"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
mode = "NAT"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_nat_125", mode=mode, vlan_id=vlan,
download_rate="0Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-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_personal
@pytest.mark.fiveg
@pytest.mark.dw
@pytest.mark.batch_size_125
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_nat_ssid_dw_batch_size_125_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and nat and wpa2_personal and fiveg and dw and batch_size_125"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
mode = "NAT"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_nat_dw_125", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="0Gbps", protocol="UDP-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_personal
@pytest.mark.fiveg
@pytest.mark.up_dw
@pytest.mark.batch_size_125
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_nat_ssid_up_dw_batch_size_125_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and nat and wpa2_personal and fiveg and up_dw and batch_size_125"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
mode = "NAT"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_nat_up_dw_125", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-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_personal
@pytest.mark.twog
@pytest.mark.up
@pytest.mark.batch_size_1
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_nat_ssid_up_batch_size_1_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and nat and wpa2_personal and twog and up and batch_size_1"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
mode = "NAT"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=1, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_nat_up_1", mode=mode, vlan_id=vlan,
download_rate="0Gbps", batch_size="1",
upload_rate="1Gbps", protocol="UDP-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_personal
@pytest.mark.twog
@pytest.mark.dw
@pytest.mark.batch_size_1
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_nat_ssid_dw_batch_size_1_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and nat and wpa2_personal and twog and dw and batch_size_1"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
mode = "NAT"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=1, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_nat_tcp_dl", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1",
upload_rate="0Gbps", protocol="UDP-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_personal
@pytest.mark.twog
@pytest.mark.up_dw
@pytest.mark.batch_size_1
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_nat_ssid_up_dw_batch_size_1_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and nat and wpa2_personal and twog and up_dw and batch_size_1"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
mode = "NAT"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=1, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_nat_up_dw_1", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1",
upload_rate="1Gbps", protocol="UDP-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_personal
@pytest.mark.fiveg
@pytest.mark.up
@pytest.mark.batch_size_1
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_nat_ssid_up_batch_size_1_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and nat and wpa2_personal and fiveg and up and batch_size_1"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
mode = "NAT"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=1, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_nat_up_1_5g", mode=mode, vlan_id=vlan,
download_rate="0Gbps", batch_size="1",
upload_rate="1Gbps", protocol="UDP-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_personal
@pytest.mark.fiveg
@pytest.mark.dw
@pytest.mark.batch_size_1
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_nat_ssid_dw_batch_size_1_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and nat and wpa2_personal and fiveg and dw and batch_size_1"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
mode = "NAT"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=1, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_nat_dw_1_5g", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1",
upload_rate="0Gbps", protocol="UDP-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_personal
@pytest.mark.fiveg
@pytest.mark.up_dw
@pytest.mark.batch_size_1
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_nat_ssid_up_dw_batch_size_1_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and nat and wpa2_personal and fiveg and up_dw and batch_size_1"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
mode = "NAT"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=1, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_nat_up_dw_5g", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1",
upload_rate="1Gbps", protocol="UDP-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_personal
@pytest.mark.fiveg
@pytest.mark.disable_up_dw
def test_wpa2_personal_nat_ssid_disable_up_dw_batch_size_125_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and nat and wpa2_personal and fiveg and disable_up_dw"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
profile_data["rate-limit"][0] = 0
profile_data["rate-limit"][1] = 0
mode = "NAT"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_nat_up_dw_di", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-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_personal
@pytest.mark.fiveg
@pytest.mark.up_dw_per_client
def test_wpa2_personal_nat_ssid_up_dw_per_client_batch_size_125_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and nat and wpa2_personal and fiveg and up_dw_per_client"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
mode = "NAT"
vlan = 1
raw_lines = [["dl_rate_sel: Per-Station Download Rate:"], ["ul_rate_sel: Per-Station Download Rate:"]]
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_nat_up_dw_per_cl_5g", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="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
@pytest.mark.wpa2_personal
@pytest.mark.fiveg
@pytest.mark.up_per_client
def test_wpa2_personal_nat_ssid_up_per_client_batch_size_125_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and nat and wpa2_personal and fiveg and up_per_client"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
mode = "NAT"
vlan = 1
raw_lines = [["ul_rate_sel: Per-Station Download Rate:"]]
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_nat_up_per_cl_5g", mode=mode, vlan_id=vlan,
download_rate="0Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="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
@pytest.mark.wpa2_personal
@pytest.mark.fiveg
@pytest.mark.dw_per_client
def test_wpa2_personal_nat_ssid_dw_per_client_batch_size_125_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and nat and wpa2_personal and fiveg and dw_per_client"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
mode = "NAT"
vlan = 1
raw_lines = [["dw_rate_sel: Per-Station Download Rate:"]]
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_nat_dw_per_cl_5g", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="0Gbps", protocol="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

View File

@@ -0,0 +1,678 @@
"""
Rate LImiting Vlan Mode Scenario
"""
import allure
import pytest
pytestmark = [pytest.mark.rate_limiting, pytest.mark.vlan, pytest.mark.general, pytest.mark.ucentral,
pytest.mark.regression]
setup_params_general = {
"mode": "VLAN",
"ssid_modes": {
"wpa2_personal": [
{"ssid_name": "ssid_wpa2_2g_br",
"appliedRadios": ["2G"],
"security_key": "something",
"rate-limit": {
"ingress-rate": 100,
"egress-rate": 100
}
},
{"ssid_name": "ssid_wpa2_5g_br",
"appliedRadios": ["5G"],
"security_key": "something",
"rate-limit": {
"ingress-rate": 100,
"egress-rate": 100
}
}]},
"rf": {},
"radius": False
}
@allure.feature("Vlan Mode Rate Limiting")
@pytest.mark.parametrize(
'setup_profiles',
[setup_params_general],
indirect=True,
scope="class"
)
@pytest.mark.usefixtures("setup_profiles")
class TestRateLimitingVlan(object):
@pytest.mark.wpa2_personal
@pytest.mark.twog
@pytest.mark.up
@pytest.mark.batch_size_125
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_vlan_ssid_up_batch_size_125_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and vlan and wpa2_personal and twog and up and batch_size_125"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
mode = "VLAN"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_vlan_up_125", mode=mode, vlan_id=vlan,
download_rate="0Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-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_personal
@pytest.mark.twog
@pytest.mark.dw
@pytest.mark.batch_size_125
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_vlan_ssid_dw_batch_size_125_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and vlan and wpa2_personal and twog and dw and batch_size_125"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
mode = "VLAN"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_vlan_dw_125", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="0Gbps", protocol="UDP-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_personal
@pytest.mark.twog
@pytest.mark.up_dw
@pytest.mark.batch_size_125
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_vlan_ssid_up_dw_batch_size_125_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and vlan and wpa2_personal and twog and up_dw and batch_size_125"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
mode = "VLAN"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_vlan_up_dw_125", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-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_personal
@pytest.mark.twog
@pytest.mark.disable_up_dw
def test_wpa2_personal_vlan_ssid_disable_up_dw_batch_size_125_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and vlan and wpa2_personal and twog and disable_up_dw"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
profile_data["rate-limit"][0] = 0
profile_data["rate-limit"][1] = 0
mode = "VLAN"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_vlan_up_dw_dis", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-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_personal
@pytest.mark.twog
@pytest.mark.up_dw_per_client
def test_wpa2_personal_vlan_ssid_up_dw_per_client_batch_size_125_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and vlan and wpa2_personal and twog and up_dw_per_client"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
mode = "VLAN"
vlan = 1
raw_lines = [["dl_rate_sel: Per-Station Download Rate:"], ["ul_rate_sel: Per-Station Download Rate:"]]
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_vlan_up_dw_per_client", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="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
@pytest.mark.wpa2_personal
@pytest.mark.twog
@pytest.mark.up_per_client
def test_wpa2_personal_vlan_ssid_up_per_client_batch_size_125_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and vlan and wpa2_personal and twog and up_per_client"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
mode = "VLAN"
vlan = 1
raw_lines = [["ul_rate_sel: Per-Station Download Rate:"]]
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_vlan_up_per_cl", mode=mode, vlan_id=vlan,
download_rate="0Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="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
@pytest.mark.wpa2_personal
@pytest.mark.twog
@pytest.mark.dw_per_client
def test_wpa2_personal_vlan_ssid_dw_per_client_batch_size_125_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and vlan and wpa2_personal and twog and dw_per_client"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
mode = "VLAN"
vlan = 1
raw_lines = [["dw_rate_sel: Per-Station Download Rate:"]]
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_vlan_dw_per_cl", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="0Gbps", protocol="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
@pytest.mark.wpa2_personal
@pytest.mark.fiveg
@pytest.mark.up
@pytest.mark.batch_size_125
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_vlan_ssid_up_batch_size_125_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and vlan and wpa2_personal and fiveg and up and batch_size_125"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
mode = "VLAN"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_vlan_up_125_5g", mode=mode, vlan_id=vlan,
download_rate="0Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-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_personal
@pytest.mark.fiveg
@pytest.mark.dw
@pytest.mark.batch_size_125
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_vlan_ssid_dw_batch_size_125_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and vlan and wpa2_personal and fiveg and dw and batch_size_125"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
mode = "VLAN"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_vlan_dw_125_5g", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="0Gbps", protocol="UDP-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_personal
@pytest.mark.fiveg
@pytest.mark.up_dw
@pytest.mark.batch_size_125
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_vlan_ssid_up_dw_batch_size_125_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and vlan and wpa2_personal and fiveg and up_dw and batch_size_125"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
mode = "VLAN"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_vlan_up_dw_125_5g", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-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_personal
@pytest.mark.twog
@pytest.mark.up
@pytest.mark.batch_size_1
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_vlan_ssid_up_batch_size_1_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and vlan and wpa2_personal and twog and up and batch_size_1"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
mode = "VLAN"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=1, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_vlan_up_1_5g", mode=mode, vlan_id=vlan,
download_rate="0Gbps", batch_size="1",
upload_rate="1Gbps", protocol="UDP-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_personal
@pytest.mark.twog
@pytest.mark.dw
@pytest.mark.batch_size_1
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_vlan_ssid_dw_batch_size_1_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and vlan and wpa2_personal and twog and dw and batch_size_1"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
mode = "VLAN"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=1, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_vlan_dw_1_5g", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1",
upload_rate="0Gbps", protocol="UDP-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_personal
@pytest.mark.twog
@pytest.mark.up_dw
@pytest.mark.batch_size_1
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_vlan_ssid_up_dw_batch_size_1_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and vlan and wpa2_personal and twog and up_dw and batch_size_1"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
mode = "VLAN"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=1, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_vlan_up_dw_5g", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1",
upload_rate="1Gbps", protocol="UDP-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_personal
@pytest.mark.fiveg
@pytest.mark.up
@pytest.mark.batch_size_1
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_vlan_ssid_up_batch_size_1_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and vlan and wpa2_personal and fiveg and up and batch_size_1"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
mode = "VLAN"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=1, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_vlan_up_1_5g", mode=mode, vlan_id=vlan,
download_rate="0Gbps", batch_size="1",
upload_rate="1Gbps", protocol="UDP-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_personal
@pytest.mark.fiveg
@pytest.mark.dw
@pytest.mark.batch_size_1
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_vlan_ssid_dw_batch_size_1_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and vlan and wpa2_personal and fiveg and dw and batch_size_1"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
mode = "VLAN"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=1, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_vlan_dw_1_5g", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1",
upload_rate="0Gbps", protocol="UDP-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_personal
@pytest.mark.fiveg
@pytest.mark.up_dw
@pytest.mark.batch_size_1
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_vlan_ssid_up_dw_batch_size_1_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and vlan and wpa2_personal and fiveg and up_dw and batch_size_1"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
mode = "VLAN"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=1, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_vlan_up_dw_1_5g", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1",
upload_rate="1Gbps", protocol="UDP-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_personal
@pytest.mark.fiveg
@pytest.mark.disable_up_dw
def test_wpa2_personal_vlan_ssid_disable_up_dw_batch_size_125_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and vlan and wpa2_personal and fiveg and disable_up_dw"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
profile_data["rate-limit"][0] = 0
profile_data["rate-limit"][1] = 0
mode = "VLAN"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_vlan_up_dw_di_5g", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-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_personal
@pytest.mark.fiveg
@pytest.mark.up_dw_per_client
def test_wpa2_personal_vlan_ssid_up_dw_per_client_batch_size_125_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and vlan and wpa2_personal and fiveg and up_dw_per_client"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
mode = "VLAN"
vlan = 1
raw_lines = [["dl_rate_sel: Per-Station Download Rate:"], ["ul_rate_sel: Per-Station Download Rate:"]]
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_vlan_up_dw_per_cl", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="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
@pytest.mark.wpa2_personal
@pytest.mark.fiveg
@pytest.mark.up_per_client
def test_wpa2_personal_vlan_ssid_up_per_client_batch_size_125_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and vlan and wpa2_personal and fiveg and up_per_client"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
mode = "VLAN"
vlan = 1
raw_lines = [["ul_rate_sel: Per-Station Download Rate:"]]
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_vlan_up_per_cl_5g", mode=mode, vlan_id=vlan,
download_rate="0Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="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
@pytest.mark.wpa2_personal
@pytest.mark.fiveg
@pytest.mark.dw_per_client
def test_wpa2_personal_vlan_ssid_dw_per_client_batch_size_125_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and vlan and wpa2_personal and fiveg and dw_per_client"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
mode = "VLAN"
vlan = 1
raw_lines = [["dw_rate_sel: Per-Station Download Rate:"]]
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_vlan_dw_per_cl_5g", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="0Gbps", protocol="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