Skip to content
Snippets Groups Projects
Commit 4f208be6 authored by Karel van Klink's avatar Karel van Klink :smiley_cat:
Browse files

update unit test for migrate IP trunk

parent 49143987
Branches
Tags
1 merge request!135Feature/trunk migration ipam
This commit is part of merge request !135. Comments created here will be created in the context of that merge request.
......@@ -24,13 +24,13 @@ from orchestrator.workflows.utils import wrap_modify_initial_input_form
from pydantic import validator
from pydantic_forms.core import ReadOnlyField
from pynetbox.models.dcim import Interfaces
from services.infoblox import DeletionError
from gso.products.product_blocks.iptrunk import IptrunkInterfaceBlock
from gso.products.product_blocks.router import RouterVendor
from gso.products.product_types.iptrunk import Iptrunk
from gso.products.product_types.router import Router
from gso.services import infoblox
from gso.services.infoblox import DeletionError
from gso.services.netbox_client import NetboxClient
from gso.services.provisioning_proxy import execute_playbook, pp_interaction
from gso.services.subscriptions import get_active_router_subscriptions
......
import contextlib
import ipaddress
import json
import logging
import os
......
......@@ -36,7 +36,7 @@ def migrate_form_input(
old_subscription = Iptrunk.from_subscription(product_id)
new_router = juniper_router_subscription_factory()
replace_side = str(old_subscription.iptrunk.iptrunk_sides[0].iptrunk_side_node.subscription.subscription_id)
new_side_ae_members = faker.generate_juniper_members_list()[0:2]
new_side_ae_members = faker.link_members_juniper()[0:2]
lag_name = "ae1"
elif use_juniper == UseJuniperSide.SIDE_B:
# Juniper -> Nokia
......@@ -48,7 +48,7 @@ def migrate_form_input(
old_subscription = Iptrunk.from_subscription(product_id)
new_router = nokia_router_subscription_factory()
replace_side = str(old_subscription.iptrunk.iptrunk_sides[0].iptrunk_side_node.subscription.subscription_id)
new_side_ae_members = faker.generate_nokia_members_list()[0:2]
new_side_ae_members = faker.link_members_nokia()[0:2]
lag_name = "LAG1"
elif use_juniper == UseJuniperSide.SIDE_BOTH:
# Juniper -> Juniper
......@@ -60,7 +60,7 @@ def migrate_form_input(
old_subscription = Iptrunk.from_subscription(product_id)
new_router = juniper_router_subscription_factory()
replace_side = str(old_subscription.iptrunk.iptrunk_sides[0].iptrunk_side_node.subscription.subscription_id)
new_side_ae_members = faker.generate_juniper_members_list()[0:2]
new_side_ae_members = faker.link_members_juniper()[0:2]
lag_name = "ae1"
else:
# Nokia -> Nokia
......@@ -68,7 +68,7 @@ def migrate_form_input(
old_subscription = Iptrunk.from_subscription(product_id)
new_router = nokia_router_subscription_factory()
replace_side = str(old_subscription.iptrunk.iptrunk_sides[0].iptrunk_side_node.subscription.subscription_id)
new_side_ae_members = faker.generate_nokia_members_list()[0:2]
new_side_ae_members = faker.link_members_nokia()[0:2]
lag_name = "LAG1"
return [
......@@ -107,6 +107,10 @@ def interface_lists_are_equal(list1, list2):
indirect=True,
)
@pytest.mark.workflow()
@patch("gso.services.infoblox.create_host_by_ip")
@patch("gso.services.infoblox.find_v6_host_by_fqdn")
@patch("gso.services.infoblox.find_host_by_fqdn")
@patch("gso.services.infoblox.delete_host_by_fqdn")
@patch("gso.services.provisioning_proxy._send_request")
@patch("gso.services.netbox_client.NetboxClient.get_available_interfaces")
@patch("gso.services.netbox_client.NetboxClient.get_available_lags")
......@@ -126,6 +130,10 @@ def test_migrate_iptrunk_success(
mocked_get_available_lags,
mocked_get_available_interfaces,
mock_execute_playbook,
mock_delete_host_by_fqdn,
mock_find_host_by_fqdn,
mock_find_v6_host_by_fqdn,
mock_create_host_by_ip,
migrate_form_input,
data_config_filename: PathLike,
):
......@@ -164,6 +172,10 @@ def test_migrate_iptrunk_success(
assert subscription.status == "active"
assert mock_execute_playbook.call_count == 9
assert mock_find_host_by_fqdn.call_count == 1
assert mock_find_v6_host_by_fqdn.call_count == 1
assert mock_create_host_by_ip.call_count == 1
assert mock_delete_host_by_fqdn.call_count == 1
# get some values from form
new_router = migrate_form_input[2]["new_node"]
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment