Loading tests/edgecloud/test_i2edge.py +50 −65 Original line number Diff line number Diff line import pytest from src.edgecloud.clients.aeros.client import EdgeApplicationManager as AerosClient from src.edgecloud.clients.dmo.client import EdgeApplicationManager as DmoClient from src.edgecloud.clients.i2edge.client import EdgeApplicationManager as I2EdgeClient from src.edgecloud.clients.i2edge.client import I2EdgeError from src.edgecloud.clients.piedge.client import EdgeApplicationManager as PiEdgeClient from src.edgecloud.core.edgecloud_factory import EdgeCloudFactory # Define common test cases for all tests test_cases = [ ("i2edge", "http://192.168.123.237:30769/"), # ("aeros", "http://aeros.example.com/"), # ("piedge", "http://piedge.example.com/"), # ("dmo", "http://dmo.example.com/") i2edge_testbed = [ ("i2edge", "http://192.168.123.237:30769/") ] ####################################### # EDGECLOUD CLIENT'S INSTANTIATION ####################################### @pytest.mark.parametrize("client_name, base_url", test_cases) @pytest.mark.parametrize("client_name, base_url", i2edge_testbed) def test_factory_edgecloud(client_name, base_url): """ Test the factory pattern for the edgecloud client. """ client_class_map = { "i2edge": I2EdgeClient, "aeros": AerosClient, "piedge": PiEdgeClient, "dmo": DmoClient, } expected_client_class = client_class_map[client_name] Loading @@ -41,7 +31,7 @@ def test_factory_edgecloud(client_name, base_url): ####################################### # GET EDGE CLOUD ZONES ####################################### @pytest.mark.parametrize("client_name, base_url", test_cases) @pytest.mark.parametrize("client_name, base_url", i2edge_testbed) def test_get_edge_cloud_zones(client_name, base_url): """ Test the format of the response from get_edge_cloud_zones for each client. Loading @@ -68,7 +58,7 @@ artefact_name = "hello-word-2" repo_name = "dummy-repo-2" @pytest.mark.parametrize("client_name, base_url", test_cases) @pytest.mark.parametrize("client_name, base_url", i2edge_testbed) def test_create_artefact_success(client_name, base_url): if client_name == "i2edge": edgecloud_platform = EdgeCloudFactory.create_edgecloud_client( Loading @@ -90,7 +80,7 @@ def test_create_artefact_success(client_name, base_url): pytest.fail(f"Artefact creation failed unexpectedly: {e}") @pytest.mark.parametrize("client_name, base_url", test_cases) @pytest.mark.parametrize("client_name, base_url", i2edge_testbed) def test_create_artefact_failure(client_name, base_url): if client_name == "i2edge": edgecloud_platform = EdgeCloudFactory.create_edgecloud_client( Loading @@ -110,9 +100,8 @@ def test_create_artefact_failure(client_name, base_url): ) @pytest.mark.parametrize("client_name, base_url", test_cases) @pytest.mark.parametrize("client_name, base_url", i2edge_testbed) def test_get_artefact_success(client_name, base_url): if client_name == "i2edge": edgecloud_platform = EdgeCloudFactory.create_edgecloud_client( client_name, base_url ) Loading @@ -123,9 +112,8 @@ def test_get_artefact_success(client_name, base_url): pytest.fail(f"Artefact retrieval failed unexpectedly: {e}") @pytest.mark.parametrize("client_name, base_url", test_cases) @pytest.mark.parametrize("client_name, base_url", i2edge_testbed) def test_get_artefact_failure(client_name, base_url): if client_name == "i2edge": edgecloud_platform = EdgeCloudFactory.create_edgecloud_client( client_name, base_url ) Loading @@ -134,9 +122,8 @@ def test_get_artefact_failure(client_name, base_url): edgecloud_platform._get_artefact(artefact_id="non-existent-artefact") @pytest.mark.parametrize("client_name, base_url", test_cases) @pytest.mark.parametrize("client_name, base_url", i2edge_testbed) def test_get_all_artefacts_success(client_name, base_url): if client_name == "i2edge": edgecloud_platform = EdgeCloudFactory.create_edgecloud_client( client_name, base_url ) Loading @@ -146,9 +133,8 @@ def test_get_all_artefacts_success(client_name, base_url): except I2EdgeError as e: pytest.fail(f"Artefact retrieval failed unexpectedly: {e}") @pytest.mark.parametrize("client_name, base_url", test_cases) @pytest.mark.parametrize("client_name, base_url", i2edge_testbed) def test_delete_artefact_success(client_name, base_url): if client_name == "i2edge": edgecloud_platform = EdgeCloudFactory.create_edgecloud_client( client_name, base_url ) Loading @@ -159,9 +145,8 @@ def test_delete_artefact_success(client_name, base_url): pytest.fail(f"Artefact deletion failed unexpectedly: {e}") @pytest.mark.parametrize("client_name, base_url", test_cases) @pytest.mark.parametrize("client_name, base_url", i2edge_testbed) def test_delete_artefact_failure(client_name, base_url): if client_name == "i2edge": edgecloud_platform = EdgeCloudFactory.create_edgecloud_client( client_name, base_url ) Loading Loading @@ -218,7 +203,7 @@ app_manifest = { app_manifest.update({"artefactId": app_manifest["appId"]}) @pytest.mark.parametrize("client_name, base_url", test_cases) @pytest.mark.parametrize("client_name, base_url", i2edge_testbed) def test_onboard_app_success(client_name, base_url): edgecloud_platform = EdgeCloudFactory.create_edgecloud_client( client_name, base_url Loading @@ -230,7 +215,7 @@ def test_onboard_app_success(client_name, base_url): pytest.fail(f"App onboarding failed unexpectedly: {e}") @pytest.mark.parametrize("client_name, base_url", test_cases) @pytest.mark.parametrize("client_name, base_url", i2edge_testbed) def test_onboard_app_failure(client_name, base_url): edgecloud_platform = EdgeCloudFactory.create_edgecloud_client( client_name, base_url Loading @@ -240,7 +225,7 @@ def test_onboard_app_failure(client_name, base_url): edgecloud_platform.onboard_app({}) @pytest.mark.parametrize("client_name, base_url", test_cases) @pytest.mark.parametrize("client_name, base_url", i2edge_testbed) def test_onboard_app_failure_artefact_id_missing(client_name, base_url): app_manifest.pop("artefactId") Loading @@ -252,7 +237,7 @@ def test_onboard_app_failure_artefact_id_missing(client_name, base_url): edgecloud_platform.onboard_app({}) @pytest.mark.parametrize("client_name, base_url", test_cases) @pytest.mark.parametrize("client_name, base_url", i2edge_testbed) def test_get_onboarded_app_success(client_name, base_url): edgecloud_platform = EdgeCloudFactory.create_edgecloud_client( client_name, base_url Loading @@ -264,7 +249,7 @@ def test_get_onboarded_app_success(client_name, base_url): pytest.fail(f"App onboarding failed unexpectedly: {e}") @pytest.mark.parametrize("client_name, base_url", test_cases) @pytest.mark.parametrize("client_name, base_url", i2edge_testbed) def test_get_onboarded_app_failure(client_name, base_url): edgecloud_platform = EdgeCloudFactory.create_edgecloud_client( client_name, base_url Loading @@ -274,7 +259,7 @@ def test_get_onboarded_app_failure(client_name, base_url): edgecloud_platform.get_onboarded_app(app_id="non-existent-app") @pytest.mark.parametrize("client_name, base_url", test_cases) @pytest.mark.parametrize("client_name, base_url", i2edge_testbed) def test_get_all_onboarded_app_success(client_name, base_url): edgecloud_platform = EdgeCloudFactory.create_edgecloud_client( client_name, base_url Loading @@ -286,7 +271,7 @@ def test_get_all_onboarded_app_success(client_name, base_url): pytest.fail(f"App onboarding failed unexpectedly: {e}") @pytest.mark.parametrize("client_name, base_url", test_cases) @pytest.mark.parametrize("client_name, base_url", i2edge_testbed) def test_delete_onboarded_app_success(client_name, base_url): edgecloud_platform = EdgeCloudFactory.create_edgecloud_client( client_name, base_url Loading @@ -298,7 +283,7 @@ def test_delete_onboarded_app_success(client_name, base_url): pytest.fail(f"App onboarding deletion failed unexpectedly: {e}") @pytest.mark.parametrize("client_name, base_url", test_cases) @pytest.mark.parametrize("client_name, base_url", i2edge_testbed) def test_delete_onboarded_app_failure(client_name, base_url): edgecloud_platform = EdgeCloudFactory.create_edgecloud_client( client_name, base_url Loading Loading
tests/edgecloud/test_i2edge.py +50 −65 Original line number Diff line number Diff line import pytest from src.edgecloud.clients.aeros.client import EdgeApplicationManager as AerosClient from src.edgecloud.clients.dmo.client import EdgeApplicationManager as DmoClient from src.edgecloud.clients.i2edge.client import EdgeApplicationManager as I2EdgeClient from src.edgecloud.clients.i2edge.client import I2EdgeError from src.edgecloud.clients.piedge.client import EdgeApplicationManager as PiEdgeClient from src.edgecloud.core.edgecloud_factory import EdgeCloudFactory # Define common test cases for all tests test_cases = [ ("i2edge", "http://192.168.123.237:30769/"), # ("aeros", "http://aeros.example.com/"), # ("piedge", "http://piedge.example.com/"), # ("dmo", "http://dmo.example.com/") i2edge_testbed = [ ("i2edge", "http://192.168.123.237:30769/") ] ####################################### # EDGECLOUD CLIENT'S INSTANTIATION ####################################### @pytest.mark.parametrize("client_name, base_url", test_cases) @pytest.mark.parametrize("client_name, base_url", i2edge_testbed) def test_factory_edgecloud(client_name, base_url): """ Test the factory pattern for the edgecloud client. """ client_class_map = { "i2edge": I2EdgeClient, "aeros": AerosClient, "piedge": PiEdgeClient, "dmo": DmoClient, } expected_client_class = client_class_map[client_name] Loading @@ -41,7 +31,7 @@ def test_factory_edgecloud(client_name, base_url): ####################################### # GET EDGE CLOUD ZONES ####################################### @pytest.mark.parametrize("client_name, base_url", test_cases) @pytest.mark.parametrize("client_name, base_url", i2edge_testbed) def test_get_edge_cloud_zones(client_name, base_url): """ Test the format of the response from get_edge_cloud_zones for each client. Loading @@ -68,7 +58,7 @@ artefact_name = "hello-word-2" repo_name = "dummy-repo-2" @pytest.mark.parametrize("client_name, base_url", test_cases) @pytest.mark.parametrize("client_name, base_url", i2edge_testbed) def test_create_artefact_success(client_name, base_url): if client_name == "i2edge": edgecloud_platform = EdgeCloudFactory.create_edgecloud_client( Loading @@ -90,7 +80,7 @@ def test_create_artefact_success(client_name, base_url): pytest.fail(f"Artefact creation failed unexpectedly: {e}") @pytest.mark.parametrize("client_name, base_url", test_cases) @pytest.mark.parametrize("client_name, base_url", i2edge_testbed) def test_create_artefact_failure(client_name, base_url): if client_name == "i2edge": edgecloud_platform = EdgeCloudFactory.create_edgecloud_client( Loading @@ -110,9 +100,8 @@ def test_create_artefact_failure(client_name, base_url): ) @pytest.mark.parametrize("client_name, base_url", test_cases) @pytest.mark.parametrize("client_name, base_url", i2edge_testbed) def test_get_artefact_success(client_name, base_url): if client_name == "i2edge": edgecloud_platform = EdgeCloudFactory.create_edgecloud_client( client_name, base_url ) Loading @@ -123,9 +112,8 @@ def test_get_artefact_success(client_name, base_url): pytest.fail(f"Artefact retrieval failed unexpectedly: {e}") @pytest.mark.parametrize("client_name, base_url", test_cases) @pytest.mark.parametrize("client_name, base_url", i2edge_testbed) def test_get_artefact_failure(client_name, base_url): if client_name == "i2edge": edgecloud_platform = EdgeCloudFactory.create_edgecloud_client( client_name, base_url ) Loading @@ -134,9 +122,8 @@ def test_get_artefact_failure(client_name, base_url): edgecloud_platform._get_artefact(artefact_id="non-existent-artefact") @pytest.mark.parametrize("client_name, base_url", test_cases) @pytest.mark.parametrize("client_name, base_url", i2edge_testbed) def test_get_all_artefacts_success(client_name, base_url): if client_name == "i2edge": edgecloud_platform = EdgeCloudFactory.create_edgecloud_client( client_name, base_url ) Loading @@ -146,9 +133,8 @@ def test_get_all_artefacts_success(client_name, base_url): except I2EdgeError as e: pytest.fail(f"Artefact retrieval failed unexpectedly: {e}") @pytest.mark.parametrize("client_name, base_url", test_cases) @pytest.mark.parametrize("client_name, base_url", i2edge_testbed) def test_delete_artefact_success(client_name, base_url): if client_name == "i2edge": edgecloud_platform = EdgeCloudFactory.create_edgecloud_client( client_name, base_url ) Loading @@ -159,9 +145,8 @@ def test_delete_artefact_success(client_name, base_url): pytest.fail(f"Artefact deletion failed unexpectedly: {e}") @pytest.mark.parametrize("client_name, base_url", test_cases) @pytest.mark.parametrize("client_name, base_url", i2edge_testbed) def test_delete_artefact_failure(client_name, base_url): if client_name == "i2edge": edgecloud_platform = EdgeCloudFactory.create_edgecloud_client( client_name, base_url ) Loading Loading @@ -218,7 +203,7 @@ app_manifest = { app_manifest.update({"artefactId": app_manifest["appId"]}) @pytest.mark.parametrize("client_name, base_url", test_cases) @pytest.mark.parametrize("client_name, base_url", i2edge_testbed) def test_onboard_app_success(client_name, base_url): edgecloud_platform = EdgeCloudFactory.create_edgecloud_client( client_name, base_url Loading @@ -230,7 +215,7 @@ def test_onboard_app_success(client_name, base_url): pytest.fail(f"App onboarding failed unexpectedly: {e}") @pytest.mark.parametrize("client_name, base_url", test_cases) @pytest.mark.parametrize("client_name, base_url", i2edge_testbed) def test_onboard_app_failure(client_name, base_url): edgecloud_platform = EdgeCloudFactory.create_edgecloud_client( client_name, base_url Loading @@ -240,7 +225,7 @@ def test_onboard_app_failure(client_name, base_url): edgecloud_platform.onboard_app({}) @pytest.mark.parametrize("client_name, base_url", test_cases) @pytest.mark.parametrize("client_name, base_url", i2edge_testbed) def test_onboard_app_failure_artefact_id_missing(client_name, base_url): app_manifest.pop("artefactId") Loading @@ -252,7 +237,7 @@ def test_onboard_app_failure_artefact_id_missing(client_name, base_url): edgecloud_platform.onboard_app({}) @pytest.mark.parametrize("client_name, base_url", test_cases) @pytest.mark.parametrize("client_name, base_url", i2edge_testbed) def test_get_onboarded_app_success(client_name, base_url): edgecloud_platform = EdgeCloudFactory.create_edgecloud_client( client_name, base_url Loading @@ -264,7 +249,7 @@ def test_get_onboarded_app_success(client_name, base_url): pytest.fail(f"App onboarding failed unexpectedly: {e}") @pytest.mark.parametrize("client_name, base_url", test_cases) @pytest.mark.parametrize("client_name, base_url", i2edge_testbed) def test_get_onboarded_app_failure(client_name, base_url): edgecloud_platform = EdgeCloudFactory.create_edgecloud_client( client_name, base_url Loading @@ -274,7 +259,7 @@ def test_get_onboarded_app_failure(client_name, base_url): edgecloud_platform.get_onboarded_app(app_id="non-existent-app") @pytest.mark.parametrize("client_name, base_url", test_cases) @pytest.mark.parametrize("client_name, base_url", i2edge_testbed) def test_get_all_onboarded_app_success(client_name, base_url): edgecloud_platform = EdgeCloudFactory.create_edgecloud_client( client_name, base_url Loading @@ -286,7 +271,7 @@ def test_get_all_onboarded_app_success(client_name, base_url): pytest.fail(f"App onboarding failed unexpectedly: {e}") @pytest.mark.parametrize("client_name, base_url", test_cases) @pytest.mark.parametrize("client_name, base_url", i2edge_testbed) def test_delete_onboarded_app_success(client_name, base_url): edgecloud_platform = EdgeCloudFactory.create_edgecloud_client( client_name, base_url Loading @@ -298,7 +283,7 @@ def test_delete_onboarded_app_success(client_name, base_url): pytest.fail(f"App onboarding deletion failed unexpectedly: {e}") @pytest.mark.parametrize("client_name, base_url", test_cases) @pytest.mark.parametrize("client_name, base_url", i2edge_testbed) def test_delete_onboarded_app_failure(client_name, base_url): edgecloud_platform = EdgeCloudFactory.create_edgecloud_client( client_name, base_url Loading