From 625fbb4282875ddb2a1d1679415d9c26bfde3bfe Mon Sep 17 00:00:00 2001 From: raj-TIP Date: Thu, 24 Jun 2021 09:26:04 -0500 Subject: [PATCH] Added Open Roaming iOS and Android Patch3 Signed-off-by: raj-TIP --- libs/perfecto_libs/android_lib.py | 5 +- .../test_OpenRoaming_BridgeMode.py | 143 ++++++++---------- tests/e2e/interOp/conftest.py | 10 +- 3 files changed, 70 insertions(+), 88 deletions(-) diff --git a/libs/perfecto_libs/android_lib.py b/libs/perfecto_libs/android_lib.py index 8e2264fcc..8ae511b97 100644 --- a/libs/perfecto_libs/android_lib.py +++ b/libs/perfecto_libs/android_lib.py @@ -835,9 +835,8 @@ def verify_APconnMobileDevice_Android(request, profileNameSSID, setup_perfectoMo #Open Settings Application openApp(connData["appPackage-android"], setup_perfectoMobile) - + deviceModelName = getDeviceModelName(setup_perfectoMobile) - print ("Selected Device Model: " + deviceModelName) if deviceModelName!=("Pixel 4"): #Not a pixel Device @@ -846,7 +845,7 @@ def verify_APconnMobileDevice_Android(request, profileNameSSID, setup_perfectoMo report.step_start("Click Connections") try: - print("VClick Connections") + print("Click Connections") report.step_start("Click Connections") connElement = driver.find_element_by_xpath("//*[@text='Connections']") connElement.click() diff --git a/tests/e2e/interOp/android/OpenRoamingPassPoint/test_OpenRoaming_BridgeMode.py b/tests/e2e/interOp/android/OpenRoamingPassPoint/test_OpenRoaming_BridgeMode.py index cde190ad3..14ab05ee8 100644 --- a/tests/e2e/interOp/android/OpenRoamingPassPoint/test_OpenRoaming_BridgeMode.py +++ b/tests/e2e/interOp/android/OpenRoamingPassPoint/test_OpenRoaming_BridgeMode.py @@ -13,11 +13,11 @@ from selenium.common.exceptions import NoSuchElementException import sys import allure -pytestmark = [pytest.mark.sanity, pytest.mark.interop, pytest.mark.android, pytest.mark.OpenRoaming] - if 'perfecto_libs' not in sys.path: sys.path.append(f'../libs/perfecto_libs') +pytestmark = [pytest.mark.sanity, pytest.mark.interop, pytest.mark.android, pytest.mark.interop_and, pytest.mark.openRoaming, pytest.mark.bridge] + from android_lib import closeApp, set_APconnMobileDevice_android, verify_APconnMobileDevice_Android, deleteOpenRoamingInstalledProfile, downloadInstallOpenRoamingProfile, verifyUploadDownloadSpeed_android, Toggle_AirplaneMode_android, ForgetWifiConnection, openApp, setup_perfectoMobile_android """ @@ -25,8 +25,6 @@ from android_lib import closeApp, set_APconnMobileDevice_android, verify_APconnM pytest -m "interop_iOS and eap_passpoint and bridge" """ -pytestmark = [pytest.mark.interop_iOS, pytest.mark.eap_passpoint, pytest.mark.bridge] - setup_params_eap = { "mode": "BRIDGE", "ssid_modes": { @@ -43,8 +41,7 @@ setup_params_eap = { ] } } - -@pytest.mark.OpenRoaming + @allure.feature("BRIDGE MODE EAP PASSPOINT SETUP") @pytest.mark.parametrize( 'setup_profiles', @@ -53,63 +50,8 @@ setup_params_eap = { scope="class" ) @pytest.mark.usefixtures("setup_profiles") -class TestOpenRoaming(object): - """ - EAP Passpoint BRIDGE Mode - pytest -m "interop_iOS and eap_passpoint and bridge" - """ - def test_eap_passpoint_osu_id_provider_creation(self, setup_profiles): - """ - EAP Passpoint BRIDGE Mode : OSU ID provider profile creation - pytest -m "interop_iOS and eap_passpoint and bridge" - """ - test_cases, instantiate_profile, profile_data = setup_profiles - result = test_cases['passpoint_osu_id_provider']['sdk'] - if result: - allure.attach(name="OSU ID provider profile creation successful ", body="") - else: - allure.attach(name="OSU ID provider profile creation failed ", body="") - assert result - - def test_eap_passpoint_operator_creation(self, setup_profiles): - """ - EAP Passpoint BRIDGE Mode : Passpoint operator profile creation - pytest -m "interop_iOS and eap_passpoint and bridge" - """ - test_cases, instantiate_profile, profile_data = setup_profiles - result = test_cases['passpoint_operator_profile']['sdk'] - if result: - allure.attach(name="Passpoint operator profile creation successful ", body="") - else: - allure.attach(name="Passpoint operator profile creation failed ", body="") - assert result - - def test_eap_passpoint_venue_creation(self, setup_profiles): - """ - EAP Passpoint BRIDGE Mode : Passpoint venue provider profile creation - pytest -m "interop_iOS and eap_passpoint and bridge" - """ - test_cases, instantiate_profile, profile_data = setup_profiles - result = test_cases['passpoint_venue_profile']['sdk'] - if result: - allure.attach(name="Passpoint venue provider profile creation successful ", body="") - else: - allure.attach(name="Passpoint venue provider profile creation failed ", body="") - assert result - - def test_eap_passpoint_creation(self, setup_profiles): - """ - EAP Passpoint BRIDGE Mode : Passpoint profile creation - pytest -m "interop_iOS and eap_passpoint and bridge" - """ - test_cases, instantiate_profile, profile_data = setup_profiles - result = test_cases['passpoint']['sdk'] - if result: - allure.attach(name="Passpoint profile creation successful ", body="") - else: - allure.attach(name="Passpoint profile creation failed ", body="") - assert result - +class TestOpenRoamingBridgeMode(object): + @pytest.mark.wpa2_eap @pytest.mark.twog @pytest.mark.parametrize( @@ -158,8 +100,12 @@ class TestOpenRoaming(object): profileName = passpoint_profile_info["profile_name_on_device"] profileNameSSID = setup_params_eap["ssid_modes"]["wpa2_eap"][1]["ssid_name"] + + #Delete Profile Under Settings + deleteOpenRoamingInstalledProfile(request, profileName, setup_perfectoMobile_android, connData) + #ForgetWifi - ForgetWifiConnection(request, setup_perfectoMobile_android, profileNameSSID, connData) + #ForgetWifiConnection(request, setup_perfectoMobile_android, profileNameSSID, connData) #Set Wifi/AP Mode set_APconnMobileDevice_android(request, downloadProfileSSID, downloadProfileSSIDPass, setup_perfectoMobile_android, connData) @@ -170,11 +116,16 @@ class TestOpenRoaming(object): #ForgetWifi Original ForgetWifiConnection(request, setup_perfectoMobile_android, downloadProfileSSID, connData) - verify_APconnMobileDevice_Android(request, profileName, setup_perfectoMobile_android, connData) - - #Verify Upload download Speed from device Selection - verifyUploadDownloadSpeed_android(request, setup_perfectoMobile_android, connData) + try: + verify_APconnMobileDevice_Android(request, profileNameSSID, setup_perfectoMobile_android, connData) + #Verify Upload download Speed from device Selection + verifyUploadDownloadSpeed_android(request, setup_perfectoMobile_android, connData) + + except Exception as e: + deleteOpenRoamingInstalledProfile(request, profileName, setup_perfectoMobile_android, connData) + assert False + #Delete Profile Under Settings deleteOpenRoamingInstalledProfile(request, profileName, setup_perfectoMobile_android, connData) @@ -226,8 +177,11 @@ class TestOpenRoaming(object): profileName = passpoint_profile_info["profile_name_on_device"] profileNameSSID = setup_params_eap["ssid_modes"]["wpa2_eap"][1]["ssid_name"] + #Delete Profile Under Settings + deleteOpenRoamingInstalledProfile(request, profileName, setup_perfectoMobile_android, connData) + #ForgetWifi - ForgetWifiConnection(request, setup_perfectoMobile_android, profileNameSSID, connData) + #ForgetWifiConnection(request, setup_perfectoMobile_android, profileNameSSID, connData) #Set Wifi/AP Mode set_APconnMobileDevice_android(request, downloadProfileSSID, downloadProfileSSIDPass, setup_perfectoMobile_android, connData) @@ -238,11 +192,16 @@ class TestOpenRoaming(object): #ForgetWifi Original ForgetWifiConnection(request, setup_perfectoMobile_android, downloadProfileSSID, connData) - verify_APconnMobileDevice_Android(request, profileName, setup_perfectoMobile_android, connData) - - #Verify Upload download Speed from device Selection - verifyUploadDownloadSpeed_android(request, setup_perfectoMobile_android, connData) + try: + verify_APconnMobileDevice_Android(request, profileNameSSID, setup_perfectoMobile_android, connData) + #Verify Upload download Speed from device Selection + verifyUploadDownloadSpeed_android(request, setup_perfectoMobile_android, connData) + + except Exception as e: + deleteOpenRoamingInstalledProfile(request, profileName, setup_perfectoMobile_android, connData) + assert False + #Delete Profile Under Settings deleteOpenRoamingInstalledProfile(request, profileName, setup_perfectoMobile_android, connData) @@ -289,8 +248,11 @@ class TestOpenRoaming(object): profileName = passpoint_profile_info["profile_name_on_device"] profileNameSSID = setup_params_eap["ssid_modes"]["wpa2_eap"][1]["ssid_name"] + #Delete Profile Under Settings + deleteOpenRoamingInstalledProfile(request, profileName, setup_perfectoMobile_android, connData) + #ForgetWifi - ForgetWifiConnection(request, setup_perfectoMobile_android, profileNameSSID, connData) + #ForgetWifiConnection(request, setup_perfectoMobile_android, profileNameSSID, connData) #Set Wifi/AP Mode set_APconnMobileDevice_android(request, downloadProfileSSID, downloadProfileSSIDPass, setup_perfectoMobile_android, connData) @@ -301,13 +263,18 @@ class TestOpenRoaming(object): #ForgetWifi Original ForgetWifiConnection(request, setup_perfectoMobile_android, downloadProfileSSID, connData) - verify_APconnMobileDevice_Android(request, profileName, setup_perfectoMobile_android, connData) - - #Verify Upload download Speed from device Selection - verifyUploadDownloadSpeed_android(request, setup_perfectoMobile_android, connData) + try: + verify_APconnMobileDevice_Android(request, profileNameSSID, setup_perfectoMobile_android, connData) + #Verify Upload download Speed from device Selection + verifyUploadDownloadSpeed_android(request, setup_perfectoMobile_android, connData) + + except Exception as e: + deleteOpenRoamingInstalledProfile(request, profileName, setup_perfectoMobile_android, connData) + assert False + #Delete Profile Under Settings - deleteOpenRoamingInstalledProfile(request, profileName, setup_perfectoMobile_android, connData) + deleteOpenRoamingInstalledProfile(request, profileName, setup_perfectoMobile_android, connData) @pytest.mark.wpa2_only_eap @pytest.mark.fiveg @@ -352,8 +319,11 @@ class TestOpenRoaming(object): profileName = passpoint_profile_info["profile_name_on_device"] profileNameSSID = setup_params_eap["ssid_modes"]["wpa2_eap"][1]["ssid_name"] + #Delete Profile Under Settings + deleteOpenRoamingInstalledProfile(request, profileName, setup_perfectoMobile_android, connData) + #ForgetWifi - ForgetWifiConnection(request, setup_perfectoMobile_android, profileNameSSID, connData) + #ForgetWifiConnection(request, setup_perfectoMobile_android, profileNameSSID, connData) #Set Wifi/AP Mode set_APconnMobileDevice_android(request, downloadProfileSSID, downloadProfileSSIDPass, setup_perfectoMobile_android, connData) @@ -364,10 +334,15 @@ class TestOpenRoaming(object): #ForgetWifi Original ForgetWifiConnection(request, setup_perfectoMobile_android, downloadProfileSSID, connData) - verify_APconnMobileDevice_Android(request, profileName, setup_perfectoMobile_android, connData) - - #Verify Upload download Speed from device Selection - verifyUploadDownloadSpeed_android(request, setup_perfectoMobile_android, connData) + try: + verify_APconnMobileDevice_Android(request, profileNameSSID, setup_perfectoMobile_android, connData) + #Verify Upload download Speed from device Selection + verifyUploadDownloadSpeed_android(request, setup_perfectoMobile_android, connData) + + except Exception as e: + deleteOpenRoamingInstalledProfile(request, profileName, setup_perfectoMobile_android, connData) + assert False + #Delete Profile Under Settings deleteOpenRoamingInstalledProfile(request, profileName, setup_perfectoMobile_android, connData) diff --git a/tests/e2e/interOp/conftest.py b/tests/e2e/interOp/conftest.py index 6edbb8737..bb4d52cad 100644 --- a/tests/e2e/interOp/conftest.py +++ b/tests/e2e/interOp/conftest.py @@ -754,4 +754,12 @@ def failure_tracking_fixture(request): print("tests_failed_during_module: ") print(tests_failed_during_module) yield tests_failed_during_module - \ No newline at end of file + + +@pytest.fixture(scope="class") +def get_vif_state(get_apnos, get_configuration): + ap_ssh = get_apnos(get_configuration['access_point'][0], pwd="../libs/apnos/") + vif_state = list(ap_ssh.get_vif_state_ssids()) + vif_state.sort() + allure.attach(name="vif_state", body=str(vif_state)) + yield vif_state