From 787eb49a368bb95fabb77e8502e817da4fa9f410 Mon Sep 17 00:00:00 2001 From: Neda Moeini <neda.moeini@geant.org> Date: Tue, 12 Nov 2024 10:57:30 +0100 Subject: [PATCH] Update creation and modification tests after adding policer_burst_rate field. --- gso/workflows/l2_circuit/create_layer_2_circuit.py | 5 ++--- test/fixtures/layer_2_circuit_fixtures.py | 8 +++++++- test/workflows/l2_circuit/test_create_layer_2_circuit.py | 5 +++++ test/workflows/l2_circuit/test_modify_layer_2_circuit.py | 2 ++ 4 files changed, 16 insertions(+), 4 deletions(-) diff --git a/gso/workflows/l2_circuit/create_layer_2_circuit.py b/gso/workflows/l2_circuit/create_layer_2_circuit.py index a7485897..0a15fceb 100644 --- a/gso/workflows/l2_circuit/create_layer_2_circuit.py +++ b/gso/workflows/l2_circuit/create_layer_2_circuit.py @@ -70,7 +70,6 @@ def initial_input_generator(product_name: str) -> FormGenerator: policer_bandwidth: _policer_field(policer_enabled=initial_user_input.policer_enabled) # type: ignore[valid-type] policer_burst_rate: _policer_field(policer_enabled=initial_user_input.policer_enabled) # type: ignore[valid-type] geant_sid: str - layer_2_circuit_side_a: Layer2CircuitSideSelection side_divider: Divider = Field(None, exclude=True) layer_2_circuit_side_b: Layer2CircuitSideSelection @@ -105,7 +104,7 @@ def initialize_subscription( vlan_range_upper_bound: VLAN_ID | None, policer_enabled: bool, # noqa: FBT001 policer_bandwidth: BandwidthString | None, - policed_burst_rate: BandwidthString | None, + policer_burst_rate: BandwidthString | None, geant_sid: str, ) -> State: """Build a subscription object from all user input.""" @@ -129,7 +128,7 @@ def initialize_subscription( subscription.layer_2_circuit.vlan_range_upper_bound = vlan_range_upper_bound subscription.layer_2_circuit.policer_enabled = policer_enabled subscription.layer_2_circuit.bandwidth = policer_bandwidth - subscription.layer_2_circuit.policer_burst_rate = policed_burst_rate + subscription.layer_2_circuit.policer_burst_rate = policer_burst_rate subscription.description = f"{subscription.product.name} - {subscription.layer_2_circuit.virtual_circuit_id}" subscription = Layer2Circuit.from_other_lifecycle(subscription, SubscriptionLifecycle.PROVISIONING) diff --git a/test/fixtures/layer_2_circuit_fixtures.py b/test/fixtures/layer_2_circuit_fixtures.py index 522b2b17..7ab7a7de 100644 --- a/test/fixtures/layer_2_circuit_fixtures.py +++ b/test/fixtures/layer_2_circuit_fixtures.py @@ -32,6 +32,7 @@ def layer_2_circuit_subscription_factory(faker, geant_partner, edge_port_subscri vlan_range_lower_bound: VLAN_ID | None = None, vlan_range_upper_bound: VLAN_ID | None = None, policer_bandwidth: BandwidthString | None = None, + policer_burst_rate: BandwidthString | None = None, layer_2_circuit_side_a_edgeport: UUIDstr | None = None, vlan_id_side_a: VLAN_ID | None = None, layer_2_circuit_side_b_edgeport: UUIDstr | None = None, @@ -98,7 +99,12 @@ def layer_2_circuit_subscription_factory(faker, geant_partner, edge_port_subscri subscription.layer_2_circuit.vlan_range_upper_bound = None subscription.layer_2_circuit.policer_enabled = policer_enabled - subscription.layer_2_circuit.bandwidth = policer_bandwidth if policer_enabled else None + if policer_enabled: + subscription.layer_2_circuit.bandwidth = policer_bandwidth or faker.bandwidth() + subscription.layer_2_circuit.policer_burst_rate = policer_burst_rate or faker.bandwidth() + else: + subscription.layer_2_circuit.bandwidth = None + subscription.layer_2_circuit.policer_burst_rate = None subscription.description = description or ( f"{subscription.product.name} - " f"{subscription.layer_2_circuit.virtual_circuit_id}" ) diff --git a/test/workflows/l2_circuit/test_create_layer_2_circuit.py b/test/workflows/l2_circuit/test_create_layer_2_circuit.py index 7550d969..c0d1b2df 100644 --- a/test/workflows/l2_circuit/test_create_layer_2_circuit.py +++ b/test/workflows/l2_circuit/test_create_layer_2_circuit.py @@ -27,6 +27,7 @@ def layer_2_circuit_input(faker, partner_factory, edge_port_subscription_factory "vlan_range_lower_bound": faker.vlan_id(), "vlan_range_upper_bound": faker.vlan_id(), "policer_bandwidth": faker.bandwidth() if policer_enabled else None, + "policer_burst_rate": faker.bandwidth() if policer_enabled else None, "geant_sid": faker.geant_sid(), "layer_2_circuit_side_a": {"edge_port": edge_port_a, "vlan_id": faker.vlan_id()}, "layer_2_circuit_side_b": {"edge_port": edge_port_b, "vlan_id": faker.vlan_id()}, @@ -63,4 +64,8 @@ def test_create_layer_2_circuit_success( assert subscription.layer_2_circuit.layer_2_circuit_sides[1].sbp.is_tagged is True assert subscription.layer_2_circuit.layer_2_circuit_sides[1].sbp.geant_sid == layer_2_circuit_input[2]["geant_sid"] assert subscription.layer_2_circuit.layer_2_circuit_type == Layer2CircuitType.TAGGED + assert subscription.layer_2_circuit.vlan_range_lower_bound == layer_2_circuit_input[2]["vlan_range_lower_bound"] + assert subscription.layer_2_circuit.vlan_range_upper_bound == layer_2_circuit_input[2]["vlan_range_upper_bound"] + assert subscription.layer_2_circuit.bandwidth == layer_2_circuit_input[2]["policer_bandwidth"] + assert subscription.layer_2_circuit.policer_burst_rate == layer_2_circuit_input[2]["policer_burst_rate"] assert subscription.layer_2_circuit.policer_enabled == layer_2_circuit_input[1]["policer_enabled"] diff --git a/test/workflows/l2_circuit/test_modify_layer_2_circuit.py b/test/workflows/l2_circuit/test_modify_layer_2_circuit.py index 078d9c25..3879a0fe 100644 --- a/test/workflows/l2_circuit/test_modify_layer_2_circuit.py +++ b/test/workflows/l2_circuit/test_modify_layer_2_circuit.py @@ -29,6 +29,7 @@ def test_modify_layer_2_circuit_change_policer_bandwidth( "vlan_range_lower_bound": subscription.layer_2_circuit.vlan_range_lower_bound, "vlan_range_upper_bound": subscription.layer_2_circuit.vlan_range_upper_bound, "policer_bandwidth": None, + "policer_burst_rate": None, }, ] result, _, _ = run_workflow("modify_layer_2_circuit", input_form_data) @@ -36,6 +37,7 @@ def test_modify_layer_2_circuit_change_policer_bandwidth( assert subscription.status == SubscriptionLifecycle.ACTIVE assert subscription.layer_2_circuit.policer_enabled is False assert subscription.layer_2_circuit.bandwidth is None + assert subscription.layer_2_circuit.policer_burst_rate is None @pytest.mark.parametrize("layer_2_circuit_service_type", [ProductName.GEANT_PLUS, ProductName.EXPRESSROUTE]) -- GitLab