mirror of
				https://github.com/Telecominfraproject/wlan-testing.git
				synced 2025-10-30 18:38:06 +00:00 
			
		
		
		
	Wifi 12923 (#849)
* Added strict-forwarding option Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com> * Added test cases for strict_forwarding test plan Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com> * Deleted nat mode test cases Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com> --------- Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>
This commit is contained in:
		| @@ -2652,6 +2652,8 @@ class UProfileUtility: | ||||
|                     ssid_info[options] = ssid_data[options] | ||||
|                 if options == "isolate-clients": | ||||
|                     ssid_info[options] = ssid_data[options] | ||||
|                 if options == "strict-forwarding": | ||||
|                     ssid_info[options] = ssid_data[options] | ||||
|                 if options == "captive": | ||||
|                     ssid_info[options] = ssid_data[options] | ||||
|             for i in ssid_data["appliedRadios"]: | ||||
| @@ -2692,6 +2694,8 @@ class UProfileUtility: | ||||
|                     ssid_info[options] = ssid_data[options] | ||||
|                 if options == "isolate-clients": | ||||
|                     ssid_info[options] = ssid_data[options] | ||||
|                 if options == "strict-forwarding": | ||||
|                     ssid_info[options] = ssid_data[options] | ||||
|                 if options == "captive": | ||||
|                     ssid_info[options] = ssid_data[options] | ||||
|                     ssid_info["services"] = ["captive"] | ||||
|   | ||||
							
								
								
									
										0
									
								
								tests/e2e/basic/strict_forwarding/__init__.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										0
									
								
								tests/e2e/basic/strict_forwarding/__init__.py
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,247 @@ | ||||
| """ | ||||
|     Test Strict Forwarding: Bridge Mode | ||||
|     pytest -m strict_forwarding_tests | ||||
| """ | ||||
|  | ||||
| import allure | ||||
| import pytest | ||||
|  | ||||
| pytestmark = [pytest.mark.ow_regression_lf, pytest.mark.strict_forwarding_tests, pytest.mark.bridge] | ||||
|  | ||||
| setup_params_general = { | ||||
|     "mode": "BRIDGE", | ||||
|     "ssid_modes": { | ||||
|         "wpa2_personal": [ | ||||
|             { | ||||
|                 "ssid_name": "strict_forwarding_wpa2_br", | ||||
|                 "appliedRadios": ["5G"], | ||||
|                 "security": "psk2", | ||||
|                 "security_key": "something", | ||||
|                 "strict-forwarding": True | ||||
|             } | ||||
|         ] | ||||
|     }, | ||||
|     "rf": {}, | ||||
|     "radius": False | ||||
| } | ||||
|  | ||||
|  | ||||
| @pytest.mark.parametrize( | ||||
|     'setup_configuration', | ||||
|     [setup_params_general], | ||||
|     indirect=True, | ||||
|     scope="class" | ||||
| ) | ||||
| @allure.feature("Strict Forwarding") | ||||
| @allure.parent_suite("Strict Forwarding") | ||||
| @allure.suite(suite_name="BRIDGE Mode") | ||||
| @allure.sub_suite(sub_suite_name="Clients connected to same SSID") | ||||
| @pytest.mark.usefixtures("setup_configuration") | ||||
| class TestStrictForwardingSameSSID(object): | ||||
|     """ | ||||
|         Strict Forwarding Test: BRIDGE Mode | ||||
|         pytest -m "strict_forwarding_tests and bridge" | ||||
|     """ | ||||
|  | ||||
|     @pytest.mark.wpa2_personal | ||||
|     @pytest.mark.fiveg | ||||
|     @pytest.mark.clients_connected_same_ssid_sf_enabled | ||||
|     @allure.title("Verify the clients connected to same SSID cannot ping eachother when strict_forwarding is enabled") | ||||
|     @allure.testcase(url="https://telecominfraproject.atlassian.net/browse/WIFI-12923", name="WIFI-12923") | ||||
|     def test_sf_enabled_ssid_5g(self, setup_configuration, get_test_library, num_stations, | ||||
|                                 get_test_device_logs, get_dut_logs_per_test_case, check_connectivity): | ||||
|  | ||||
|         profile_data = { | ||||
|             "ssid_name": "strict_forwarding_wpa2_br", | ||||
|             "appliedRadios": ["5G"], | ||||
|             "security": "psk2", | ||||
|             "security_key": "something", | ||||
|             "strict-forwarding": True | ||||
|         } | ||||
|         ssid_name = profile_data["ssid_name"] | ||||
|         security_key = profile_data["security_key"] | ||||
|         security = "wpa2" | ||||
|         mode = "BRIDGE" | ||||
|         band = "fiveg" | ||||
|  | ||||
|         result, description = get_test_library.strict_forwarding(ssids=[ssid_name], | ||||
|                                                                  passkey=security_key, | ||||
|                                                                  security=security, mode=mode, | ||||
|                                                                  dut_data=setup_configuration, num_stations_per_ssid=2, | ||||
|                                                                  side_a_min_rate=6291456, side_a_max_rate=0, | ||||
|                                                                  side_b_min_rate=6291456, side_b_max_rate=0, band=band) | ||||
|         if not result: | ||||
|             assert False, description | ||||
|         else: | ||||
|             assert True, description | ||||
|  | ||||
|  | ||||
| setup_params_general1 = { | ||||
|     "mode": "BRIDGE", | ||||
|     "ssid_modes": { | ||||
|         "wpa2_personal": [ | ||||
|             { | ||||
|                 "ssid_name": "sf_enabled_ssid1_wpa2_br", | ||||
|                 "appliedRadios": ["5G"], | ||||
|                 "security": "psk2", | ||||
|                 "security_key": "something", | ||||
|                 "strict-forwarding": True | ||||
|             }, | ||||
|             { | ||||
|                 "ssid_name": "sf_enabled_ssid2_wpa2_br", | ||||
|                 "appliedRadios": ["5G"], | ||||
|                 "security": "psk2", | ||||
|                 "security_key": "something", | ||||
|                 "strict-forwarding": True | ||||
|             } | ||||
|         ] | ||||
|     }, | ||||
|     "rf": {}, | ||||
|     "radius": False | ||||
| } | ||||
|  | ||||
|  | ||||
| @pytest.mark.parametrize( | ||||
|     'setup_configuration', | ||||
|     [setup_params_general1], | ||||
|     indirect=True, | ||||
|     scope="class" | ||||
| ) | ||||
| @allure.feature("Strict Forwarding") | ||||
| @allure.parent_suite("Strict Forwarding") | ||||
| @allure.suite(suite_name="BRIDGE Mode") | ||||
| @allure.sub_suite(sub_suite_name="Clients connected to two different SSID (sf is enabled on both SSIDs)") | ||||
| @pytest.mark.usefixtures("setup_configuration") | ||||
| class TestStrictForwardingEnabledTwoSSID(object): | ||||
|     """ | ||||
|         Strict Forwarding Test: BRIDGE Mode | ||||
|         pytest -m "strict_forwarding_tests and bridge" | ||||
|     """ | ||||
|  | ||||
|     @pytest.mark.wpa2_personal | ||||
|     @pytest.mark.fiveg | ||||
|     @pytest.mark.clients_connected_different_ssid_sf_enabled | ||||
|     @allure.title("Verify whether clients connected to different SSIDs cannot ping each other when strict_forwarding" | ||||
|                   " is enabled on both SSIDs") | ||||
|     @allure.testcase(url="https://telecominfraproject.atlassian.net/browse/WIFI-12924", name="WIFI-12924") | ||||
|     def test_sf_enabled_two_ssid_5g(self, setup_configuration, get_test_library, num_stations, | ||||
|                                     get_test_device_logs, get_dut_logs_per_test_case, check_connectivity): | ||||
|  | ||||
|         profile_data = { | ||||
|             "ssid_name": "sf_enabled_ssid1_wpa2_br", | ||||
|             "appliedRadios": ["5G"], | ||||
|             "security": "psk2", | ||||
|             "security_key": "something", | ||||
|             "strict-forwarding": True | ||||
|         } | ||||
|         ssid_name_1 = profile_data["ssid_name"] | ||||
|         profile_data = { | ||||
|             "ssid_name": "sf_enabled_ssid2_wpa2_br", | ||||
|             "appliedRadios": ["5G"], | ||||
|             "security": "psk2", | ||||
|             "security_key": "something", | ||||
|             "strict-forwarding": True | ||||
|         } | ||||
|         ssid_name_2 = profile_data["ssid_name"] | ||||
|         ssids = [ssid_name_1, ssid_name_2] | ||||
|         print("SSIDS", ssids) | ||||
|         security_key = profile_data["security_key"] | ||||
|         security = "wpa2" | ||||
|         mode = "BRIDGE" | ||||
|         band = "fiveg" | ||||
|         result, description = get_test_library.strict_forwarding(ssids=ssids, | ||||
|                                                                  passkey=security_key, | ||||
|                                                                  security=security, mode=mode, | ||||
|                                                                  dut_data=setup_configuration, num_stations_per_ssid=1, | ||||
|                                                                  side_a_min_rate=6291456, side_a_max_rate=0, | ||||
|                                                                  side_b_min_rate=6291456, side_b_max_rate=0, band=band) | ||||
|         if not result: | ||||
|             assert False, description | ||||
|         else: | ||||
|             assert True, description | ||||
|  | ||||
|  | ||||
| setup_params_general2 = { | ||||
|     "mode": "BRIDGE", | ||||
|     "ssid_modes": { | ||||
|         "wpa2_personal": [ | ||||
|             { | ||||
|                 "ssid_name": "sf_enabled_ssid1_wpa2_br", | ||||
|                 "appliedRadios": ["5G"], | ||||
|                 "security": "psk2", | ||||
|                 "security_key": "something", | ||||
|                 "strict-forwarding": True | ||||
|             }, | ||||
|             { | ||||
|                 "ssid_name": "sf_disabled_ssid2_wpa2_br", | ||||
|                 "appliedRadios": ["5G"], | ||||
|                 "security": "psk2", | ||||
|                 "security_key": "something", | ||||
|                 "strict-forwarding": False | ||||
|             } | ||||
|         ] | ||||
|     }, | ||||
|     "rf": {}, | ||||
|     "radius": False | ||||
| } | ||||
|  | ||||
|  | ||||
| @pytest.mark.parametrize( | ||||
|     'setup_configuration', | ||||
|     [setup_params_general2], | ||||
|     indirect=True, | ||||
|     scope="class" | ||||
| ) | ||||
| @allure.feature("Strict Forwarding") | ||||
| @allure.parent_suite("Strict Forwarding") | ||||
| @allure.suite(suite_name="BRIDGE Mode") | ||||
| @allure.sub_suite(sub_suite_name="Clients connected to two different SSID (SSID with sf enabled and another " | ||||
|                                  "SSID where sf is disabled") | ||||
| @pytest.mark.usefixtures("setup_configuration") | ||||
| class TestStrictForwardingEnabledSSIDDisableSSID(object): | ||||
|     """ | ||||
|         Strict Forwarding Test: BRIDGE Mode | ||||
|         pytest -m "strict_forwarding_tests and bridge" | ||||
|     """ | ||||
|  | ||||
|     @pytest.mark.wpa2_personal | ||||
|     @pytest.mark.fiveg | ||||
|     @pytest.mark.clients_connected_ssid_sf_enabled_ssid_sf_disable | ||||
|     @allure.title("Verify that clients connected to an SSID with strict_forwarding enabled cannot ping clients " | ||||
|                   "connected to another SSID where strict_forwarding is disabled") | ||||
|     @allure.testcase(url="https://telecominfraproject.atlassian.net/browse/WIFI-12925", name="WIFI-12925") | ||||
|     def test_sf_enabled_two_ssid_5g(self, setup_configuration, get_test_library, num_stations, | ||||
|                                     get_test_device_logs, get_dut_logs_per_test_case, check_connectivity): | ||||
|  | ||||
|         profile_data = { | ||||
|                 "ssid_name": "sf_enabled_ssid1_wpa2_br", | ||||
|                 "appliedRadios": ["5G"], | ||||
|                 "security": "psk2", | ||||
|                 "security_key": "something", | ||||
|                 "strict-forwarding": True | ||||
|             } | ||||
|         ssid_name_1 = profile_data["ssid_name"] | ||||
|         profile_data = { | ||||
|                 "ssid_name": "sf_disabled_ssid2_wpa2_br", | ||||
|                 "appliedRadios": ["5G"], | ||||
|                 "security": "psk2", | ||||
|                 "security_key": "something", | ||||
|                 "strict-forwarding": False | ||||
|             } | ||||
|         ssid_name_2 = profile_data["ssid_name"] | ||||
|         ssids = [ssid_name_1, ssid_name_2] | ||||
|         security_key = profile_data["security_key"] | ||||
|         security = "wpa2" | ||||
|         mode = "BRIDGE" | ||||
|         band = "fiveg" | ||||
|         print("SSIDS", ssids) | ||||
|         result, description = get_test_library.strict_forwarding(ssids=ssids, | ||||
|                                                                  passkey=security_key, | ||||
|                                                                  security=security, mode=mode, | ||||
|                                                                  dut_data=setup_configuration, num_stations_per_ssid=1, | ||||
|                                                                  side_a_min_rate=6291456, side_a_max_rate=0, | ||||
|                                                                  side_b_min_rate=6291456, side_b_max_rate=0, band=band) | ||||
|         if not result: | ||||
|             assert False, description | ||||
|         else: | ||||
|             assert True, description | ||||
		Reference in New Issue
	
	Block a user
	 jitendracandela
					jitendracandela