mirror of
				https://github.com/Telecominfraproject/wlan-testing.git
				synced 2025-10-31 19:08:01 +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] |                     ssid_info[options] = ssid_data[options] | ||||||
|                 if options == "isolate-clients": |                 if options == "isolate-clients": | ||||||
|                     ssid_info[options] = ssid_data[options] |                     ssid_info[options] = ssid_data[options] | ||||||
|  |                 if options == "strict-forwarding": | ||||||
|  |                     ssid_info[options] = ssid_data[options] | ||||||
|                 if options == "captive": |                 if options == "captive": | ||||||
|                     ssid_info[options] = ssid_data[options] |                     ssid_info[options] = ssid_data[options] | ||||||
|             for i in ssid_data["appliedRadios"]: |             for i in ssid_data["appliedRadios"]: | ||||||
| @@ -2692,6 +2694,8 @@ class UProfileUtility: | |||||||
|                     ssid_info[options] = ssid_data[options] |                     ssid_info[options] = ssid_data[options] | ||||||
|                 if options == "isolate-clients": |                 if options == "isolate-clients": | ||||||
|                     ssid_info[options] = ssid_data[options] |                     ssid_info[options] = ssid_data[options] | ||||||
|  |                 if options == "strict-forwarding": | ||||||
|  |                     ssid_info[options] = ssid_data[options] | ||||||
|                 if options == "captive": |                 if options == "captive": | ||||||
|                     ssid_info[options] = ssid_data[options] |                     ssid_info[options] = ssid_data[options] | ||||||
|                     ssid_info["services"] = ["captive"] |                     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