Skip to content
Snippets Groups Projects
Commit 96b92c9c authored by Mohammad Torkashvand's avatar Mohammad Torkashvand Committed by Neda Moeini
Browse files

fix ruff complains

parent 863e26eb
No related branches found
No related tags found
1 merge request!122Feature/nat 329 interface names should validated 3
......@@ -223,7 +223,6 @@ def validate_site_name(site_name: str) -> str:
return site_name
<<<<<<< HEAD
class BaseSiteValidatorModel(BaseModel):
"""A base site validator model extended by create site and by import site."""
......
......@@ -138,6 +138,7 @@ def initial_input_form_generator(subscription_id: UUIDstr) -> FormGenerator:
def validate_interface_name_members(cls, side_b_ae_members: list[LAGMember]) -> list[LAGMember]:
vendor = subscription.iptrunk.iptrunk_sides[1].iptrunk_side_node.vendor
return validate_interface_name_list(side_b_ae_members, vendor)
user_input_side_b = yield ModifyIptrunkSideBForm
return initial_user_input.dict() | user_input_side_a.dict() | user_input_side_b.dict()
......
......@@ -37,6 +37,7 @@ def pytest_collection_modifyitems(config, items):
class UseJuniperSide(strEnum):
"""Define on tests on which side to use Juniper router"""
NONE = "none"
SIDE_A = "side_a"
SIDE_B = "side_b"
......@@ -87,13 +88,15 @@ class FakerProvider(BaseProvider):
interface_names = [f"{prefix}{i}" for prefix in ["xe-1/0/", "ge-3/0/", "xe-2/1/"] for i in range(iface_amount)]
return [
LAGMember(interface_name=interface_name, interface_description=self.generator.sentence())
for interface_name in interface_names]
for interface_name in interface_names
]
def generate_nokia_members_list(self) -> list[LAGMember]:
iface_amount = self.generator.random_int(min=2, max=5)
return [
LAGMember(interface_name=f"Interface{i}",
interface_description=self.generator.sentence()) for i in range(iface_amount)]
LAGMember(interface_name=f"Interface{i}", interface_description=self.generator.sentence())
for i in range(iface_amount)
]
@pytest.fixture(scope="session")
......
......@@ -8,7 +8,7 @@ from gso.schedules.scheduling import scheduler
@pytest.fixture(scope="module")
def validate_subscriptions():
from gso.schedules.validate_subscriptions import validate_subscriptions as vs
from gso.schedules.validate_subscriptions import validate_subscriptions as vs # noqa: PLC0415
return vs
......
......@@ -7,10 +7,12 @@ class MockedNetboxClient:
def get_device_by_name(self):
return self.BaseMockObject(id=1, name="test")
def get_available_lags(self) -> list[str]:
@staticmethod
def get_available_lags() -> list[str]:
return [f"LAG{lag}" for lag in range(1, 5)]
def get_available_interfaces(self):
@staticmethod
def get_available_interfaces():
interfaces = []
for interface in range(5):
interface_data = {
......@@ -30,14 +32,17 @@ class MockedNetboxClient:
def reserve_interface(self):
return self.BaseMockObject(id=1, name="test")
def allocate_interface(self):
@staticmethod
def allocate_interface():
return {"id": 1, "name": "test"}
def free_interface(self):
return self.BaseMockObject(id=1, name="test")
def detach_interfaces_from_lag(self):
@staticmethod
def detach_interfaces_from_lag():
return None
def delete_interface(self):
@staticmethod
def delete_interface():
return None
......@@ -55,10 +55,9 @@ def input_form_wizard_data(request, juniper_router_subscription_factory, nokia_r
else:
router_side_b = nokia_router_subscription_factory()
side_b_members = [
LAGMember(
interface_name=f"Interface{interface}",
interface_description=faker.sentence())
for interface in range(5)]
LAGMember(interface_name=f"Interface{interface}", interface_description=faker.sentence())
for interface in range(5)
]
create_ip_trunk_step = {
"tt_number": faker.tt_number(),
......
......@@ -23,7 +23,7 @@ def input_form_iptrunk_data(
juniper_router_subscription_factory,
nokia_router_subscription_factory,
iptrunk_side_subscription_factory,
):
):
use_juniper = getattr(request, "param", UseJuniperSide.NONE)
if use_juniper == UseJuniperSide.SIDE_A:
side_node = juniper_router_subscription_factory()
......@@ -83,10 +83,11 @@ def input_form_iptrunk_data(
]
@pytest.mark.parametrize("input_form_iptrunk_data", [UseJuniperSide.NONE,
UseJuniperSide.SIDE_A,
UseJuniperSide.SIDE_B,
UseJuniperSide.SIDE_BOTH], indirect=True)
@pytest.mark.parametrize(
"input_form_iptrunk_data",
[UseJuniperSide.NONE, UseJuniperSide.SIDE_A, UseJuniperSide.SIDE_B, UseJuniperSide.SIDE_BOTH],
indirect=True,
)
@pytest.mark.workflow()
@patch("gso.workflows.iptrunk.modify_trunk_interface.provisioning_proxy.provision_ip_trunk")
@patch("gso.services.netbox_client.NetboxClient.get_available_interfaces")
......@@ -140,9 +141,9 @@ def test_iptrunk_modify_trunk_interface_success(
# Only Nokia interfaces will checked
vendor_side_a = subscription.iptrunk.iptrunk_sides[0].iptrunk_side_node.vendor
vendor_side_b = subscription.iptrunk.iptrunk_sides[1].iptrunk_side_node.vendor
num_ifaces = (
len(new_side_a_ae_members) if vendor_side_a == RouterVendor.NOKIA else 0) + (
len(new_side_b_ae_members) if vendor_side_b == RouterVendor.NOKIA else 0)
num_ifaces = (len(new_side_a_ae_members) if vendor_side_a == RouterVendor.NOKIA else 0) + (
len(new_side_b_ae_members) if vendor_side_b == RouterVendor.NOKIA else 0
)
# Define free interfaces for only nokia sides
num_free_ifaces = 2 * (vendor_side_a == RouterVendor.NOKIA) + 2 * (vendor_side_b == RouterVendor.NOKIA)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment