OSMENG-1155: Implementation of Constants and Dataclasses
Add implementation for workflows and activities
Change-Id: I58226765c41d18821724ac5763a3fe390c371ca6
Signed-off-by: Dario Faccin <dario.faccin@canonical.com>
Signed-off-by: Mark Beierl <mark.beierl@canonical.com>
diff --git a/osm_lcm/tests/test_charm_info_utils.py b/osm_lcm/tests/test_charm_info_utils.py
index 8aca9dc..1b57a19 100644
--- a/osm_lcm/tests/test_charm_info_utils.py
+++ b/osm_lcm/tests/test_charm_info_utils.py
@@ -14,7 +14,7 @@
from unittest import TestCase
from osm_lcm.temporal.juju_paas_activities import CharmInfoUtils
-from osm_common.dataclasses.temporal_dataclasses import CharmInfo
+from osm_common.temporal.dataclasses_common import CharmInfo
import yaml
vdu_nominal = """
diff --git a/osm_lcm/tests/test_juju_paas_activities.py b/osm_lcm/tests/test_juju_paas_activities.py
index 1aae706..bac5619 100644
--- a/osm_lcm/tests/test_juju_paas_activities.py
+++ b/osm_lcm/tests/test_juju_paas_activities.py
@@ -25,14 +25,14 @@
from juju.model import Model
from juju.errors import JujuError
from juju.unit import Unit
-from osm_common.dataclasses.temporal_dataclasses import (
- CharmInfo,
- CheckCharmStatusInput,
- ModelInfo,
- TestVimConnectivityInput,
- VduComputeConstraints,
- VduInstantiateInput,
+from osm_lcm.temporal.juju_paas_activities import (
+ TestVimConnectivityImpl,
+ DeployCharmImpl,
+ CreateModelImpl,
+ CheckCharmStatusImpl,
)
+from osm_common.temporal.workflows.vdu import VduInstantiateWorkflow
+from osm_common.temporal.dataclasses_common import CharmInfo, VduComputeConstraints
from osm_common.dbbase import DbException
from osm_lcm.temporal.juju_paas_activities import JujuPaasConnector
from parameterized import parameterized
@@ -122,12 +122,13 @@
class TestCreateModel(TestJujuPaasActivitiesBase):
- model_info = ModelInfo(vim_content["_id"], namespace)
+ model_info = CreateModelImpl.Input(vim_content["_id"], namespace)
def setUp(self):
super().setUp()
self._api_endpoints = []
self.controller.api_endpoints = self.api_endpoints
+ self.create_model = CreateModelImpl(self.db, self.juju_paas)
@property
async def api_endpoints(self):
@@ -137,7 +138,7 @@
self.db.get_one.side_effect = [vim_content]
self.juju_paas._decrypt_password = Mock()
self.juju_paas._decrypt_password.side_effect = ["password"]
- await self.env.run(self.juju_paas.create_model, self.model_info)
+ await self.env.run(self.create_model, self.model_info)
self.controller.add_model.assert_called_once_with(
self.model_info.model_name,
config=ANY,
@@ -147,7 +148,7 @@
async def test_create_model_already_exists(self):
self.controller.list_models.return_value = [self.model_info.model_name]
- await self.env.run(self.juju_paas.create_model, self.model_info)
+ await self.env.run(self.create_model, self.model_info)
self.controller.add_model.assert_not_called()
@@ -158,6 +159,7 @@
self.heartbeat_count = 0
self.heartbeat_maximum = 5
self.add_application("application")
+ self.check_charm_status = CheckCharmStatusImpl(self.juju_paas)
def on_heartbeat(self, *args, **kwargs):
self.heartbeat_count += 1
@@ -187,7 +189,7 @@
async def test_check_charm_status_application_with_one_unit(
self, _, app_events, unit_events, heartbeat_maximum
):
- arg = CheckCharmStatusInput(
+ arg = CheckCharmStatusImpl.Input(
application_name=self.application_name,
model_name="model",
vim_uuid="vim-uuid",
@@ -202,10 +204,10 @@
type(units[0]).workload_status = mock.PropertyMock(side_effect=unit_events)
- await self.env.run(self.juju_paas.check_charm_status, arg)
+ await self.env.run(self.check_charm_status.__call__, arg)
async def test_check_charm_status_cancel(self):
- arg = CheckCharmStatusInput(
+ arg = CheckCharmStatusImpl.Input(
application_name=self.application_name,
model_name="model",
vim_uuid="vim-uuid",
@@ -223,10 +225,10 @@
type(units[0]).workload_status = mock.PropertyMock(side_effect=[])
with self.assertRaises(asyncio.exceptions.CancelledError):
- await self.env.run(self.juju_paas.check_charm_status, arg)
+ await self.env.run(self.check_charm_status.__call__, arg)
async def test_check_charm_status_multiple_units(self):
- arg = CheckCharmStatusInput(
+ arg = CheckCharmStatusImpl.Input(
application_name=self.application_name,
model_name="model",
vim_uuid="vim-uuid",
@@ -250,7 +252,7 @@
side_effect=["maintenance", "active", "maintenance", "active"]
)
- await self.env.run(self.juju_paas.check_charm_status, arg)
+ await self.env.run(self.check_charm_status.__call__, arg)
class TestDeployCharm(TestJujuPaasActivitiesBase):
@@ -261,23 +263,31 @@
cloud_other = "other"
config = {"domain_name1": "osm.org", "domain_name2": "osm.com"}
charm_info = CharmInfo(app_name, channel, entity_url)
- vdu_instantiate_input_with_constraints_k8s_without_config = VduInstantiateInput(
- vim_content["_id"],
- namespace,
- charm_info,
- VduComputeConstraints(mem=1, cores=1),
- cloud_k8s,
- {},
+ vdu_instantiate_input_with_constraints_k8s_without_config = (
+ VduInstantiateWorkflow.Input(
+ vim_content["_id"],
+ namespace,
+ charm_info,
+ VduComputeConstraints(mem=1, cores=1),
+ cloud_k8s,
+ {},
+ )
)
- vdu_instantiate_input_with_constraints_k8s_with_config = VduInstantiateInput(
- vim_content["_id"],
- namespace,
- charm_info,
- VduComputeConstraints(mem=1, cores=1),
- cloud_k8s,
- config,
+ vdu_instantiate_input_with_constraints_k8s_with_config = (
+ VduInstantiateWorkflow.Input(
+ vim_content["_id"],
+ namespace,
+ charm_info,
+ VduComputeConstraints(mem=1, cores=1),
+ cloud_k8s,
+ config,
+ )
)
+ def setUp(self) -> None:
+ super().setUp()
+ self.deploy_charm = DeployCharmImpl(self.juju_paas)
+
@parameterized.expand(
[
(
@@ -294,7 +304,7 @@
),
(
"k8s_cloud_with_config_without_constraints",
- VduInstantiateInput(
+ VduInstantiateWorkflow.Input(
vim_content["_id"],
namespace,
charm_info,
@@ -307,7 +317,7 @@
),
(
"other_cloud_without_config_with_constraints",
- VduInstantiateInput(
+ VduInstantiateWorkflow.Input(
vim_content["_id"],
namespace,
charm_info,
@@ -320,7 +330,7 @@
),
(
"other_cloud_without_config_without_constraints",
- VduInstantiateInput(
+ VduInstantiateWorkflow.Input(
vim_content["_id"],
namespace,
charm_info,
@@ -337,7 +347,7 @@
self, _, vdu_instantiate_input, expected_constraint, expected_config
):
await self.env.run(
- self.juju_paas.deploy_charm,
+ self.deploy_charm,
vdu_instantiate_input,
)
self.model.deploy.assert_called_once_with(
@@ -352,7 +362,7 @@
self.add_application(self.app_name)
with self.assertRaises(Exception) as err:
await self.env.run(
- self.juju_paas.deploy_charm,
+ self.deploy_charm,
self.vdu_instantiate_input_with_constraints_k8s_without_config,
)
self.model.deploy.assert_not_called()
@@ -365,7 +375,7 @@
self.controller.get_model.side_effect = JujuError()
with self.assertRaises(JujuError):
await self.env.run(
- self.juju_paas.deploy_charm,
+ self.deploy_charm,
self.vdu_instantiate_input_with_constraints_k8s_without_config,
)
self.model.deploy.assert_not_called()
@@ -417,11 +427,16 @@
class TestTestVimConnectivity(TestJujuPaasActivitiesBase):
- test_vim_connectivity_input = TestVimConnectivityInput(vim_content["_id"])
+ test_vim_connectivity_input = TestVimConnectivityImpl.Input(vim_content["_id"])
+
+ def setUp(self) -> None:
+ super().setUp()
+ self.test_vim_connectivity = TestVimConnectivityImpl(self.juju_paas)
async def test_connectivity_nominal_case(self):
await self.env.run(
- self.juju_paas.test_vim_connectivity, self.test_vim_connectivity_input
+ self.test_vim_connectivity,
+ self.test_vim_connectivity_input,
)
async def test_connectivity_raises_exception(self):
@@ -429,5 +444,6 @@
self.juju_paas._get_controller.side_effect = JujuError()
with self.assertRaises(JujuError):
await self.env.run(
- self.juju_paas.test_vim_connectivity, self.test_vim_connectivity_input
+ self.test_vim_connectivity,
+ self.test_vim_connectivity_input,
)
diff --git a/osm_lcm/tests/test_ns_activities.py b/osm_lcm/tests/test_ns_activities.py
index c3176ee..833f440 100644
--- a/osm_lcm/tests/test_ns_activities.py
+++ b/osm_lcm/tests/test_ns_activities.py
@@ -16,17 +16,13 @@
import asynctest
-from osm_common.dataclasses.temporal_dataclasses import (
- GetNsRecordInput,
- GetVnfDetailsInput,
-)
+from osm_lcm.temporal.ns_activities import GetNsRecordImpl, GetVnfDetailsImpl
from osm_common.dbbase import DbException
from temporalio.testing import ActivityEnvironment
-from osm_lcm.temporal.ns_activities import NsOperations
from unittest.mock import Mock
ns_uuid = "00000000-0000-0000-0000-000000000000"
-get_vnf_details_input = GetVnfDetailsInput(ns_uuid=ns_uuid)
+get_vnf_details_input = GetVnfDetailsImpl.Input(ns_uuid=ns_uuid)
sample_vnf_details = [
{
"id": "00000000-0000-0000-0000-000000000000",
@@ -56,13 +52,11 @@
def setUp(self):
self.db = Mock()
self.env = ActivityEnvironment()
- self.ns_operations_activity = NsOperations(self.db)
+ self.get_vnf_details_impl = GetVnfDetailsImpl(self.db)
async def test_activity__succeded__get_expected_result(self):
self.db.get_list.return_value = sample_vnf_details
- result = await self.env.run(
- self.ns_operations_activity.get_vnf_details, get_vnf_details_input
- )
+ result = await self.env.run(self.get_vnf_details_impl, get_vnf_details_input)
self.assertEqual(
result.vnf_details,
@@ -75,22 +69,20 @@
async def test_activity__failed__raise_db_exception(self):
self.db.get_list.side_effect = DbException("not found.")
with self.assertRaises(DbException):
- await self.env.run(
- self.ns_operations_activity.get_vnf_details, get_vnf_details_input
- )
+ await self.env.run(self.get_vnf_details_impl, get_vnf_details_input)
class TestGetNsRecord(asynctest.TestCase):
async def setUp(self):
self.db = Mock()
self.env = ActivityEnvironment()
- self.ns_operations_activity = NsOperations(self.db)
+ self.get_ns_record_impl = GetNsRecordImpl(self.db)
async def test_activity__succeeded__get_expected_result(self):
self.db.get_one.return_value = sample_nsr
activity_result = await self.env.run(
- self.ns_operations_activity.get_ns_record,
- GetNsRecordInput(nsr_uuid=sample_nsr["_id"]),
+ self.get_ns_record_impl,
+ GetNsRecordImpl.Input(nsr_uuid=sample_nsr["_id"]),
)
self.assertEqual(activity_result.nsr, sample_nsr)
@@ -98,6 +90,6 @@
self.db.get_one.side_effect = TestException("Can not connect to Database.")
with self.assertRaises(TestException):
await self.env.run(
- self.ns_operations_activity.get_ns_record,
- GetNsRecordInput(nsr_uuid=sample_nsr["_id"]),
+ self.get_ns_record_impl,
+ GetNsRecordImpl.Input(nsr_uuid=sample_nsr["_id"]),
)
diff --git a/osm_lcm/tests/test_ns_workflows.py b/osm_lcm/tests/test_ns_workflows.py
index e5f38ef..56852df 100644
--- a/osm_lcm/tests/test_ns_workflows.py
+++ b/osm_lcm/tests/test_ns_workflows.py
@@ -18,29 +18,25 @@
from datetime import timedelta
from unittest.mock import Mock, patch
-from osm_common.dataclasses.temporal_dataclasses import (
- GetNsRecordInput,
- GetNsRecordOutput,
- GetVnfDetailsInput,
- GetVnfDetailsOutput,
- LcmOperationState,
- ModelInfo,
- NsLcmOperationInput,
- NsState,
- UpdateLcmOperationStateInput,
- UpdateNsStateInput,
- VnfInstantiateInput,
+from osm_common.temporal_task_queues.task_queues_mappings import LCM_TASK_QUEUE
+from osm_common.temporal.activities.lcm import (
+ UpdateNsLcmOperationState,
)
-from osm_common.temporal_constants import (
- ACTIVITY_CREATE_MODEL,
- ACTIVITY_GET_NS_RECORD,
- ACTIVITY_GET_VNF_DETAILS,
- ACTIVITY_UPDATE_LCM_OPERATION_STATE,
- ACTIVITY_UPDATE_NS_STATE,
- LCM_TASK_QUEUE,
- WORKFLOW_VNF_INSTANTIATE,
+from osm_common.temporal.activities.ns import (
+ GetNsRecord,
+ GetVnfDetails,
+ UpdateNsState,
)
-from osm_lcm.temporal.ns_workflows import NsInstantiateWorkflow
+from osm_common.temporal.activities.paas import (
+ CreateModel,
+)
+from osm_common.temporal.workflows.vnf import VnfInstantiateWorkflow
+from osm_common.temporal.workflows.lcm import LcmOperationWorkflow
+from osm_common.temporal.states import LcmOperationState, NsState
+from osm_lcm.temporal.ns_workflows import (
+ NsInstantiateWorkflow,
+ NsInstantiateWorkflowImpl,
+)
from temporalio import activity, workflow
from temporalio.client import WorkflowFailureError
from temporalio.common import RetryPolicy
@@ -110,61 +106,61 @@
pass
-@activity.defn(name=ACTIVITY_CREATE_MODEL)
-async def mock_create_model(create_model_input: ModelInfo) -> None:
+@activity.defn(name=CreateModel.__name__)
+async def mock_create_model(create_model_input: CreateModel.Input) -> None:
pass
-@activity.defn(name=ACTIVITY_CREATE_MODEL)
-async def mock_create_model_raises(create_model_input: ModelInfo) -> None:
- raise TestException(f"{ACTIVITY_CREATE_MODEL} failed.")
+@activity.defn(name=CreateModel.__name__)
+async def mock_create_model_raises(create_model_input: CreateModel.Input) -> None:
+ raise TestException(f"{CreateModel.__name__} failed.")
-@activity.defn(name=ACTIVITY_GET_VNF_DETAILS)
+@activity.defn(name=GetVnfDetails.__name__)
async def mock_get_vnf_details(
- get_vnf_details_input: GetVnfDetailsInput,
-) -> GetVnfDetailsOutput:
- return GetVnfDetailsOutput(vnf_details=vnf_details)
+ get_vnf_details_input: GetVnfDetails.Input,
+) -> GetVnfDetails.Output:
+ return GetVnfDetails.Output(vnf_details=vnf_details)
-@activity.defn(name=ACTIVITY_GET_VNF_DETAILS)
+@activity.defn(name=GetVnfDetails.__name__)
async def mock_get_vnf_details_raises(
- et_vnf_details_input: GetVnfDetailsInput,
-) -> GetVnfDetailsOutput:
- raise TestException(f"{ACTIVITY_GET_VNF_DETAILS} failed.")
+ et_vnf_details_input: GetVnfDetails.Input,
+) -> GetVnfDetails.Output:
+ raise TestException(f"{GetVnfDetails.__name__} failed.")
-@activity.defn(name=ACTIVITY_GET_NS_RECORD)
+@activity.defn(name=GetNsRecord.__name__)
async def mock_get_ns_record(
- get_ns_record_input: GetNsRecordInput,
-) -> GetNsRecordOutput:
- return GetNsRecordOutput(nsr=sample_nsr)
+ get_ns_record_input: GetNsRecord.Input,
+) -> GetNsRecord.Output:
+ return GetNsRecord.Output(nsr=sample_nsr)
-@activity.defn(name=ACTIVITY_GET_NS_RECORD)
+@activity.defn(name=GetNsRecord.__name__)
async def mock_get_ns_record_raise_exception(
- get_ns_record_input: GetNsRecordInput,
-) -> GetNsRecordOutput:
- raise TestException(f"{ACTIVITY_GET_NS_RECORD} failed.")
+ get_ns_record_input: GetNsRecord.Input,
+) -> GetNsRecord.Output:
+ raise TestException(f"{GetNsRecord.__name__} failed.")
-@workflow.defn(name=WORKFLOW_VNF_INSTANTIATE, sandboxed=SANDBOXED)
+@workflow.defn(name=VnfInstantiateWorkflow.__name__, sandboxed=SANDBOXED)
class MockVnfInstantiateWorkflow:
@workflow.run
- async def run(self, input: VnfInstantiateInput) -> None:
+ async def run(self, input: VnfInstantiateWorkflow.Input) -> None:
pass
-@workflow.defn(name=WORKFLOW_VNF_INSTANTIATE, sandboxed=SANDBOXED)
+@workflow.defn(name=VnfInstantiateWorkflow.__name__, sandboxed=SANDBOXED)
class MockVnfInstantiateWorkflowFailed:
@workflow.run
- async def run(self, input: VnfInstantiateInput) -> None:
+ async def run(self, input: VnfInstantiateWorkflow.Input) -> None:
raise ChildWorkflowError(
- message=f"{WORKFLOW_VNF_INSTANTIATE} child workflow failed.",
+ message=f"{VnfInstantiateWorkflow.__name__} child workflow failed.",
namespace="default",
workflow_id="123",
run_id="1",
- workflow_type=WORKFLOW_VNF_INSTANTIATE,
+ workflow_type=VnfInstantiateWorkflow.__name__,
initiated_event_id=0,
started_event_id=0,
retry_state=RetryState.NON_RETRYABLE_FAILURE,
@@ -172,11 +168,11 @@
@patch(
- "osm_lcm.temporal.ns_workflows.NsInstantiateWorkflow._get_namespace",
+ "osm_lcm.temporal.ns_workflows.NsInstantiateWorkflowImpl._get_namespace",
new=mock_get_namespace,
)
class TestNsInstantiateWorkflow(asynctest.TestCase):
- input = NsLcmOperationInput(
+ input = LcmOperationWorkflow.Input(
nslcmop={
"_id": "1234",
"nsInstanceId": ns_uuid,
@@ -184,15 +180,15 @@
}
)
- @activity.defn(name=ACTIVITY_UPDATE_LCM_OPERATION_STATE)
+ @activity.defn(name=UpdateNsLcmOperationState.__name__)
async def mock_update_lcm_operation_state(
self,
- data: UpdateLcmOperationStateInput,
+ data: UpdateNsLcmOperationState.Input,
) -> None:
self.mock_update_lcm_operation_state_tracker(data)
- @activity.defn(name=ACTIVITY_UPDATE_NS_STATE)
- async def mock_update_ns_state(self, data: UpdateNsStateInput) -> None:
+ @activity.defn(name=UpdateNsState.__name__)
+ async def mock_update_ns_state(self, data: UpdateNsState.Input) -> None:
self.mock_update_ns_state_tracker(data)
async def setUp(self):
@@ -200,7 +196,7 @@
self.client = self.env.client
self.mock_update_lcm_operation_state_tracker = Mock()
self.mock_update_ns_state_tracker = Mock()
- self.workflows = [NsInstantiateWorkflow, MockVnfInstantiateWorkflow]
+ self.workflows = [NsInstantiateWorkflowImpl, MockVnfInstantiateWorkflow]
self.task_queue = LCM_TASK_QUEUE
mock_get_namespace.return_value = model_name
@@ -215,7 +211,7 @@
async def execute_workflow(self):
return await self.client.execute_workflow(
- NsInstantiateWorkflow,
+ NsInstantiateWorkflow.__name__,
arg=self.input,
id=self.input.nslcmop["nsInstanceId"],
task_queue=self.task_queue,
@@ -329,7 +325,7 @@
await self.execute_workflow()
self.assert_ns_error_details(
self.mock_update_ns_state_tracker.call_args_list,
- ["TestException: create-model failed."],
+ [f"TestException: {CreateModel.__name__} failed."],
)
async def test_instantiate_workflow__get_ns_record_activity_failed__error_details_expected(
@@ -349,7 +345,7 @@
await self.execute_workflow()
self.assert_ns_error_details(
self.mock_update_ns_state_tracker.call_args_list,
- ["TestException: get-ns-record failed."],
+ [f"TestException: {GetNsRecord.__name__} failed."],
)
async def test_instantiate_workflow__get_ns_record_activity_failed__raise_activity_error(
@@ -386,7 +382,7 @@
await self.execute_workflow()
self.assert_ns_error_details(
self.mock_update_ns_state_tracker.call_args_list,
- ["TestException: get-vnf-details failed."],
+ [f"TestException: {GetVnfDetails.__name__} failed."],
)
async def test_instantiate_workflow__get_vnf_details_activity_failed__raise_activity_error(
@@ -406,7 +402,7 @@
await self.execute_workflow()
self.assertTrue(isinstance(err.exception.cause, ActivityError))
- @patch("osm_lcm.temporal.ns_workflows.NsInstantiateWorkflow.get_vnf_config")
+ @patch("osm_lcm.temporal.ns_workflows.NsInstantiateWorkflowImpl.get_vnf_config")
async def test_instantiate_workflow__get_vnf_config_failed__workflow_times_out(
self, mock_get_vnf_config
):
@@ -426,7 +422,7 @@
await self.execute_workflow()
self.assertTrue(isinstance(err.exception.cause, TimeoutError))
- @patch("osm_lcm.temporal.ns_workflows.NsInstantiateWorkflow.get_vnf_config")
+ @patch("osm_lcm.temporal.ns_workflows.NsInstantiateWorkflowImpl.get_vnf_config")
async def test_instantiate_workflow__get_vnf_config_failed__update_ns_state(
self, mock_get_vnf_config
):
@@ -448,7 +444,7 @@
self.mock_update_ns_state_tracker.call_args_list, [NsState.INSTANTIATED]
)
- @patch("osm_lcm.temporal.ns_workflows.NsInstantiateWorkflow.get_vnf_config")
+ @patch("osm_lcm.temporal.ns_workflows.NsInstantiateWorkflowImpl.get_vnf_config")
async def test_instantiate_workflow__get_vnf_config_failed__update_lcm_op_state(
self, mock_get_vnf_config
):
@@ -484,7 +480,7 @@
with self.assertRaises(WorkflowFailureError) as err:
async with self.env, self.get_worker(
self.task_queue,
- [NsInstantiateWorkflow, MockVnfInstantiateWorkflowFailed],
+ [NsInstantiateWorkflowImpl, MockVnfInstantiateWorkflowFailed],
activities,
):
await self.execute_workflow()
@@ -503,13 +499,13 @@
with self.assertRaises(WorkflowFailureError):
async with self.env, self.get_worker(
self.task_queue,
- [NsInstantiateWorkflow, MockVnfInstantiateWorkflowFailed],
+ [NsInstantiateWorkflowImpl, MockVnfInstantiateWorkflowFailed],
activities,
):
await self.execute_workflow()
self.assert_ns_error_details(
self.mock_update_ns_state_tracker.call_args_list,
- ["vnf-instantiate child workflow failed."],
+ [f"{VnfInstantiateWorkflow.__name__} child workflow failed."],
)
async def test_instantiate_workflow__child_wf_failed__update_ns_state(
@@ -525,7 +521,7 @@
with self.assertRaises(WorkflowFailureError):
async with self.env, self.get_worker(
self.task_queue,
- [NsInstantiateWorkflow, MockVnfInstantiateWorkflowFailed],
+ [NsInstantiateWorkflowImpl, MockVnfInstantiateWorkflowFailed],
activities,
):
await self.execute_workflow()
@@ -547,7 +543,7 @@
with self.assertRaises(WorkflowFailureError):
async with self.env, self.get_worker(
self.task_queue,
- [NsInstantiateWorkflow, MockVnfInstantiateWorkflowFailed],
+ [NsInstantiateWorkflowImpl, MockVnfInstantiateWorkflowFailed],
activities,
):
await self.execute_workflow()
@@ -588,7 +584,7 @@
}
],
}
- result = NsInstantiateWorkflow.get_vnf_config(
+ result = NsInstantiateWorkflowImpl.get_vnf_config(
vnf_member_index_ref_1, sample_nsr
)
self.assertEqual(result, expected_config)
@@ -596,15 +592,15 @@
def test_vnf_config__nsr_does_not_have_config__expected_no_config(self):
nsr = copy.deepcopy(sample_nsr)
nsr["instantiate_params"] = {}
- result = NsInstantiateWorkflow.get_vnf_config(vnf_member_index_ref_1, nsr)
+ result = NsInstantiateWorkflowImpl.get_vnf_config(vnf_member_index_ref_1, nsr)
self.assertEqual(result, {})
def test_vnf_config__empty_vnf_member_index_ref__expected_no_config(self):
- result = NsInstantiateWorkflow.get_vnf_config("", sample_nsr)
+ result = NsInstantiateWorkflowImpl.get_vnf_config("", sample_nsr)
self.assertEqual(result, {})
def test_vnf_config__nsr_config_does_not_match_with_vnf__expected_no_config(self):
- result = NsInstantiateWorkflow.get_vnf_config(
+ result = NsInstantiateWorkflowImpl.get_vnf_config(
vnf_member_index_ref_2, sample_nsr
)
self.assertEqual(result, {})
diff --git a/osm_lcm/tests/test_vdu_workflow.py b/osm_lcm/tests/test_vdu_workflow.py
index 333f1de..988618f 100644
--- a/osm_lcm/tests/test_vdu_workflow.py
+++ b/osm_lcm/tests/test_vdu_workflow.py
@@ -17,17 +17,13 @@
import asynctest
from datetime import timedelta
-from osm_common.dataclasses.temporal_dataclasses import (
- CharmInfo,
- VduInstantiateInput,
- VduComputeConstraints,
+from osm_common.temporal_task_queues.task_queues_mappings import LCM_TASK_QUEUE
+from osm_common.temporal.activities.paas import (
+ DeployCharm,
+ CheckCharmStatus,
)
-from osm_common.temporal_constants import (
- ACTIVITY_DEPLOY_CHARM,
- ACTIVITY_CHECK_CHARM_STATUS,
- LCM_TASK_QUEUE,
-)
-from osm_lcm.temporal.vdu_workflows import CheckCharmStatusInput, VduInstantiateWorkflow
+from osm_common.temporal.dataclasses_common import CharmInfo, VduComputeConstraints
+from osm_lcm.temporal.vdu_workflows import VduInstantiateWorkflowImpl
from temporalio import activity
from temporalio.client import WorkflowFailureError
from temporalio.exceptions import (
@@ -44,26 +40,26 @@
pass
-@activity.defn(name=ACTIVITY_DEPLOY_CHARM)
-async def deploy_charm_mocked(deploy_charm_input: VduInstantiateInput) -> None:
+@activity.defn(name=DeployCharm.__name__)
+async def deploy_charm_mocked(deploy_charm_input: DeployCharm.Input) -> None:
pass
-@activity.defn(name=ACTIVITY_DEPLOY_CHARM)
-async def deploy_charm_mocked_raises(deploy_charm_input: VduInstantiateInput) -> None:
- raise TestException(f"{ACTIVITY_DEPLOY_CHARM} failed.")
+@activity.defn(name=DeployCharm.__name__)
+async def deploy_charm_mocked_raises(deploy_charm_input: DeployCharm.Input) -> None:
+ raise TestException(f"{DeployCharm.__name__} failed.")
-@activity.defn(name=ACTIVITY_CHECK_CHARM_STATUS)
-async def check_charm_status_mocked(check_charm_status: CheckCharmStatusInput) -> None:
+@activity.defn(name=CheckCharmStatus.__name__)
+async def check_charm_status_mocked(check_charm_status: CheckCharmStatus.Input) -> None:
pass
-@activity.defn(name=ACTIVITY_CHECK_CHARM_STATUS)
+@activity.defn(name=CheckCharmStatus.__name__)
async def check_charm_status_mocked_raises(
- check_charm_status: CheckCharmStatusInput,
+ check_charm_status: CheckCharmStatus.Input,
) -> None:
- raise TestException(f"{ACTIVITY_CHECK_CHARM_STATUS} failed.")
+ raise TestException(f"{CheckCharmStatus.__name__} failed.")
class TestVduWorkflows(asynctest.TestCase):
@@ -77,10 +73,10 @@
config = {"domain_name1": "osm.org", "domain_name2": "osm.com"}
constraints = VduComputeConstraints(mem=1, cores=1)
charm_info = CharmInfo(app_name, channel, entity_url)
- vdu_instantiate_input_without_config = VduInstantiateInput(
+ vdu_instantiate_input_without_config = VduInstantiateWorkflowImpl.Input(
vim_id, namespace, charm_info, constraints, cloud, {}
)
- vdu_instantiate_input_with_config = VduInstantiateInput(
+ vdu_instantiate_input_with_config = VduInstantiateWorkflowImpl.Input(
vim_id, namespace, charm_info, constraints, cloud, config
)
workflow_id = namespace + "-" + app_name
@@ -93,7 +89,7 @@
return Worker(
self.client,
task_queue=self.task_queue_name,
- workflows=[VduInstantiateWorkflow],
+ workflows=[VduInstantiateWorkflowImpl],
activities=activities,
debug_mode=True,
)
@@ -102,7 +98,7 @@
activities = [deploy_charm_mocked, check_charm_status_mocked]
async with self.env, self.get_worker(activities):
await self.client.execute_workflow(
- VduInstantiateWorkflow.run,
+ VduInstantiateWorkflowImpl.run,
arg=self.vdu_instantiate_input_without_config,
id=self.workflow_id,
task_queue=self.task_queue_name,
@@ -114,7 +110,7 @@
activities = [deploy_charm_mocked, check_charm_status_mocked]
async with self.env, self.get_worker(activities):
await self.client.execute_workflow(
- VduInstantiateWorkflow.run,
+ VduInstantiateWorkflowImpl.run,
arg=self.vdu_instantiate_input_with_config,
id=self.workflow_id,
task_queue=self.task_queue_name,
@@ -127,7 +123,7 @@
async with self.env, self.get_worker(activities):
with self.assertRaises(WorkflowFailureError) as err:
await self.client.execute_workflow(
- VduInstantiateWorkflow.run,
+ VduInstantiateWorkflowImpl.run,
arg=self.vdu_instantiate_input_without_config,
id=self.workflow_id,
task_queue=self.task_queue_name,
@@ -141,7 +137,7 @@
async with self.env, self.get_worker(activities):
with self.assertRaises(WorkflowFailureError) as err:
await self.client.execute_workflow(
- VduInstantiateWorkflow.run,
+ VduInstantiateWorkflowImpl.run,
arg=self.vdu_instantiate_input_without_config,
id=self.workflow_id,
task_queue=self.task_queue_name,
@@ -149,7 +145,8 @@
execution_timeout=EXECUTION_TIMEOUT,
)
self.assertEqual(
- str(err.exception.cause.cause), "TestException: deploy-charm failed."
+ str(err.exception.cause.cause),
+ f"TestException: {DeployCharm.__name__} failed.",
)
async def test_vdu_instantiate__check_status__raise_activity_error(self):
@@ -157,7 +154,7 @@
async with self.env, self.get_worker(activities):
with self.assertRaises(WorkflowFailureError) as err:
await self.client.execute_workflow(
- VduInstantiateWorkflow.run,
+ VduInstantiateWorkflowImpl.run,
arg=self.vdu_instantiate_input_without_config,
id=self.workflow_id,
task_queue=self.task_queue_name,
@@ -171,7 +168,7 @@
async with self.env, self.get_worker(activities):
with self.assertRaises(WorkflowFailureError) as err:
await self.client.execute_workflow(
- VduInstantiateWorkflow.run,
+ VduInstantiateWorkflowImpl.run,
arg=self.vdu_instantiate_input_without_config,
id=self.workflow_id,
task_queue=self.task_queue_name,
@@ -180,5 +177,5 @@
)
self.assertEqual(
str(err.exception.cause.cause),
- "TestException: check-charm-status failed.",
+ f"TestException: {CheckCharmStatus.__name__} failed.",
)
diff --git a/osm_lcm/tests/test_vim_workflows.py b/osm_lcm/tests/test_vim_workflows.py
index 9c43895..8be573e 100644
--- a/osm_lcm/tests/test_vim_workflows.py
+++ b/osm_lcm/tests/test_vim_workflows.py
@@ -18,29 +18,26 @@
from datetime import timedelta
from unittest.mock import Mock
-from osm_common.dataclasses.temporal_dataclasses import (
- DeleteVimInput,
- TestVimConnectivityInput,
- UpdateVimOperationStateInput,
- UpdateVimStateInput,
- VimOperationInput,
+from osm_common.temporal_task_queues.task_queues_mappings import LCM_TASK_QUEUE
+from osm_common.temporal.activities.paas import (
+ TestVimConnectivity,
+)
+from osm_common.temporal.activities.vim import (
+ UpdateVimState,
+ UpdateVimOperationState,
+ DeleteVimRecord,
+)
+from osm_common.temporal.states import (
VimState,
VimOperationState,
)
-from osm_common.temporal_constants import (
- ACTIVITY_TEST_VIM_CONNECTIVITY,
- ACTIVITY_UPDATE_VIM_OPERATION_STATE,
- ACTIVITY_UPDATE_VIM_STATE,
- ACTIVITY_DELETE_VIM,
- LCM_TASK_QUEUE,
- WORKFLOW_VIM_CREATE,
- WORKFLOW_VIM_UPDATE,
- WORKFLOW_VIM_DELETE,
-)
from osm_lcm.temporal.vim_workflows import (
VimCreateWorkflow,
VimUpdateWorkflow,
VimDeleteWorkflow,
+ VimCreateWorkflowImpl,
+ VimUpdateWorkflowImpl,
+ VimDeleteWorkflowImpl,
)
from parameterized import parameterized_class
from temporalio import activity
@@ -56,22 +53,22 @@
pass
-@activity.defn(name=ACTIVITY_TEST_VIM_CONNECTIVITY)
+@activity.defn(name=TestVimConnectivity.__name__)
async def mock_test_vim_connectivity(
- test_connectivity_input: TestVimConnectivityInput,
+ test_connectivity_input: TestVimConnectivity.Input,
) -> None:
pass
-@activity.defn(name=ACTIVITY_TEST_VIM_CONNECTIVITY)
+@activity.defn(name=TestVimConnectivity.__name__)
async def mock_test_vim_connectivity_raises(
- test_connectivity_input: TestVimConnectivityInput,
+ test_connectivity_input: TestVimConnectivity.Input,
) -> None:
raise TestException("Test exception")
-@activity.defn(name=ACTIVITY_DELETE_VIM)
-async def mock_delete_vim_record_raises(data: DeleteVimInput) -> None:
+@activity.defn(name=DeleteVimRecord.__name__)
+async def mock_delete_vim_record_raises(data: DeleteVimRecord.Input) -> None:
raise TestException("Test exception")
@@ -79,32 +76,32 @@
task_queue_name = LCM_TASK_QUEUE
vim_id = "some-vim-uuid"
worflow_id = vim_id
- vim_operation_input = VimOperationInput(vim_id, "op_id")
+ vim_operation_input = VimCreateWorkflow.Input(vim_id, "op_id")
- @activity.defn(name=ACTIVITY_UPDATE_VIM_STATE)
- async def mock_update_vim_state(self, data: UpdateVimStateInput) -> None:
+ @activity.defn(name=UpdateVimState.__name__)
+ async def mock_update_vim_state(self, data: UpdateVimState.Input) -> None:
self.mock_update_vim_state_tracker(data)
- @activity.defn(name=ACTIVITY_UPDATE_VIM_STATE)
- async def mock_update_vim_state_raises(self, data: UpdateVimStateInput) -> None:
+ @activity.defn(name=UpdateVimState.__name__)
+ async def mock_update_vim_state_raises(self, data: UpdateVimState.Input) -> None:
self.mock_update_vim_state_tracker(data)
raise TestException("Test exception")
- @activity.defn(name=ACTIVITY_UPDATE_VIM_OPERATION_STATE)
+ @activity.defn(name=UpdateVimOperationState.__name__)
async def mock_update_vim_operation_state(
- self, data: UpdateVimOperationStateInput
+ self, data: UpdateVimOperationState.Input
) -> None:
self.mock_update_vim_operation_state_tracker(data)
- @activity.defn(name=ACTIVITY_UPDATE_VIM_OPERATION_STATE)
+ @activity.defn(name=UpdateVimOperationState.__name__)
async def mock_update_vim_operation_state_raises(
- self, data: UpdateVimOperationStateInput
+ self, data: UpdateVimOperationState.Input
) -> None:
self.mock_update_vim_operation_state_tracker(data)
raise TestException("Test exception")
- @activity.defn(name=ACTIVITY_DELETE_VIM)
- async def mock_delete_vim_record(self, data: DeleteVimInput) -> None:
+ @activity.defn(name=DeleteVimRecord.__name__)
+ async def mock_delete_vim_record(self, data: DeleteVimRecord.Input) -> None:
self.mock_delete_vim_record_tracker(data)
async def setUp(self):
@@ -118,7 +115,11 @@
return Worker(
self.client,
task_queue=self.task_queue_name,
- workflows=[VimCreateWorkflow, VimUpdateWorkflow, VimDeleteWorkflow],
+ workflows=[
+ VimCreateWorkflowImpl,
+ VimUpdateWorkflowImpl,
+ VimDeleteWorkflowImpl,
+ ],
activities=activities,
debug_mode=True,
)
@@ -146,8 +147,8 @@
@parameterized_class(
[
- {"workflow_name": WORKFLOW_VIM_CREATE},
- {"workflow_name": WORKFLOW_VIM_UPDATE},
+ {"workflow_name": VimCreateWorkflow.__name__},
+ {"workflow_name": VimUpdateWorkflow.__name__},
]
)
class TestVimWorkflow(TestVimWorkflowsBase):
@@ -304,7 +305,7 @@
activities = [self.mock_delete_vim_record]
async with self.env, self.get_worker(activities):
result = await self.client.execute_workflow(
- WORKFLOW_VIM_DELETE,
+ VimDeleteWorkflow.__name__,
arg=self.vim_operation_input,
id=self.worflow_id,
task_queue=self.task_queue_name,
@@ -319,7 +320,7 @@
async with self.env, self.get_worker(activities):
with self.assertRaises(WorkflowFailureError):
result = await self.client.execute_workflow(
- WORKFLOW_VIM_DELETE,
+ VimDeleteWorkflow.__name__,
arg=self.vim_operation_input,
id=self.worflow_id,
task_queue=self.task_queue_name,
diff --git a/osm_lcm/tests/test_vnf_activities.py b/osm_lcm/tests/test_vnf_activities.py
index 0c346ee..1f34563 100644
--- a/osm_lcm/tests/test_vnf_activities.py
+++ b/osm_lcm/tests/test_vnf_activities.py
@@ -19,23 +19,20 @@
from unittest import TestCase
from unittest.mock import Mock, patch
-from osm_common.dataclasses.temporal_dataclasses import (
- ChangeVnfInstantiationStateInput,
- ChangeVnfStateInput,
- GetTaskQueueInput,
- GetVimCloudInput,
- GetVnfDescriptorInput,
- GetVnfRecordInput,
- SetVnfModelInput,
- VnfInstantiationState,
- VnfState,
- VduComputeConstraints,
-)
from osm_common.dbbase import DbException
-from osm_common.temporal_constants import (
- LCM_TASK_QUEUE,
+from osm_common.temporal_task_queues.task_queues_mappings import LCM_TASK_QUEUE
+from osm_lcm.temporal.vnf_activities import (
+ ChangeVnfInstantiationStateImpl,
+ ChangeVnfStateImpl,
+ GetTaskQueueImpl,
+ GetVimCloudImpl,
+ GetVnfDescriptorImpl,
+ GetVnfRecordImpl,
+ SetVnfModelImpl,
+ VnfSpecifications,
)
-from osm_lcm.temporal.vnf_activities import VnfDbActivity, VnfOperations
+from osm_common.temporal.dataclasses_common import VduComputeConstraints
+from osm_common.temporal.states import VnfState, VnfInstantiationState
from temporalio.testing import ActivityEnvironment
@@ -43,7 +40,7 @@
vnfd_uuid = "97784f19-d254-4252-946c-cf92d85443ca"
vim_uuid = "a64f7c6c-bc27-4ec8-b664-5500a3324eca"
model_name = "my-model-name"
-set_vnf_model_input = SetVnfModelInput(vnfr_uuid=vnfr_uuid, model_name=model_name)
+set_vnf_model_input = SetVnfModelImpl.Input(vnfr_uuid=vnfr_uuid, model_name=model_name)
cloud = "microk8s"
nsr_uuid = "583726d4-957d-47f5-8df5-199456f7afd0"
sample_vim_record = {
@@ -133,35 +130,33 @@
def setUp(self):
self.db = Mock()
self.env = ActivityEnvironment()
- self.vnf_db_activity = VnfDbActivity(self.db)
+ self.change_vnf_state = ChangeVnfStateImpl(self.db)
+ self.change_vnf_instantiation_state = ChangeVnfInstantiationStateImpl(self.db)
+ self.set_vnf_model = SetVnfModelImpl(self.db)
async def test_change_vnf_state__successful__db_updated_as_expected(self):
vnf_state = VnfState.STOPPED
- change_vnf_state_input = ChangeVnfStateInput(vnfr_uuid, vnf_state)
- await self.env.run(
- self.vnf_db_activity.change_vnf_state, change_vnf_state_input
- )
+ change_vnf_state_input = ChangeVnfStateImpl.Input(vnfr_uuid, vnf_state)
+ await self.env.run(self.change_vnf_state, change_vnf_state_input)
self.db.set_one.assert_called_with(
"vnfrs", {"_id": vnfr_uuid}, {"vnfState": vnf_state.name}
)
async def test_change_vnf_state__failed__raises_db_exception(self):
- change_vnf_state_input = ChangeVnfStateInput(vnfr_uuid, VnfState.STARTED)
+ change_vnf_state_input = ChangeVnfStateImpl.Input(vnfr_uuid, VnfState.STARTED)
self.db.set_one.side_effect = DbException("not found")
with self.assertRaises(DbException):
- await self.env.run(
- self.vnf_db_activity.change_vnf_state, change_vnf_state_input
- )
+ await self.env.run(self.change_vnf_state, change_vnf_state_input)
async def test_change_vnf_instantiation_state__successful__db_updated_as_expected(
self,
):
instantiation_state = VnfInstantiationState.NOT_INSTANTIATED
- change_instantiation_input = ChangeVnfInstantiationStateInput(
+ change_instantiation_input = ChangeVnfInstantiationStateImpl.Input(
vnfr_uuid, instantiation_state
)
await self.env.run(
- self.vnf_db_activity.change_vnf_instantiation_state,
+ self.change_vnf_instantiation_state,
change_instantiation_input,
)
self.db.set_one.assert_called_with(
@@ -171,18 +166,18 @@
)
async def test_change_vnf_instantiation_state__failed__raises_db_exception(self):
- change_instantiation_input = ChangeVnfInstantiationStateInput(
+ change_instantiation_input = ChangeVnfInstantiationStateImpl.Input(
vnfr_uuid, VnfInstantiationState.INSTANTIATED
)
self.db.set_one.side_effect = DbException("not found")
with self.assertRaises(DbException):
await self.env.run(
- self.vnf_db_activity.change_vnf_instantiation_state,
+ self.change_vnf_instantiation_state,
change_instantiation_input,
)
async def test_set_vnf_model__successful__db_updated_as_expected(self):
- await self.env.run(self.vnf_db_activity.set_vnf_model, set_vnf_model_input)
+ await self.env.run(self.set_vnf_model, set_vnf_model_input)
self.db.set_one.assert_called_with(
"vnfrs", {"_id": vnfr_uuid}, {"namespace": model_name}
)
@@ -190,20 +185,20 @@
async def test_set_vnf_model__failed__raises_db_exception(self):
self.db.set_one.side_effect = DbException("not found")
with self.assertRaises(DbException):
- await self.env.run(self.vnf_db_activity.set_vnf_model, set_vnf_model_input)
+ await self.env.run(self.set_vnf_model, set_vnf_model_input)
class TestGetTaskQueue(asynctest.TestCase):
async def setUp(self):
self.db = Mock()
- self.vnf_operations_instance = VnfOperations(self.db)
+ self.get_task_queue = GetTaskQueueImpl(self.db)
self.env = ActivityEnvironment()
- self.get_task_queue_input = GetTaskQueueInput(vnfr_uuid=sample_vnfr["id"])
+ self.get_task_queue_input = GetTaskQueueImpl.Input(vnfr_uuid=sample_vnfr["id"])
async def test_activity__succeeded__get_expected_task_queue(self):
self.db.get_one.side_effect = [sample_vnfr, sample_vim_record]
activity_result = await self.env.run(
- self.vnf_operations_instance.get_task_queue,
+ self.get_task_queue,
self.get_task_queue_input,
)
self.assertEqual(activity_result.task_queue, LCM_TASK_QUEUE)
@@ -212,7 +207,7 @@
self.db.get_one.side_effect = DbException("not found")
with self.assertRaises(DbException):
await self.env.run(
- self.vnf_operations_instance.get_task_queue,
+ self.get_task_queue,
self.get_task_queue_input,
)
@@ -222,7 +217,7 @@
self.db.get_one.side_effect = [sample_vnfr, vim_record]
with self.assertRaises(KeyError):
await self.env.run(
- self.vnf_operations_instance.get_task_queue,
+ self.get_task_queue,
self.get_task_queue_input,
)
@@ -230,14 +225,14 @@
class TestGetVnfDescriptor(asynctest.TestCase):
async def setUp(self):
self.db = Mock()
- self.vnf_operations_instance = VnfOperations(self.db)
+ self.get_vnf_descriptor = GetVnfDescriptorImpl(self.db)
self.env = ActivityEnvironment()
async def test_activity__succeeded__get_expected_vnfd(self):
self.db.get_one.return_value = sample_vnfd
activity_result = await self.env.run(
- self.vnf_operations_instance.get_vnf_descriptor,
- GetVnfDescriptorInput(vnfd_uuid=vnfd_uuid),
+ self.get_vnf_descriptor,
+ GetVnfDescriptorImpl.Input(vnfd_uuid=vnfd_uuid),
)
self.assertEqual(activity_result.vnfd, sample_vnfd)
@@ -245,22 +240,22 @@
self.db.get_one.side_effect = DbException("Can not connect to Database.")
with self.assertRaises(DbException):
await self.env.run(
- self.vnf_operations_instance.get_vnf_descriptor,
- GetVnfDescriptorInput(vnfd_uuid=vnfd_uuid),
+ self.get_vnf_descriptor,
+ GetVnfDescriptorImpl.Input(vnfd_uuid=vnfd_uuid),
)
class TestGetVnfRecord(asynctest.TestCase):
async def setUp(self):
self.db = Mock()
- self.vnf_operations_instance = VnfOperations(self.db)
+ self.get_vnf_record = GetVnfRecordImpl(self.db)
self.env = ActivityEnvironment()
async def test_activity__succeeded__get_expected_vnfr(self):
self.db.get_one.return_value = sample_vnfr
activity_result = await self.env.run(
- self.vnf_operations_instance.get_vnf_record,
- GetVnfRecordInput(vnfr_uuid=vnfr_uuid),
+ self.get_vnf_record,
+ GetVnfRecordImpl.Input(vnfr_uuid=vnfr_uuid),
)
self.assertEqual(activity_result.vnfr, sample_vnfr)
@@ -268,22 +263,22 @@
self.db.get_one.side_effect = DbException("Can not connect to Database.")
with self.assertRaises(DbException):
await self.env.run(
- self.vnf_operations_instance.get_vnf_record,
- GetVnfRecordInput(vnfr_uuid=vnfr_uuid),
+ self.get_vnf_record,
+ GetVnfRecordImpl.Input(vnfr_uuid=vnfr_uuid),
)
class TestGetVimCloud(asynctest.TestCase):
async def setUp(self):
self.db = Mock()
- self.vnf_operations_instance = VnfOperations(self.db)
+ self.get_vim_cloud = GetVimCloudImpl(self.db)
self.env = ActivityEnvironment()
async def test_activity__succeeded__get_vim_cloud(self):
self.db.get_one.side_effect = [sample_vnfr, sample_vim_record]
activity_result = await self.env.run(
- self.vnf_operations_instance.get_vim_cloud,
- GetVimCloudInput(vnfr_uuid=sample_vnfr["id"]),
+ self.get_vim_cloud,
+ GetVimCloudImpl.Input(vnfr_uuid=sample_vnfr["id"]),
)
self.assertEqual(activity_result.cloud, cloud)
@@ -292,8 +287,8 @@
vim_record["config"].pop("cloud")
self.db.get_one.side_effect = [sample_vnfr, vim_record]
activity_result = await self.env.run(
- self.vnf_operations_instance.get_vim_cloud,
- GetVimCloudInput(vnfr_uuid=sample_vnfr["id"]),
+ self.get_vim_cloud,
+ GetVimCloudImpl.Input(vnfr_uuid=sample_vnfr["id"]),
)
self.assertEqual(activity_result.cloud, "")
@@ -301,8 +296,8 @@
self.db.get_one.side_effect = DbException("Can not connect to Database.")
with self.assertRaises(DbException):
await self.env.run(
- self.vnf_operations_instance.get_vim_cloud,
- GetVimCloudInput(vnfr_uuid=sample_vnfr["id"]),
+ self.get_vim_cloud,
+ GetVimCloudImpl.Input(vnfr_uuid=sample_vnfr["id"]),
)
async def test_activity__wrong_vim_record__raise_key_error(self):
@@ -311,30 +306,30 @@
self.db.get_one.side_effect = [sample_vnfr, vim_record]
with self.assertRaises(KeyError):
await self.env.run(
- self.vnf_operations_instance.get_vim_cloud,
- GetVimCloudInput(vnfr_uuid=sample_vnfr["id"]),
+ self.get_vim_cloud,
+ GetVimCloudImpl.Input(vnfr_uuid=sample_vnfr["id"]),
)
class TestGetVduInstantiateInfoMethods(TestCase):
def test_get_flavor_details__successful__get_flavor(self):
compute_desc_id = "compute-id-1"
- result = VnfOperations._get_flavor_details(compute_desc_id, sample_vnfd)
+ result = VnfSpecifications._get_flavor_details(compute_desc_id, sample_vnfd)
self.assertEqual(result, flavor_1)
def test_get_flavor_details__empty_compute_desc__flavor_is_none(self):
compute_desc_id = ""
- result = VnfOperations._get_flavor_details(compute_desc_id, sample_vnfd)
+ result = VnfSpecifications._get_flavor_details(compute_desc_id, sample_vnfd)
self.assertEqual(result, None)
def test_get_flavor_details__compute_desc_not_found__flavor_is_none(self):
compute_desc_id = "compute-id-5"
- result = VnfOperations._get_flavor_details(compute_desc_id, sample_vnfd)
+ result = VnfSpecifications._get_flavor_details(compute_desc_id, sample_vnfd)
self.assertEqual(result, None)
def test_get_flavor_details__empty_vnfd__flavor_is_none(self):
compute_desc_id = "compute-id-5"
- result = VnfOperations._get_flavor_details(compute_desc_id, {})
+ result = VnfSpecifications._get_flavor_details(compute_desc_id, {})
self.assertEqual(result, None)
def test_get_flavor_details__wrong_vnfd_format__flavor_is_none(self):
@@ -348,47 +343,47 @@
}
],
}
- result = VnfOperations._get_flavor_details(compute_desc_id, sample_vnfd)
+ result = VnfSpecifications._get_flavor_details(compute_desc_id, sample_vnfd)
self.assertEqual(result, None)
- @patch("osm_lcm.temporal.vnf_activities.VnfOperations._get_flavor_details")
+ @patch("osm_lcm.temporal.vnf_activities.VnfSpecifications._get_flavor_details")
def test_get_compute_constraints__succeeded__get_constraints(
self, mock_get_flavor_details
):
mock_get_flavor_details.return_value = flavor_1
- result = VnfOperations.get_compute_constraints(vdu, sample_vnfd)
+ result = VnfSpecifications.get_compute_constraints(vdu, sample_vnfd)
self.assertEqual(VduComputeConstraints(cores=2, mem=4), result)
- @patch("osm_lcm.temporal.vnf_activities.VnfOperations._get_flavor_details")
+ @patch("osm_lcm.temporal.vnf_activities.VnfSpecifications._get_flavor_details")
def test_get_compute_constraints__empty_flavor_details__no_constraints(
self, mock_get_flavor_details
):
mock_get_flavor_details.return_value = {}
- result = VnfOperations.get_compute_constraints(vdu, sample_vnfd)
+ result = VnfSpecifications.get_compute_constraints(vdu, sample_vnfd)
self.assertEqual(VduComputeConstraints(cores=0, mem=0), result)
- @patch("osm_lcm.temporal.vnf_activities.VnfOperations._get_flavor_details")
+ @patch("osm_lcm.temporal.vnf_activities.VnfSpecifications._get_flavor_details")
def test_get_compute_constraints__flavor_details_is_none__no_constraints(
self, mock_get_flavor_details
):
mock_get_flavor_details.return_value = None
- result = VnfOperations.get_compute_constraints(vdu, sample_vnfd)
+ result = VnfSpecifications.get_compute_constraints(vdu, sample_vnfd)
self.assertEqual(VduComputeConstraints(cores=0, mem=0), result)
- @patch("osm_lcm.temporal.vnf_activities.VnfOperations._get_flavor_details")
+ @patch("osm_lcm.temporal.vnf_activities.VnfSpecifications._get_flavor_details")
def test_get_compute_constraints__flavor_has_only_cpu__get_cpu_constraint(
self, mock_get_flavor_details
):
mock_get_flavor_details.return_value = flavor_2
- result = VnfOperations.get_compute_constraints(vdu, sample_vnfd)
+ result = VnfSpecifications.get_compute_constraints(vdu, sample_vnfd)
self.assertEqual(VduComputeConstraints(cores=2, mem=0), result)
- @patch("osm_lcm.temporal.vnf_activities.VnfOperations._get_flavor_details")
+ @patch("osm_lcm.temporal.vnf_activities.VnfSpecifications._get_flavor_details")
def test_get_compute_constraints__flavor_has_only_memory__get_memory_constraint(
self, mock_get_flavor_details
):
mock_get_flavor_details.return_value = flavor_3
- result = VnfOperations.get_compute_constraints(vdu, sample_vnfd)
+ result = VnfSpecifications.get_compute_constraints(vdu, sample_vnfd)
self.assertEqual(VduComputeConstraints(cores=0, mem=4), result)
def test_list_to_dict__config_has_several_items__get_expected_dict(self):
@@ -396,45 +391,45 @@
{"key": "config::domain_name1", "value": "osm.org"},
{"key": "domain_name2", "value": "osm.com"},
]
- result = VnfOperations._list_to_dict(config)
+ result = VnfSpecifications._list_to_dict(config)
self.assertEqual(
result, {"config::domain_name1": "osm.org", "domain_name2": "osm.com"}
)
def test_list_to_dict__empty_input__get_empty_dict(self):
config = []
- result = VnfOperations._list_to_dict(config)
+ result = VnfSpecifications._list_to_dict(config)
self.assertEqual(result, {})
def test_get_only_config_items__with_identifier__get_expected_config(self):
config = {"config::redirect-map": "https://osm.instantiation.params"}
- result = VnfOperations._get_only_config_items(config)
+ result = VnfSpecifications._get_only_config_items(config)
self.assertEqual(result, {"redirect-map": "https://osm.instantiation.params"})
def test_get_only_config_items__without_identifier__no_config(self):
config = {"key": "domain_name1", "value": "osm.org"}
- result = VnfOperations._get_only_config_items(config)
+ result = VnfSpecifications._get_only_config_items(config)
self.assertEqual(result, {})
def test_get_only_config_items__empty_input__no_config(self):
config = {}
- result = VnfOperations._get_only_config_items(config)
+ result = VnfSpecifications._get_only_config_items(config)
self.assertEqual(result, {})
def test_get_vdu_instantiation_params__empty_vnf_config__get_params(self):
- result = VnfOperations.get_vdu_instantiation_params(vdu_id, vnf_config)
+ result = VnfSpecifications.get_vdu_instantiation_params(vdu_id, vnf_config)
self.assertEqual(
result, {"config::redirect-map": "https://osm.instantiation.params"}
)
def test_get_vdu_instantiation_params__empty_vnf_config__no_params(self):
- result = VnfOperations.get_vdu_instantiation_params(vdu_id, {})
+ result = VnfSpecifications.get_vdu_instantiation_params(vdu_id, {})
self.assertEqual(result, {})
def test_get_vdu_instantiation_params__vdu_id_mismatch__no_params(self):
config = deepcopy(vnf_config)
config["vdu"][0]["id"] = "other-vdu-id"
- result = VnfOperations.get_vdu_instantiation_params(vdu_id, config)
+ result = VnfSpecifications.get_vdu_instantiation_params(vdu_id, config)
self.assertEqual(result, {})
def test_get_vdu_instantiation_params__empty_configurable_properties__no_params(
@@ -442,11 +437,11 @@
):
config = deepcopy(vnf_config)
config["vdu"][0]["configurable-properties"] = {}
- result = VnfOperations.get_vdu_instantiation_params(vdu_id, config)
+ result = VnfSpecifications.get_vdu_instantiation_params(vdu_id, config)
self.assertEqual(result, {})
- @patch("osm_lcm.temporal.vnf_activities.VnfOperations._get_only_config_items")
- @patch("osm_lcm.temporal.vnf_activities.VnfOperations._list_to_dict")
+ @patch("osm_lcm.temporal.vnf_activities.VnfSpecifications._get_only_config_items")
+ @patch("osm_lcm.temporal.vnf_activities.VnfSpecifications._list_to_dict")
def test_get_application_config__instantiate_config_overrides_vdu_config__get_expected_application_config(
self,
mock_list_to_dict,
@@ -460,13 +455,13 @@
},
{"domain_name1": "osm.public"},
]
- result = VnfOperations.get_application_config(vdu, vdu_instantiate_config)
+ result = VnfSpecifications.get_application_config(vdu, vdu_instantiate_config)
self.assertEqual(
result, {"domain_name1": "osm.public", "domain_name2": "osm.com"}
)
- @patch("osm_lcm.temporal.vnf_activities.VnfOperations._get_only_config_items")
- @patch("osm_lcm.temporal.vnf_activities.VnfOperations._list_to_dict")
+ @patch("osm_lcm.temporal.vnf_activities.VnfSpecifications._get_only_config_items")
+ @patch("osm_lcm.temporal.vnf_activities.VnfSpecifications._list_to_dict")
def test_get_application_config__empty_instantiate_config__get_descriptor_config(
self,
mock_list_to_dict,
@@ -480,11 +475,11 @@
},
{},
]
- result = VnfOperations.get_application_config(vdu, vdu_instantiate_config)
+ result = VnfSpecifications.get_application_config(vdu, vdu_instantiate_config)
self.assertEqual(result, app_config)
- @patch("osm_lcm.temporal.vnf_activities.VnfOperations._get_only_config_items")
- @patch("osm_lcm.temporal.vnf_activities.VnfOperations._list_to_dict")
+ @patch("osm_lcm.temporal.vnf_activities.VnfSpecifications._get_only_config_items")
+ @patch("osm_lcm.temporal.vnf_activities.VnfSpecifications._list_to_dict")
def test_get_application_config__no_config__empty_application_config(
self,
mock_list_to_dict,
@@ -494,7 +489,9 @@
vdu_copy = deepcopy(vdu)
vdu_copy["configurable-properties"] = []
mock_get_only_config_items.side_effect = [{}, {}]
- result = VnfOperations.get_application_config(vdu_copy, vdu_instantiate_config)
+ result = VnfSpecifications.get_application_config(
+ vdu_copy, vdu_instantiate_config
+ )
self.assertEqual(result, {})
diff --git a/osm_lcm/tests/test_vnf_workflows.py b/osm_lcm/tests/test_vnf_workflows.py
index 8601142..45e70c9 100644
--- a/osm_lcm/tests/test_vnf_workflows.py
+++ b/osm_lcm/tests/test_vnf_workflows.py
@@ -21,40 +21,25 @@
from unittest.mock import Mock
import uuid
-from osm_common.dataclasses.temporal_dataclasses import (
- ChangeVnfInstantiationStateInput,
- ChangeVnfStateInput,
- CharmInfo,
- GetTaskQueueInput,
- GetTaskQueueOutput,
- GetVimCloudInput,
- GetVimCloudOutput,
- GetVnfDescriptorInput,
- GetVnfDescriptorOutput,
- GetVnfRecordInput,
- GetVnfRecordOutput,
- SetVnfModelInput,
- VduComputeConstraints,
- VduInstantiateInput,
- VnfInstantiateInput,
- VnfInstantiationState,
- VnfPrepareInput,
- VnfState,
+from osm_common.temporal_task_queues.task_queues_mappings import LCM_TASK_QUEUE
+from osm_common.temporal.activities.vnf import (
+ ChangeVnfState,
+ ChangeVnfInstantiationState,
+ GetTaskQueue,
+ GetVimCloud,
+ GetVnfDescriptor,
+ GetVnfRecord,
+ SendNotificationForVnf,
+ SetVnfModel,
)
-from osm_common.temporal_constants import (
- ACTIVITY_CHANGE_VNF_STATE,
- ACTIVITY_CHANGE_VNF_INSTANTIATION_STATE,
- ACTIVITY_GET_TASK_QUEUE,
- ACTIVITY_GET_VIM_CLOUD,
- ACTIVITY_GET_VNF_DESCRIPTOR,
- ACTIVITY_GET_VNF_RECORD,
- ACTIVITY_SEND_NOTIFICATION_FOR_VNF,
- ACTIVITY_SET_VNF_MODEL,
- LCM_TASK_QUEUE,
- WORKFLOW_VDU_INSTANTIATE,
- WORKFLOW_VNF_PREPARE,
+from osm_common.temporal.dataclasses_common import CharmInfo, VduComputeConstraints
+from osm_common.temporal.workflows.vnf import VnfPrepareWorkflow
+from osm_common.temporal.workflows.vdu import VduInstantiateWorkflow
+from osm_common.temporal.states import VnfState, VnfInstantiationState
+from osm_lcm.temporal.vnf_workflows import (
+ VnfInstantiateWorkflowImpl,
+ VnfPrepareWorkflowImpl,
)
-from osm_lcm.temporal.vnf_workflows import VnfInstantiateWorkflow, VnfPrepareWorkflow
from temporalio import activity
from temporalio import workflow
from temporalio.client import WorkflowFailureError
@@ -103,7 +88,7 @@
{"key": "track", "value": "latest"},
{"key": "channel", "value": "stable"},
]
-wf_input = VnfInstantiateInput(
+wf_input = VnfInstantiateWorkflowImpl.Input(
vnfr_uuid=vnfr_uuid,
model_name=model_name,
instantiation_config={},
@@ -145,7 +130,7 @@
}
sample_charm_info = CharmInfo(app_name="my-app", channel="latest", entity_url="my-url")
sample_constraints = VduComputeConstraints(cores=1, mem=1)
-sample_vdu_instantiate_input = VduInstantiateInput(
+sample_vdu_instantiate_input = VduInstantiateWorkflow.Input(
vim_uuid=vim_account_id,
model_name=model_name,
charm_info=sample_charm_info,
@@ -154,7 +139,7 @@
config={},
)
sample_vdu_instantiate_wf_id_1 = "vdu-instantiate-workflow-id-1"
-sample_vdu_instantiate_input_with_config = VduInstantiateInput(
+sample_vdu_instantiate_input_with_config = VduInstantiateWorkflow.Input(
vim_uuid=vim_account_id,
model_name=model_name,
charm_info=sample_charm_info,
@@ -190,129 +175,129 @@
# Mock Activities
-@activity.defn(name=ACTIVITY_SET_VNF_MODEL)
-async def mock_set_vnf_model(set_vnf_model_input: SetVnfModelInput) -> None:
+@activity.defn(name=SetVnfModel.__name__)
+async def mock_set_vnf_model(set_vnf_model_input: SetVnfModel.Input) -> None:
pass
-@activity.defn(name=ACTIVITY_SET_VNF_MODEL)
+@activity.defn(name=SetVnfModel.__name__)
async def mock_set_vnf_model_raise_exception(
- set_vnf_model_input: SetVnfModelInput,
+ set_vnf_model_input: SetVnfModel.Input,
) -> None:
- raise TestException(f"{ACTIVITY_SET_VNF_MODEL} failed.")
+ raise TestException(f"{SetVnfModel.__name__} failed.")
-@activity.defn(name=ACTIVITY_GET_TASK_QUEUE)
+@activity.defn(name=GetTaskQueue.__name__)
async def mock_get_task_queue(
- get_task_queue_input: GetTaskQueueInput,
-) -> GetTaskQueueOutput:
- return GetTaskQueueOutput(LCM_TASK_QUEUE)
+ get_task_queue_input: GetTaskQueue.Input,
+) -> GetTaskQueue.Output:
+ return GetTaskQueue.Output(LCM_TASK_QUEUE)
-@activity.defn(name=ACTIVITY_GET_TASK_QUEUE)
+@activity.defn(name=GetTaskQueue.__name__)
async def mock_get_different_task_queue(
- get_task_queue_input: GetTaskQueueInput,
-) -> GetTaskQueueOutput:
- return GetTaskQueueOutput(juju_task_queue)
+ get_task_queue_input: GetTaskQueue.Input,
+) -> GetTaskQueue.Output:
+ return GetTaskQueue.Output(juju_task_queue)
-@activity.defn(name=ACTIVITY_GET_TASK_QUEUE)
+@activity.defn(name=GetTaskQueue.__name__)
async def mock_get_task_queue_raise_exception(
- get_task_queue_input: GetTaskQueueInput,
-) -> GetTaskQueueOutput:
- raise TestException(f"{ACTIVITY_GET_TASK_QUEUE} failed.")
+ get_task_queue_input: GetTaskQueue.Input,
+) -> GetTaskQueue.Output:
+ raise TestException(f"{GetTaskQueue.__name__} failed.")
-@activity.defn(name=ACTIVITY_GET_VNF_DESCRIPTOR)
+@activity.defn(name=GetVnfDescriptor.__name__)
async def mock_get_vnf_descriptor(
- get_vnf_descriptor_input: GetVnfDescriptorInput,
-) -> GetVnfDescriptorOutput:
- return GetVnfDescriptorOutput(vnfd=sample_vnfd)
+ get_vnf_descriptor_input: GetVnfDescriptor.Input,
+) -> GetVnfDescriptor.Output:
+ return GetVnfDescriptor.Output(vnfd=sample_vnfd)
-@activity.defn(name=ACTIVITY_GET_VNF_DESCRIPTOR)
+@activity.defn(name=GetVnfDescriptor.__name__)
async def mock_get_vnf_descriptor_empty_output(
- get_vnf_descriptor_input: GetVnfDescriptorInput,
-) -> GetVnfDescriptorOutput:
- return GetVnfDescriptorOutput(vnfd={})
+ get_vnf_descriptor_input: GetVnfDescriptor.Input,
+) -> GetVnfDescriptor.Output:
+ return GetVnfDescriptor.Output(vnfd={})
-@activity.defn(name=ACTIVITY_GET_VNF_DESCRIPTOR)
+@activity.defn(name=GetVnfDescriptor.__name__)
async def mock_get_vnf_descriptor_raise_exception(
- get_vnf_descriptor_input: GetVnfDescriptorInput,
-) -> GetVnfDescriptorOutput:
- raise TestException(f"{ACTIVITY_GET_VNF_DESCRIPTOR} failed.")
+ get_vnf_descriptor_input: GetVnfDescriptor.Input,
+) -> GetVnfDescriptor.Output:
+ raise TestException(f"{GetVnfDescriptor.__name__} failed.")
-@activity.defn(name=ACTIVITY_GET_VNF_RECORD)
+@activity.defn(name=GetVnfRecord.__name__)
async def mock_get_vnf_record(
- get_vnf_record_input: GetVnfRecordInput,
-) -> GetVnfRecordOutput:
- return GetVnfRecordOutput(vnfr=sample_vnfr)
+ get_vnf_record_input: GetVnfRecord.Input,
+) -> GetVnfRecord.Output:
+ return GetVnfRecord.Output(vnfr=sample_vnfr)
-@activity.defn(name=ACTIVITY_GET_VNF_RECORD)
+@activity.defn(name=GetVnfRecord.__name__)
async def mock_get_vnf_record_raise_exception(
- get_vnf_record_input: GetVnfRecordInput,
-) -> GetVnfRecordOutput:
- raise TestException(f"{ACTIVITY_GET_VNF_RECORD} failed.")
+ get_vnf_record_input: GetVnfRecord.Input,
+) -> GetVnfRecord.Output:
+ raise TestException(f"{GetVnfRecord.__name__} failed.")
-@activity.defn(name=ACTIVITY_GET_VIM_CLOUD)
+@activity.defn(name=GetVimCloud.__name__)
async def mock_get_vim_cloud(
- get_vim_cloud_input: GetVimCloudInput,
-) -> GetVimCloudOutput:
- return GetVimCloudOutput(cloud=cloud)
+ get_vim_cloud_input: GetVimCloud.Input,
+) -> GetVimCloud.Output:
+ return GetVimCloud.Output(cloud=cloud)
-@activity.defn(name=ACTIVITY_GET_VIM_CLOUD)
+@activity.defn(name=GetVimCloud.__name__)
async def mock_get_vim_cloud_raise_exception(
- get_vim_cloud_input: GetVimCloudInput,
-) -> GetVimCloudOutput:
- raise TestException(f"{ACTIVITY_GET_VIM_CLOUD} failed.")
+ get_vim_cloud_input: GetVimCloud.Input,
+) -> GetVimCloud.Output:
+ raise TestException(f"{GetVimCloud.__name__} failed.")
# Mock Workflows
-@workflow.defn(name=WORKFLOW_VNF_PREPARE, sandboxed=SANDBOXED)
+@workflow.defn(name=VnfPrepareWorkflow.__name__, sandboxed=SANDBOXED)
class MockPrepareVnfWorkflow:
@workflow.run
- async def run(self, input: VnfPrepareInput) -> None:
+ async def run(self, input: VnfPrepareWorkflow.Input) -> None:
pass
-@workflow.defn(name=WORKFLOW_VNF_PREPARE, sandboxed=SANDBOXED)
+@workflow.defn(name=VnfPrepareWorkflow.__name__, sandboxed=SANDBOXED)
class MockPrepareVnfWorkflowFailed:
@workflow.run
- async def run(self, input: VnfPrepareInput) -> None:
+ async def run(self, workflow_input: VnfPrepareWorkflow.Input) -> None:
raise ChildWorkflowError(
- message=f"{WORKFLOW_VNF_PREPARE} child workflow failed.",
+ message=f"{VnfPrepareWorkflow.__name__} child workflow failed.",
namespace="default",
workflow_id="123",
run_id="1",
- workflow_type=WORKFLOW_VNF_PREPARE,
+ workflow_type=VnfPrepareWorkflow.__name__,
initiated_event_id=0,
started_event_id=0,
retry_state=RetryState.NON_RETRYABLE_FAILURE,
)
-@workflow.defn(name=WORKFLOW_VDU_INSTANTIATE, sandboxed=SANDBOXED)
+@workflow.defn(name=VduInstantiateWorkflow.__name__, sandboxed=SANDBOXED)
class MockVduInstantiateWorkflow:
@workflow.run
- async def run(self, input: VduInstantiateInput) -> None:
+ async def run(self, workflow_input: VduInstantiateWorkflow.Input) -> None:
pass
-@workflow.defn(name=WORKFLOW_VDU_INSTANTIATE, sandboxed=SANDBOXED)
+@workflow.defn(name=VduInstantiateWorkflow.__name__, sandboxed=SANDBOXED)
class MockVduInstantiateWorkflowFailed:
@workflow.run
- async def run(self, input: VduInstantiateInput) -> None:
+ async def run(self, workflow_input: VduInstantiateWorkflow.Input) -> None:
raise ChildWorkflowError(
- message=f"{WORKFLOW_VDU_INSTANTIATE} child workflow failed.",
+ message=f"{VduInstantiateWorkflow.__name__} child workflow failed.",
namespace="default",
workflow_id="123",
run_id="1",
- workflow_type=WORKFLOW_VDU_INSTANTIATE,
+ workflow_type=VduInstantiateWorkflow.__name__,
initiated_event_id=0,
started_event_id=0,
retry_state=RetryState.NON_RETRYABLE_FAILURE,
@@ -331,13 +316,13 @@
self.client,
debug_mode=DEBUG_MODE,
task_queue=self.task_queue,
- workflows=[VnfPrepareWorkflow],
+ workflows=[VnfPrepareWorkflowImpl],
activities=[mock_set_vnf_model],
):
await self.client.execute_workflow(
- VnfPrepareWorkflow.run,
+ VnfPrepareWorkflowImpl.run,
arg=wf_input,
- id=f"{WORKFLOW_VNF_PREPARE}-{wf_input.vnfr_uuid}",
+ id=f"{VnfPrepareWorkflow.__name__}-{wf_input.vnfr_uuid}",
task_queue=self.task_queue,
task_timeout=TASK_TIMEOUT,
execution_timeout=EXECUTION_TIMEOUT,
@@ -351,14 +336,14 @@
self.client,
debug_mode=DEBUG_MODE,
task_queue=self.task_queue,
- workflows=[VnfPrepareWorkflow],
+ workflows=[VnfPrepareWorkflowImpl],
activities=[mock_set_vnf_model_raise_exception],
):
with self.assertRaises(WorkflowFailureError) as err:
await self.client.execute_workflow(
- VnfPrepareWorkflow.run,
+ VnfPrepareWorkflowImpl.run,
arg=wf_input,
- id=f"{WORKFLOW_VNF_PREPARE}-{wf_input.vnfr_uuid}",
+ id=f"{VnfPrepareWorkflow.__name__}-{wf_input.vnfr_uuid}",
task_queue=self.task_queue,
task_timeout=TASK_TIMEOUT,
execution_timeout=EXECUTION_TIMEOUT,
@@ -373,20 +358,21 @@
self.client,
debug_mode=DEBUG_MODE,
task_queue=self.task_queue,
- workflows=[VnfPrepareWorkflow],
+ workflows=[VnfPrepareWorkflowImpl],
activities=[mock_set_vnf_model_raise_exception],
):
with self.assertRaises(WorkflowFailureError) as err:
await self.client.execute_workflow(
- VnfPrepareWorkflow.run,
+ VnfPrepareWorkflowImpl.run,
arg=wf_input,
- id=f"{WORKFLOW_VNF_PREPARE}-{wf_input.vnfr_uuid}",
+ id=f"{VnfPrepareWorkflow.__name__}-{wf_input.vnfr_uuid}",
task_queue=self.task_queue,
task_timeout=TASK_TIMEOUT,
execution_timeout=EXECUTION_TIMEOUT,
)
self.assertEqual(
- str(err.exception.cause.cause), "TestException: set-vnf-model failed."
+ str(err.exception.cause.cause),
+ f"TestException: {SetVnfModel.__name__} failed.",
)
@@ -398,7 +384,7 @@
self.mock_change_vnf_state_tracker = Mock()
self.mock_send_notification_for_vnf_tracker = Mock()
self.workflows = [
- VnfInstantiateWorkflow,
+ VnfInstantiateWorkflowImpl,
MockPrepareVnfWorkflow,
MockVduInstantiateWorkflow,
]
@@ -415,7 +401,7 @@
async def execute_workflow(self, wf_input=wf_input):
return await self.client.execute_workflow(
- VnfInstantiateWorkflow.run,
+ VnfInstantiateWorkflowImpl.run,
arg=wf_input,
id=uuid.uuid4().hex,
task_queue=self.task_queue,
@@ -429,7 +415,7 @@
)
self.assertEqual(
call_mock_change_vnf_instantiation_state_tracker[1].args[0],
- ChangeVnfInstantiationStateInput(vnfr_uuid=vnfr_uuid, state=state),
+ ChangeVnfInstantiationState.Input(vnfr_uuid=vnfr_uuid, state=state),
)
def vnf_state_is_updated(self, state):
@@ -438,47 +424,47 @@
)
self.assertEqual(
call_mock_change_vnf_state_tracker[0].args[0],
- ChangeVnfStateInput(vnfr_uuid=vnfr_uuid, state=state),
+ ChangeVnfState.Input(vnfr_uuid=vnfr_uuid, state=state),
)
- @activity.defn(name=ACTIVITY_CHANGE_VNF_STATE)
- async def mock_change_vnf_state(self, nf_state_input: ChangeVnfStateInput) -> None:
+ @activity.defn(name=ChangeVnfState.__name__)
+ async def mock_change_vnf_state(self, nf_state_input: ChangeVnfState.Input) -> None:
self.mock_change_vnf_state_tracker(nf_state_input)
- @activity.defn(name=ACTIVITY_CHANGE_VNF_STATE)
+ @activity.defn(name=ChangeVnfState.__name__)
async def mock_change_vnf_state_exception(
- self, nf_state_input: ChangeVnfStateInput
+ self, nf_state_input: ChangeVnfState.Input
) -> None:
self.mock_change_vnf_state_tracker(nf_state_input)
- raise TestException(f"{ACTIVITY_CHANGE_VNF_STATE} failed.")
+ raise TestException(f"{ChangeVnfState.__name__} failed.")
- @activity.defn(name=ACTIVITY_CHANGE_VNF_INSTANTIATION_STATE)
+ @activity.defn(name=ChangeVnfInstantiationState.__name__)
async def mock_change_vnf_instantiation_state(
self,
- nf_instantiation_state_input: ChangeVnfInstantiationStateInput,
+ nf_instantiation_state_input: ChangeVnfInstantiationState.Input,
) -> None:
self.mock_change_vnf_instantiation_state_tracker(nf_instantiation_state_input)
- @activity.defn(name=ACTIVITY_CHANGE_VNF_INSTANTIATION_STATE)
+ @activity.defn(name=ChangeVnfInstantiationState.__name__)
async def mock_change_vnf_instantiation_state_exception(
self,
- nf_instantiation_state_input: ChangeVnfInstantiationStateInput,
+ nf_instantiation_state_input: ChangeVnfInstantiationState.Input,
) -> None:
self.mock_change_vnf_instantiation_state_tracker(nf_instantiation_state_input)
- raise TestException(f"{ACTIVITY_CHANGE_VNF_INSTANTIATION_STATE} failed.")
+ raise TestException(f"{ChangeVnfInstantiationState.__name__} failed.")
- @activity.defn(name=ACTIVITY_SEND_NOTIFICATION_FOR_VNF)
+ @activity.defn(name=SendNotificationForVnf.__name__)
async def mock_send_notification_for_vnf(self, input) -> None:
self.mock_send_notification_for_vnf_tracker()
@patch(
- "osm_lcm.temporal.vnf_workflows.VnfInstantiateWorkflow._get_vdu_instantiate_info"
+ "osm_lcm.temporal.vnf_workflows.VnfInstantiateWorkflowImpl._get_vdu_instantiate_input"
)
async def test_vnf_instantiate_workflow__successful__updates_vnf_instantiation_state(
- self, mock_get_vdu_instantiate_info
+ self, mock_get_vdu_instantiate_input
):
workflows = [
- VnfInstantiateWorkflow,
+ VnfInstantiateWorkflowImpl,
MockPrepareVnfWorkflow,
MockVduInstantiateWorkflow,
]
@@ -492,7 +478,7 @@
mock_get_vnf_record,
mock_get_vim_cloud,
]
- mock_get_vdu_instantiate_info.return_value = (
+ mock_get_vdu_instantiate_input.return_value = (
sample_vdu_instantiate_input_with_config,
sample_vdu_instantiate_wf_id_1,
)
@@ -503,13 +489,13 @@
self.vnf_instantiation_state_is_updated(VnfInstantiationState.INSTANTIATED)
@patch(
- "osm_lcm.temporal.vnf_workflows.VnfInstantiateWorkflow._get_vdu_instantiate_info"
+ "osm_lcm.temporal.vnf_workflows.VnfInstantiateWorkflowImpl._get_vdu_instantiate_input"
)
async def test_vnf_instantiate_workflow__successful__updates_vnf_state(
- self, mock_get_vdu_instantiate_info
+ self, mock_get_vdu_instantiate_input
):
workflows = [
- VnfInstantiateWorkflow,
+ VnfInstantiateWorkflowImpl,
MockPrepareVnfWorkflow,
MockVduInstantiateWorkflow,
]
@@ -523,7 +509,7 @@
mock_get_vnf_record,
mock_get_vim_cloud,
]
- mock_get_vdu_instantiate_info.return_value = (
+ mock_get_vdu_instantiate_input.return_value = (
sample_vdu_instantiate_input_with_config,
sample_vdu_instantiate_wf_id_1,
)
@@ -629,7 +615,7 @@
async with self.env, self.get_worker(
self.task_queue,
[
- VnfInstantiateWorkflow,
+ VnfInstantiateWorkflowImpl,
MockPrepareVnfWorkflowFailed,
MockVduInstantiateWorkflow,
],
@@ -655,7 +641,7 @@
async with self.env, self.get_worker(
self.task_queue,
[
- VnfInstantiateWorkflow,
+ VnfInstantiateWorkflowImpl,
MockPrepareVnfWorkflow,
MockVduInstantiateWorkflowFailed,
],
@@ -725,11 +711,11 @@
await self.execute_workflow()
self.assertTrue(isinstance(err.exception.cause, ActivityError))
- @patch("osm_lcm.temporal.vnf_workflows.VnfInstantiateWorkflow.instantiate_vdus")
+ @patch("osm_lcm.temporal.vnf_workflows.VnfInstantiateWorkflowImpl.instantiate_vdus")
async def test_vnf_instantiate_workflow__use_different_task_queue__use_juju_task_queue(
self, mock_instantiate_vdus
):
- workflows = [VnfInstantiateWorkflow, MockPrepareVnfWorkflow]
+ workflows = [VnfInstantiateWorkflowImpl, MockPrepareVnfWorkflow]
activities = [
mock_get_different_task_queue,
self.mock_change_vnf_instantiation_state,
@@ -755,19 +741,19 @@
class TestInstantiateVdus(asynctest.TestCase):
@patch(
- "osm_lcm.temporal.vnf_workflows.VnfInstantiateWorkflow._get_vdu_instantiate_info"
+ "osm_lcm.temporal.vnf_workflows.VnfInstantiateWorkflowImpl._get_vdu_instantiate_input"
)
@patch("temporalio.workflow.execute_child_workflow")
async def test_instantiate_vdus__empty_vnf_instantiation_config__child_wf_executed_with_expected_vdu_instantiate_input(
self,
mock_execute_child_workflow,
- mock_get_vdu_instantiate_info,
+ mock_get_vdu_instantiate_input,
):
- mock_get_vdu_instantiate_info.return_value = (
+ mock_get_vdu_instantiate_input.return_value = (
sample_vdu_instantiate_input,
sample_vdu_instantiate_wf_id_1,
)
- await VnfInstantiateWorkflow.instantiate_vdus(
+ await VnfInstantiateWorkflowImpl.instantiate_vdus(
sample_vnfr, sample_vnfd, LCM_TASK_QUEUE, cloud, {}
)
call_mock_execute_child_workflow = mock_execute_child_workflow.call_args_list
@@ -777,24 +763,24 @@
"arg": sample_vdu_instantiate_input,
"id": sample_vdu_instantiate_wf_id_1,
"task_queue": LCM_TASK_QUEUE,
- "workflow": "vdu-instantiate",
+ "workflow": f"{VduInstantiateWorkflow.__name__}",
},
)
@patch(
- "osm_lcm.temporal.vnf_workflows.VnfInstantiateWorkflow._get_vdu_instantiate_info"
+ "osm_lcm.temporal.vnf_workflows.VnfInstantiateWorkflowImpl._get_vdu_instantiate_input"
)
@patch("temporalio.workflow.execute_child_workflow")
async def test_instantiate_vdus__vnf_instantiation_config_exists__child_wf_executed_with_expected_vdu_instantiate_input(
self,
mock_execute_child_workflow,
- mock_get_vdu_instantiate_info,
+ mock_get_vdu_instantiate_input,
):
- mock_get_vdu_instantiate_info.return_value = (
+ mock_get_vdu_instantiate_input.return_value = (
sample_vdu_instantiate_input_with_config,
sample_vdu_instantiate_wf_id_1,
)
- await VnfInstantiateWorkflow.instantiate_vdus(
+ await VnfInstantiateWorkflowImpl.instantiate_vdus(
sample_vnfr, sample_vnfd, LCM_TASK_QUEUE, cloud, vnf_config
)
call_mock_execute_child_workflow = mock_execute_child_workflow.call_args_list
@@ -804,40 +790,40 @@
"arg": sample_vdu_instantiate_input_with_config,
"id": sample_vdu_instantiate_wf_id_1,
"task_queue": LCM_TASK_QUEUE,
- "workflow": "vdu-instantiate",
+ "workflow": f"{VduInstantiateWorkflow.__name__}",
},
)
@patch(
- "osm_lcm.temporal.vnf_workflows.VnfInstantiateWorkflow._get_vdu_instantiate_info"
+ "osm_lcm.temporal.vnf_workflows.VnfInstantiateWorkflowImpl._get_vdu_instantiate_input"
)
@patch("temporalio.workflow.execute_child_workflow")
async def test_instantiate_vdus__vnfd_without_vdu__child_wf_is_not_executed(
self,
mock_execute_child_workflow,
- mock_get_vdu_instantiate_info,
+ mock_get_vdu_instantiate_input,
):
vnfd = deepcopy(sample_vnfd)
vnfd["vdu"] = []
- await VnfInstantiateWorkflow.instantiate_vdus(
+ await VnfInstantiateWorkflowImpl.instantiate_vdus(
sample_vnfr, vnfd, LCM_TASK_QUEUE, cloud, {}
)
mock_execute_child_workflow.assert_not_called()
@patch(
- "osm_lcm.temporal.vnf_workflows.VnfInstantiateWorkflow._get_vdu_instantiate_info"
+ "osm_lcm.temporal.vnf_workflows.VnfInstantiateWorkflowImpl._get_vdu_instantiate_input"
)
@patch("temporalio.workflow.execute_child_workflow")
async def test_instantiate_vdus__use_juju_task_queue__child_wf_executed_with_juju_task_queue(
self,
mock_execute_child_workflow,
- mock_get_vdu_instantiate_info,
+ mock_get_vdu_instantiate_input,
):
- mock_get_vdu_instantiate_info.return_value = (
+ mock_get_vdu_instantiate_input.return_value = (
sample_vdu_instantiate_input_with_config,
sample_vdu_instantiate_wf_id_1,
)
- await VnfInstantiateWorkflow.instantiate_vdus(
+ await VnfInstantiateWorkflowImpl.instantiate_vdus(
sample_vnfr, sample_vnfd, juju_task_queue, cloud, vnf_config
)
call_mock_execute_child_workflow = mock_execute_child_workflow.call_args_list
@@ -847,25 +833,25 @@
"arg": sample_vdu_instantiate_input_with_config,
"id": sample_vdu_instantiate_wf_id_1,
"task_queue": juju_task_queue,
- "workflow": "vdu-instantiate",
+ "workflow": f"{VduInstantiateWorkflow.__name__}",
},
)
class TestGetVduInstantiateInfo(asynctest.TestCase):
@asynctest.mock.patch(
- "osm_lcm.temporal.vnf_activities.VnfOperations.get_application_config"
+ "osm_lcm.temporal.vnf_activities.VnfSpecifications.get_application_config"
)
@asynctest.mock.patch(
- "osm_lcm.temporal.vnf_activities.VnfOperations.get_vdu_instantiation_params"
+ "osm_lcm.temporal.vnf_activities.VnfSpecifications.get_vdu_instantiation_params"
)
@asynctest.mock.patch(
"osm_lcm.temporal.juju_paas_activities.CharmInfoUtils.get_charm_info"
)
@asynctest.mock.patch(
- "osm_lcm.temporal.vnf_activities.VnfOperations.get_compute_constraints"
+ "osm_lcm.temporal.vnf_activities.VnfSpecifications.get_compute_constraints"
)
- async def test_get_vdu_instantiate_info__empty_vnf_instantiation_config__get_expected_vdu_inst_input_and_wf_id(
+ async def test_get_vdu_instantiate_input__empty_vnf_instantiation_config__get_expected_vdu_inst_input_and_wf_id(
self,
mock_get_compute_constraints,
mock_get_charm_info,
@@ -879,7 +865,7 @@
(
vdu_instantiate_input,
vdu_instantiate_workflow_id,
- ) = VnfInstantiateWorkflow._get_vdu_instantiate_info(
+ ) = VnfInstantiateWorkflowImpl._get_vdu_instantiate_input(
vnfr=sample_vnfr,
vnfd=sample_vnfd,
vdu=vdu,
@@ -892,18 +878,18 @@
)
@asynctest.mock.patch(
- "osm_lcm.temporal.vnf_activities.VnfOperations.get_application_config"
+ "osm_lcm.temporal.vnf_activities.VnfSpecifications.get_application_config"
)
@asynctest.mock.patch(
- "osm_lcm.temporal.vnf_activities.VnfOperations.get_vdu_instantiation_params"
+ "osm_lcm.temporal.vnf_activities.VnfSpecifications.get_vdu_instantiation_params"
)
@asynctest.mock.patch(
"osm_lcm.temporal.juju_paas_activities.CharmInfoUtils.get_charm_info"
)
@asynctest.mock.patch(
- "osm_lcm.temporal.vnf_activities.VnfOperations.get_compute_constraints"
+ "osm_lcm.temporal.vnf_activities.VnfSpecifications.get_compute_constraints"
)
- async def test_get_vdu_instantiate_info__with_vnf_instantiation_config__get_expected_vdu_inst_input_and_wf_id(
+ async def test_get_vdu_instantiate_input__with_vnf_instantiation_config__get_expected_vdu_inst_input_and_wf_id(
self,
mock_get_compute_constraints,
mock_get_charm_info,
@@ -917,7 +903,7 @@
(
vdu_instantiate_input,
vdu_instantiate_workflow_id,
- ) = VnfInstantiateWorkflow._get_vdu_instantiate_info(
+ ) = VnfInstantiateWorkflowImpl._get_vdu_instantiate_input(
vnfr=sample_vnfr,
vnfd=sample_vnfd,
vdu=vdu,
@@ -930,18 +916,18 @@
)
@asynctest.mock.patch(
- "osm_lcm.temporal.vnf_activities.VnfOperations.get_application_config"
+ "osm_lcm.temporal.vnf_activities.VnfSpecifications.get_application_config"
)
@asynctest.mock.patch(
- "osm_lcm.temporal.vnf_activities.VnfOperations.get_vdu_instantiation_params"
+ "osm_lcm.temporal.vnf_activities.VnfSpecifications.get_vdu_instantiation_params"
)
@asynctest.mock.patch(
"osm_lcm.temporal.juju_paas_activities.CharmInfoUtils.get_charm_info"
)
@asynctest.mock.patch(
- "osm_lcm.temporal.vnf_activities.VnfOperations.get_compute_constraints"
+ "osm_lcm.temporal.vnf_activities.VnfSpecifications.get_compute_constraints"
)
- async def test_get_vdu_instantiate_info__vnfr_without_namespace__raise_type_error(
+ async def test_get_vdu_instantiate_input__vnfr_without_namespace__raise_type_error(
self,
mock_get_compute_constraints,
mock_get_charm_info,
@@ -953,7 +939,7 @@
mock_get_compute_constraints.return_value = sample_constraints
mock_get_charm_info.return_value = sample_charm_info
with self.assertRaises(TypeError):
- VnfInstantiateWorkflow._get_vdu_instantiate_info(
+ VnfInstantiateWorkflowImpl._get_vdu_instantiate_input(
vnfr=vnfr,
vnfd=sample_vnfd,
vdu=vdu,
@@ -962,18 +948,18 @@
)
@asynctest.mock.patch(
- "osm_lcm.temporal.vnf_activities.VnfOperations.get_application_config"
+ "osm_lcm.temporal.vnf_activities.VnfSpecifications.get_application_config"
)
@asynctest.mock.patch(
- "osm_lcm.temporal.vnf_activities.VnfOperations.get_vdu_instantiation_params"
+ "osm_lcm.temporal.vnf_activities.VnfSpecifications.get_vdu_instantiation_params"
)
@asynctest.mock.patch(
"osm_lcm.temporal.juju_paas_activities.CharmInfoUtils.get_charm_info"
)
@asynctest.mock.patch(
- "osm_lcm.temporal.vnf_activities.VnfOperations.get_compute_constraints"
+ "osm_lcm.temporal.vnf_activities.VnfSpecifications.get_compute_constraints"
)
- async def test_get_vdu_instantiate_info__app_name_is_empty__expected_wf_id(
+ async def test_get_vdu_instantiate_input__app_name_is_empty__expected_wf_id(
self,
mock_get_compute_constraints,
mock_get_charm_info,
@@ -987,7 +973,7 @@
(
_,
vdu_instantiate_workflow_id,
- ) = VnfInstantiateWorkflow._get_vdu_instantiate_info(
+ ) = VnfInstantiateWorkflowImpl._get_vdu_instantiate_input(
vnfr=sample_vnfr,
vnfd=sample_vnfd,
vdu=vdu,
@@ -997,18 +983,18 @@
self.assertEqual(vdu_instantiate_workflow_id, "my-model-name-")
@asynctest.mock.patch(
- "osm_lcm.temporal.vnf_activities.VnfOperations.get_application_config"
+ "osm_lcm.temporal.vnf_activities.VnfSpecifications.get_application_config"
)
@asynctest.mock.patch(
- "osm_lcm.temporal.vnf_activities.VnfOperations.get_vdu_instantiation_params"
+ "osm_lcm.temporal.vnf_activities.VnfSpecifications.get_vdu_instantiation_params"
)
@asynctest.mock.patch(
"osm_lcm.temporal.juju_paas_activities.CharmInfoUtils.get_charm_info"
)
@asynctest.mock.patch(
- "osm_lcm.temporal.vnf_activities.VnfOperations.get_compute_constraints"
+ "osm_lcm.temporal.vnf_activities.VnfSpecifications.get_compute_constraints"
)
- async def test_get_vdu_instantiate_info__get_compute_constraints_failed__no_vdu_inst_wf_input_and_vdu_wf_id(
+ async def test_get_vdu_instantiate_input__get_compute_constraints_failed__no_vdu_inst_wf_input_and_vdu_wf_id(
self,
mock_get_compute_constraints,
mock_get_charm_info,
@@ -1023,7 +1009,7 @@
(
vdu_instantiate_input,
vdu_instantiate_workflow_id,
- ) = VnfInstantiateWorkflow._get_vdu_instantiate_info(
+ ) = VnfInstantiateWorkflowImpl._get_vdu_instantiate_input(
vnfr=sample_vnfr,
vnfd=sample_vnfd,
vdu=vdu,
@@ -1035,18 +1021,18 @@
)
@asynctest.mock.patch(
- "osm_lcm.temporal.vnf_activities.VnfOperations.get_application_config"
+ "osm_lcm.temporal.vnf_activities.VnfSpecifications.get_application_config"
)
@asynctest.mock.patch(
- "osm_lcm.temporal.vnf_activities.VnfOperations.get_vdu_instantiation_params"
+ "osm_lcm.temporal.vnf_activities.VnfSpecifications.get_vdu_instantiation_params"
)
@asynctest.mock.patch(
"osm_lcm.temporal.juju_paas_activities.CharmInfoUtils.get_charm_info"
)
@asynctest.mock.patch(
- "osm_lcm.temporal.vnf_activities.VnfOperations.get_compute_constraints"
+ "osm_lcm.temporal.vnf_activities.VnfSpecifications.get_compute_constraints"
)
- async def test_get_vdu_instantiate_info__get_compute_constraints_failed__raise_compute_constraints_exception(
+ async def test_get_vdu_instantiate_input__get_compute_constraints_failed__raise_compute_constraints_exception(
self,
mock_get_compute_constraints,
mock_get_charm_info,
@@ -1058,7 +1044,7 @@
)
mock_get_charm_info.return_value = sample_charm_info
with self.assertRaises(GetComputeConstraintsException):
- VnfInstantiateWorkflow._get_vdu_instantiate_info(
+ VnfInstantiateWorkflowImpl._get_vdu_instantiate_input(
vnfr=sample_vnfr,
vnfd=sample_vnfd,
vdu=vdu,
@@ -1067,18 +1053,18 @@
)
@asynctest.mock.patch(
- "osm_lcm.temporal.vnf_activities.VnfOperations.get_application_config"
+ "osm_lcm.temporal.vnf_activities.VnfSpecifications.get_application_config"
)
@asynctest.mock.patch(
- "osm_lcm.temporal.vnf_activities.VnfOperations.get_vdu_instantiation_params"
+ "osm_lcm.temporal.vnf_activities.VnfSpecifications.get_vdu_instantiation_params"
)
@asynctest.mock.patch(
"osm_lcm.temporal.juju_paas_activities.CharmInfoUtils.get_charm_info"
)
@asynctest.mock.patch(
- "osm_lcm.temporal.vnf_activities.VnfOperations.get_compute_constraints"
+ "osm_lcm.temporal.vnf_activities.VnfSpecifications.get_compute_constraints"
)
- async def test_get_vdu_instantiate_info__get_charm_info_failed__raise_get_charm_info_exception(
+ async def test_get_vdu_instantiate_input__get_charm_info_failed__raise_get_charm_info_exception(
self,
mock_get_compute_constraints,
mock_get_charm_info,
@@ -1090,7 +1076,7 @@
"get_compute_constraints failed"
)
with self.assertRaises(GetCharmInfoException):
- VnfInstantiateWorkflow._get_vdu_instantiate_info(
+ VnfInstantiateWorkflowImpl._get_vdu_instantiate_input(
vnfr=sample_vnfr,
vnfd=sample_vnfd,
vdu=vdu,
@@ -1099,18 +1085,18 @@
)
@asynctest.mock.patch(
- "osm_lcm.temporal.vnf_activities.VnfOperations.get_application_config"
+ "osm_lcm.temporal.vnf_activities.VnfSpecifications.get_application_config"
)
@asynctest.mock.patch(
- "osm_lcm.temporal.vnf_activities.VnfOperations.get_vdu_instantiation_params"
+ "osm_lcm.temporal.vnf_activities.VnfSpecifications.get_vdu_instantiation_params"
)
@asynctest.mock.patch(
"osm_lcm.temporal.juju_paas_activities.CharmInfoUtils.get_charm_info"
)
@asynctest.mock.patch(
- "osm_lcm.temporal.vnf_activities.VnfOperations.get_compute_constraints"
+ "osm_lcm.temporal.vnf_activities.VnfSpecifications.get_compute_constraints"
)
- async def test_get_vdu_instantiate_info__get_charm_info_failed__no_vdu_inst_wf_input_and_vdu_wf_id(
+ async def test_get_vdu_instantiate_input__get_charm_info_failed__no_vdu_inst_wf_input_and_vdu_wf_id(
self,
mock_get_compute_constraints,
mock_get_charm_info,
@@ -1125,7 +1111,7 @@
(
vdu_instantiate_input,
vdu_instantiate_workflow_id,
- ) = VnfInstantiateWorkflow._get_vdu_instantiate_info(
+ ) = VnfInstantiateWorkflowImpl._get_vdu_instantiate_input(
vnfr=sample_vnfr,
vnfd=sample_vnfd,
vdu=vdu,
@@ -1137,18 +1123,18 @@
)
@asynctest.mock.patch(
- "osm_lcm.temporal.vnf_activities.VnfOperations.get_application_config"
+ "osm_lcm.temporal.vnf_activities.VnfSpecifications.get_application_config"
)
@asynctest.mock.patch(
- "osm_lcm.temporal.vnf_activities.VnfOperations.get_vdu_instantiation_params"
+ "osm_lcm.temporal.vnf_activities.VnfSpecifications.get_vdu_instantiation_params"
)
@asynctest.mock.patch(
"osm_lcm.temporal.juju_paas_activities.CharmInfoUtils.get_charm_info"
)
@asynctest.mock.patch(
- "osm_lcm.temporal.vnf_activities.VnfOperations.get_compute_constraints"
+ "osm_lcm.temporal.vnf_activities.VnfSpecifications.get_compute_constraints"
)
- async def test_get_vdu_instantiate_info__get_vdu_instantiation_params_failed__raise_get_vdu_instantiation_params_exception(
+ async def test_get_vdu_instantiate_input__get_vdu_instantiation_params_failed__raise_get_vdu_instantiation_params_exception(
self,
mock_get_compute_constraints,
mock_get_charm_info,
@@ -1162,7 +1148,7 @@
)
mock_get_application_config.return_value = {}
with self.assertRaises(GetVduInstantiationParamsException):
- VnfInstantiateWorkflow._get_vdu_instantiate_info(
+ VnfInstantiateWorkflowImpl._get_vdu_instantiate_input(
vnfr=sample_vnfr,
vnfd=sample_vnfd,
vdu=vdu,
@@ -1171,18 +1157,18 @@
)
@asynctest.mock.patch(
- "osm_lcm.temporal.vnf_activities.VnfOperations.get_application_config"
+ "osm_lcm.temporal.vnf_activities.VnfSpecifications.get_application_config"
)
@asynctest.mock.patch(
- "osm_lcm.temporal.vnf_activities.VnfOperations.get_vdu_instantiation_params"
+ "osm_lcm.temporal.vnf_activities.VnfSpecifications.get_vdu_instantiation_params"
)
@asynctest.mock.patch(
"osm_lcm.temporal.juju_paas_activities.CharmInfoUtils.get_charm_info"
)
@asynctest.mock.patch(
- "osm_lcm.temporal.vnf_activities.VnfOperations.get_compute_constraints"
+ "osm_lcm.temporal.vnf_activities.VnfSpecifications.get_compute_constraints"
)
- async def test_get_vdu_instantiate_info__get_vdu_instantiation_params_failed__no_vdu_inst_wf_input_and_vdu_wf_id(
+ async def test_get_vdu_instantiate_input__get_vdu_instantiation_params_failed__no_vdu_inst_wf_input_and_vdu_wf_id(
self,
mock_get_compute_constraints,
mock_get_charm_info,
@@ -1199,7 +1185,7 @@
(
vdu_instantiate_input,
vdu_instantiate_workflow_id,
- ) = VnfInstantiateWorkflow._get_vdu_instantiate_info(
+ ) = VnfInstantiateWorkflowImpl._get_vdu_instantiate_input(
vnfr=sample_vnfr,
vnfd=sample_vnfd,
vdu=vdu,
@@ -1212,18 +1198,18 @@
)
@asynctest.mock.patch(
- "osm_lcm.temporal.vnf_activities.VnfOperations.get_application_config"
+ "osm_lcm.temporal.vnf_activities.VnfSpecifications.get_application_config"
)
@asynctest.mock.patch(
- "osm_lcm.temporal.vnf_activities.VnfOperations.get_vdu_instantiation_params"
+ "osm_lcm.temporal.vnf_activities.VnfSpecifications.get_vdu_instantiation_params"
)
@asynctest.mock.patch(
"osm_lcm.temporal.juju_paas_activities.CharmInfoUtils.get_charm_info"
)
@asynctest.mock.patch(
- "osm_lcm.temporal.vnf_activities.VnfOperations.get_compute_constraints"
+ "osm_lcm.temporal.vnf_activities.VnfSpecifications.get_compute_constraints"
)
- async def test_get_vdu_instantiate_info__get_application_config_failed__raise_get_application_config_exception(
+ async def test_get_vdu_instantiate_input__get_application_config_failed__raise_get_application_config_exception(
self,
mock_get_compute_constraints,
mock_get_charm_info,
@@ -1237,7 +1223,7 @@
"get_vdu_instantiation_params failed"
)
with self.assertRaises(GetApplicationConfigException):
- VnfInstantiateWorkflow._get_vdu_instantiate_info(
+ VnfInstantiateWorkflowImpl._get_vdu_instantiate_input(
vnfr=sample_vnfr,
vnfd=sample_vnfd,
vdu=vdu,
@@ -1246,18 +1232,18 @@
)
@asynctest.mock.patch(
- "osm_lcm.temporal.vnf_activities.VnfOperations.get_application_config"
+ "osm_lcm.temporal.vnf_activities.VnfSpecifications.get_application_config"
)
@asynctest.mock.patch(
- "osm_lcm.temporal.vnf_activities.VnfOperations.get_vdu_instantiation_params"
+ "osm_lcm.temporal.vnf_activities.VnfSpecifications.get_vdu_instantiation_params"
)
@asynctest.mock.patch(
"osm_lcm.temporal.juju_paas_activities.CharmInfoUtils.get_charm_info"
)
@asynctest.mock.patch(
- "osm_lcm.temporal.vnf_activities.VnfOperations.get_compute_constraints"
+ "osm_lcm.temporal.vnf_activities.VnfSpecifications.get_compute_constraints"
)
- async def test_get_vdu_instantiate_info__get_application_config_failed__no_vdu_inst_wf_input_and_vdu_wf_id(
+ async def test_get_vdu_instantiate_input__get_application_config_failed__no_vdu_inst_wf_input_and_vdu_wf_id(
self,
mock_get_compute_constraints,
mock_get_charm_info,
@@ -1274,7 +1260,7 @@
(
vdu_instantiate_input,
vdu_instantiate_workflow_id,
- ) = VnfInstantiateWorkflow._get_vdu_instantiate_info(
+ ) = VnfInstantiateWorkflowImpl._get_vdu_instantiate_input(
vnfr=sample_vnfr,
vnfd=sample_vnfd,
vdu=vdu,