Skip to content
Snippets Groups Projects
Commit d4a2edc2 authored by Neda Moeini's avatar Neda Moeini
Browse files

Made tox happy.

parent a9630172
Branches
Tags
1 merge request!183Enhancement/nat 484 modify connection strategy
Pipeline #86000 canceled
This commit is part of merge request !183. Comments created here will be created in the context of that merge request.
"""Modify connection strategy workflow. Flipping the connection between in-band to out-of-band."""
from orchestrator.forms import FormPage
from orchestrator.targets import Target
from orchestrator.types import FormGenerator, State, UUIDstr
......@@ -11,13 +12,11 @@ from gso.utils.shared_enums import ConnectionStrategy
def initial_input_form_generator(subscription_id: UUIDstr) -> FormGenerator:
"""Initial form with a choice field to modify the connection strategy."""
"""Modify the connection strategy initial formruff format."""
subscription = Router.from_subscription(subscription_id)
current_connection_strategy = (
ConnectionStrategy.OUT_OF_BAND
if subscription.router.router_access_via_ts
else ConnectionStrategy.IN_BAND
ConnectionStrategy.OUT_OF_BAND if subscription.router.router_access_via_ts else ConnectionStrategy.IN_BAND
)
class ModifyConnectionStrategyForm(FormPage):
......@@ -33,8 +32,12 @@ def initial_input_form_generator(subscription_id: UUIDstr) -> FormGenerator:
@step("Update subscription model")
def update_subscription_model(subscription: Router, connection_strategy: str) -> State:
"""Update the database model to update connection strategy."""
subscription.router.router_access_via_ts = False if connection_strategy == ConnectionStrategy.IN_BAND else True
"""Update the database model to reflect the new connection strategy.
If the connection strategy is set to IN-BAND, then access_via_ts should be set to False.
Conversely, if the connection strategy is set to OUT-OF-BAND, access_via_ts should be set to True.
"""
subscription.router.router_access_via_ts = connection_strategy == ConnectionStrategy.OUT_OF_BAND
return {"subscription": subscription}
......@@ -46,11 +49,4 @@ def update_subscription_model(subscription: Router, connection_strategy: str) ->
)
def modify_connection_strategy() -> StepList:
"""Modify the connection strategy."""
return (
init
>> store_process_subscription(Target.MODIFY)
>> unsync
>> update_subscription_model
>> resync
>> done
)
return init >> store_process_subscription(Target.MODIFY) >> unsync >> update_subscription_model >> resync >> done
......@@ -12,9 +12,7 @@ def test_modify_connection_strategy(responses, nokia_router_subscription_factory
assert subscription.router.router_access_via_ts is True
form_data = [
{"subscription_id": subscription_id},
{
"connection_strategy": ConnectionStrategy.IN_BAND
},
{"connection_strategy": ConnectionStrategy.IN_BAND},
]
result, _, _ = run_workflow("modify_connection_strategy", form_data)
assert_complete(result)
......@@ -23,4 +21,3 @@ def test_modify_connection_strategy(responses, nokia_router_subscription_factory
updated_subscription = Router.from_subscription(subscription_id)
assert updated_subscription.status == "active"
assert updated_subscription.router.router_access_via_ts is False
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment