diff --git a/gso/workflows/edge_port/create_edge_port.py b/gso/workflows/edge_port/create_edge_port.py index fbd1112b40750e22e27ab30d597aa228cc5d0041..5977206dfaa57ce4bf271c69464e440aa0fdc722 100644 --- a/gso/workflows/edge_port/create_edge_port.py +++ b/gso/workflows/edge_port/create_edge_port.py @@ -31,6 +31,7 @@ from gso.utils.helpers import ( ) from gso.utils.types.interfaces import LAGMember, PhysicalPortCapacity from gso.utils.types.tt_number import TTNumber +from gso.workflows.shared import create_summary_form def initial_input_form_generator(product_name: str) -> FormGenerator: @@ -83,7 +84,33 @@ def initial_input_form_generator(product_name: str) -> FormGenerator: ae_members: lag_ae_members interface_form_input_data = yield SelectInterfaceForm - return initial_user_input.model_dump() | interface_form_input_data.model_dump() + + input_forms_data = initial_user_input.model_dump() | interface_form_input_data.model_dump() + summary_form_data = input_forms_data | { + "node": Router.from_subscription(initial_user_input.node).router.router_fqdn, + "partner": get_partner_by_id(initial_user_input.partner).name, + "edge_port_ae_members": input_forms_data["ae_members"], + "edge_port_name": input_forms_data["name"], + "edge_port_description": input_forms_data["description"], + "edge_port_type": input_forms_data["service_type"], + } + summary_fields = [ + "node", + "partner", + "edge_port_type", + "speed", + "encapsulation", + "minimum_links", + "mac_address", + "ignore_if_down", + "geant_ga_id", + "enable_lacp", + "edge_port_name", + "edge_port_description", + "edge_port_ae_members", + ] + yield from create_summary_form(summary_form_data, product_name, summary_fields) + return input_forms_data @step("Create subscription") diff --git a/test/workflows/edge_port/test_create_edge_port.py b/test/workflows/edge_port/test_create_edge_port.py index a9a47b8def845ef50bd487c97bed5d49841c94de..ad804c91f5143148098b7cc4fbfc427d99783d29 100644 --- a/test/workflows/edge_port/test_create_edge_port.py +++ b/test/workflows/edge_port/test_create_edge_port.py @@ -68,10 +68,12 @@ def input_form_wizard_data(request, router_subscription_factory, partner_factory for interface in range(2) ], } + summary_view_step = {} return [ create_edge_port_step, create_edge_port_interface_step, + summary_view_step, ]