From 32e2e6df702c67494f87e3282a1ae747cb5702c8 Mon Sep 17 00:00:00 2001 From: Carlos Natalino <carlos.natalino@chalmers.se> Date: Thu, 27 Oct 2022 14:29:55 +0200 Subject: [PATCH] Consolidating commong fixtures in a single file at the root of the tests folder. Updating ECOC'22 and OFC'22 tests to use it. --- src/tests/Fixtures.py | 24 +++++++++++++++++++ src/tests/ecoc22/tests/Fixtures.py | 21 ---------------- .../ecoc22/tests/test_functional_bootstrap.py | 2 +- .../ecoc22/tests/test_functional_cleanup.py | 2 +- .../tests/test_functional_create_service.py | 3 ++- .../tests/test_functional_delete_service.py | 3 ++- .../tests/test_functional_bootstrap.py | 13 +++++++++- .../tests/test_functional_cleanup.py | 14 ++++++++++- .../tests/test_functional_create_service.py | 13 +++++++++- .../tests/test_functional_delete_service.py | 14 ++++++++++- src/tests/ofc22/tests/Fixtures.py | 24 ------------------- .../ofc22/tests/test_functional_bootstrap.py | 2 +- .../ofc22/tests/test_functional_cleanup.py | 2 +- .../tests/test_functional_create_service.py | 3 ++- .../tests/test_functional_delete_service.py | 3 ++- 15 files changed, 86 insertions(+), 57 deletions(-) create mode 100644 src/tests/Fixtures.py diff --git a/src/tests/Fixtures.py b/src/tests/Fixtures.py new file mode 100644 index 000000000..8bf00b063 --- /dev/null +++ b/src/tests/Fixtures.py @@ -0,0 +1,24 @@ +import pytest +from common.Settings import get_setting +from compute.tests.mock_osm.MockOSM import MockOSM +from context.client.ContextClient import ContextClient +from device.client.DeviceClient import DeviceClient +from monitoring.client.MonitoringClient import MonitoringClient + +@pytest.fixture(scope='session') +def context_client(): + _client = ContextClient() + yield _client + _client.close() + +@pytest.fixture(scope='session') +def device_client(): + _client = DeviceClient() + yield _client + _client.close() + +@pytest.fixture(scope='session') +def monitoring_client(): + _client = MonitoringClient() + yield _client + _client.close() diff --git a/src/tests/ecoc22/tests/Fixtures.py b/src/tests/ecoc22/tests/Fixtures.py index 6e19e624d..4fdc59b4f 100644 --- a/src/tests/ecoc22/tests/Fixtures.py +++ b/src/tests/ecoc22/tests/Fixtures.py @@ -1,31 +1,10 @@ import pytest from common.Settings import get_setting from compute.tests.mock_osm.MockOSM import MockOSM -from context.client.ContextClient import ContextClient -from device.client.DeviceClient import DeviceClient -from monitoring.client.MonitoringClient import MonitoringClient #from .Objects_BigNet import WIM_MAPPING, WIM_PASSWORD, WIM_USERNAME from .Objects_DC_CSGW_TN import WIM_MAPPING, WIM_PASSWORD, WIM_USERNAME #from .Objects_DC_CSGW_TN_OLS import WIM_MAPPING, WIM_PASSWORD, WIM_USERNAME -@pytest.fixture(scope='session') -def context_client(): - _client = ContextClient() - yield _client - _client.close() - -@pytest.fixture(scope='session') -def device_client(): - _client = DeviceClient() - yield _client - _client.close() - -@pytest.fixture(scope='session') -def monitoring_client(): - _client = MonitoringClient() - yield _client - _client.close() - @pytest.fixture(scope='session') def osm_wim(): wim_url = 'http://{:s}:{:s}'.format( diff --git a/src/tests/ecoc22/tests/test_functional_bootstrap.py b/src/tests/ecoc22/tests/test_functional_bootstrap.py index 14ee21658..75f2bddf2 100644 --- a/src/tests/ecoc22/tests/test_functional_bootstrap.py +++ b/src/tests/ecoc22/tests/test_functional_bootstrap.py @@ -16,7 +16,7 @@ import logging from common.proto.context_pb2 import Context, ContextId, Device, DeviceId, Empty, Link, LinkId, Topology, TopologyId from context.client.ContextClient import ContextClient from device.client.DeviceClient import DeviceClient -from .Fixtures import context_client, device_client +from tests.Fixtures import context_client, device_client #from .Objects_BigNet import CONTEXT_ID, CONTEXTS, DEVICES, LINKS, TOPOLOGIES #from .Objects_DC_CSGW_TN import CONTEXT_ID, CONTEXTS, DEVICES, LINKS, TOPOLOGIES, OBJECTS_PER_TOPOLOGY #from .Objects_DC_CSGW_TN_OLS import CONTEXT_ID, CONTEXTS, DEVICES, LINKS, TOPOLOGIES, OBJECTS_PER_TOPOLOGY diff --git a/src/tests/ecoc22/tests/test_functional_cleanup.py b/src/tests/ecoc22/tests/test_functional_cleanup.py index 2fc61e818..017cc991d 100644 --- a/src/tests/ecoc22/tests/test_functional_cleanup.py +++ b/src/tests/ecoc22/tests/test_functional_cleanup.py @@ -17,7 +17,7 @@ from common.proto.context_pb2 import ContextId, DeviceId, Empty, LinkId, Topolog from common.tools.object_factory.Context import json_context_id from context.client.ContextClient import ContextClient from device.client.DeviceClient import DeviceClient -from .Fixtures import context_client, device_client +from tests.Fixtures import context_client, device_client #from .Objects_BigNet import CONTEXT_ID, CONTEXTS, DEVICES, LINKS, TOPOLOGIES #from .Objects_DC_CSGW_TN import CONTEXT_ID, CONTEXTS, DEVICES, LINKS, TOPOLOGIES #from .Objects_DC_CSGW_TN_OLS import CONTEXT_ID, CONTEXTS, DEVICES, LINKS, TOPOLOGIES diff --git a/src/tests/ecoc22/tests/test_functional_create_service.py b/src/tests/ecoc22/tests/test_functional_create_service.py index 2f576db83..8c9ca36a9 100644 --- a/src/tests/ecoc22/tests/test_functional_create_service.py +++ b/src/tests/ecoc22/tests/test_functional_create_service.py @@ -17,7 +17,8 @@ from common.proto.context_pb2 import ContextId, Empty, ServiceTypeEnum from common.tools.grpc.Tools import grpc_message_to_json_string from compute.tests.mock_osm.MockOSM import MockOSM from context.client.ContextClient import ContextClient -from .Fixtures import context_client, osm_wim +from tests.Fixtures import context_client +from .Fixtures import osm_wim #from .Objects_BigNet import ( # CONTEXT_ID, CONTEXTS, DEVICES, LINKS, TOPOLOGIES, WIM_SERVICE_CONNECTION_POINTS, WIM_SERVICE_TYPE) #from .Objects_DC_CSGW_TN import ( diff --git a/src/tests/ecoc22/tests/test_functional_delete_service.py b/src/tests/ecoc22/tests/test_functional_delete_service.py index 89d7a621f..de152ebb7 100644 --- a/src/tests/ecoc22/tests/test_functional_delete_service.py +++ b/src/tests/ecoc22/tests/test_functional_delete_service.py @@ -23,7 +23,8 @@ from common.tools.object_factory.Service import json_service_id from common.tools.grpc.Tools import grpc_message_to_json_string from compute.tests.mock_osm.MockOSM import MockOSM from context.client.ContextClient import ContextClient -from .Fixtures import context_client, osm_wim +from tests.Fixtures import context_client +from .Fixtures import osm_wim #from .Objects_BigNet import ( # CONTEXT_ID, CONTEXTS, DEVICES, LINKS, TOPOLOGIES, WIM_SERVICE_CONNECTION_POINTS, WIM_SERVICE_TYPE) #from .Objects_DC_CSGW_TN import ( diff --git a/src/tests/netx22-p4/tests/test_functional_bootstrap.py b/src/tests/netx22-p4/tests/test_functional_bootstrap.py index ccd31b1a7..0254ffd26 100644 --- a/src/tests/netx22-p4/tests/test_functional_bootstrap.py +++ b/src/tests/netx22-p4/tests/test_functional_bootstrap.py @@ -23,12 +23,23 @@ from context.client.ContextClient import ContextClient from context.client.EventsCollector import EventsCollector from common.proto.context_pb2 import ConfigActionEnum, Context, ContextId, Device, Empty, Link, Topology, DeviceOperationalStatusEnum from device.client.DeviceClient import DeviceClient -from tests.Fixtures import context_client, device_client from .Objects import CONTEXT_ID, CONTEXTS, DEVICES, LINKS, TOPOLOGIES LOGGER = logging.getLogger(__name__) LOGGER.setLevel(logging.DEBUG) +@pytest.fixture(scope='session') +def context_client(): + _client = ContextClient(get_setting('CONTEXTSERVICE_SERVICE_HOST'), get_setting('CONTEXTSERVICE_SERVICE_PORT_GRPC')) + yield _client + _client.close() + + +@pytest.fixture(scope='session') +def device_client(): + _client = DeviceClient(get_setting('DEVICESERVICE_SERVICE_HOST'), get_setting('DEVICESERVICE_SERVICE_PORT_GRPC')) + yield _client + _client.close() def test_prepare_scenario(context_client : ContextClient): # pylint: disable=redefined-outer-name diff --git a/src/tests/netx22-p4/tests/test_functional_cleanup.py b/src/tests/netx22-p4/tests/test_functional_cleanup.py index 9ea2c1f2b..32f716f1c 100644 --- a/src/tests/netx22-p4/tests/test_functional_cleanup.py +++ b/src/tests/netx22-p4/tests/test_functional_cleanup.py @@ -23,13 +23,25 @@ from context.client.ContextClient import ContextClient from context.client.EventsCollector import EventsCollector from common.proto.context_pb2 import ConfigActionEnum, ContextId, Device, DeviceId, Empty, LinkId, TopologyId, DeviceOperationalStatusEnum from device.client.DeviceClient import DeviceClient -from tests.Fixtures import context_client, device_client from .Objects import CONTEXT_ID, CONTEXTS, DEVICES, LINKS, TOPOLOGIES LOGGER = logging.getLogger(__name__) LOGGER.setLevel(logging.DEBUG) +@pytest.fixture(scope='session') +def context_client(): + _client = ContextClient(get_setting('CONTEXTSERVICE_SERVICE_HOST'), get_setting('CONTEXTSERVICE_SERVICE_PORT_GRPC')) + yield _client + _client.close() + + +@pytest.fixture(scope='session') +def device_client(): + _client = DeviceClient(get_setting('DEVICESERVICE_SERVICE_HOST'), get_setting('DEVICESERVICE_SERVICE_PORT_GRPC')) + yield _client + _client.close() + def test_scenario_cleanup( context_client : ContextClient, device_client : DeviceClient): # pylint: disable=redefined-outer-name diff --git a/src/tests/netx22-p4/tests/test_functional_create_service.py b/src/tests/netx22-p4/tests/test_functional_create_service.py index 50a5cf98c..501536bdb 100644 --- a/src/tests/netx22-p4/tests/test_functional_create_service.py +++ b/src/tests/netx22-p4/tests/test_functional_create_service.py @@ -23,7 +23,6 @@ from context.client.ContextClient import ContextClient from context.client.EventsCollector import EventsCollector from common.proto.context_pb2 import Context, ContextId, Device, Empty, Link, Topology from device.client.DeviceClient import DeviceClient -from tests.Fixtures import context_client, device_client from .Objects import CONTEXT_ID, CONTEXTS, DEVICES, LINKS, TOPOLOGIES from common.proto.context_pb2 import ConfigActionEnum, Device, DeviceId,\ DeviceOperationalStatusEnum @@ -31,6 +30,18 @@ from common.proto.context_pb2 import ConfigActionEnum, Device, DeviceId,\ LOGGER = logging.getLogger(__name__) LOGGER.setLevel(logging.DEBUG) +@pytest.fixture(scope='session') +def context_client(): + _client = ContextClient(get_setting('CONTEXTSERVICE_SERVICE_HOST'), get_setting('CONTEXTSERVICE_SERVICE_PORT_GRPC')) + yield _client + _client.close() + + +@pytest.fixture(scope='session') +def device_client(): + _client = DeviceClient(get_setting('DEVICESERVICE_SERVICE_HOST'), get_setting('DEVICESERVICE_SERVICE_PORT_GRPC')) + yield _client + _client.close() def test_rules_entry( context_client : ContextClient, device_client : DeviceClient): # pylint: disable=redefined-outer-name diff --git a/src/tests/netx22-p4/tests/test_functional_delete_service.py b/src/tests/netx22-p4/tests/test_functional_delete_service.py index cce136129..1be7e3240 100644 --- a/src/tests/netx22-p4/tests/test_functional_delete_service.py +++ b/src/tests/netx22-p4/tests/test_functional_delete_service.py @@ -23,13 +23,25 @@ from context.client.ContextClient import ContextClient from context.client.EventsCollector import EventsCollector from common.proto.context_pb2 import ConfigActionEnum, ContextId, Device, DeviceId, Empty, LinkId, TopologyId, DeviceOperationalStatusEnum from device.client.DeviceClient import DeviceClient -from tests.Fixtures import context_client, device_client from .Objects import CONTEXT_ID, CONTEXTS, DEVICES, LINKS, TOPOLOGIES LOGGER = logging.getLogger(__name__) LOGGER.setLevel(logging.DEBUG) +@pytest.fixture(scope='session') +def context_client(): + _client = ContextClient(get_setting('CONTEXTSERVICE_SERVICE_HOST'), get_setting('CONTEXTSERVICE_SERVICE_PORT_GRPC')) + yield _client + _client.close() + + +@pytest.fixture(scope='session') +def device_client(): + _client = DeviceClient(get_setting('DEVICESERVICE_SERVICE_HOST'), get_setting('DEVICESERVICE_SERVICE_PORT_GRPC')) + yield _client + _client.close() + def test_rules_delete( context_client : ContextClient, device_client : DeviceClient): # pylint: disable=redefined-outer-name diff --git a/src/tests/ofc22/tests/Fixtures.py b/src/tests/ofc22/tests/Fixtures.py index 3ca503918..752c20ed8 100644 --- a/src/tests/ofc22/tests/Fixtures.py +++ b/src/tests/ofc22/tests/Fixtures.py @@ -1,33 +1,9 @@ import pytest from common.Settings import get_setting from compute.tests.mock_osm.MockOSM import MockOSM -from context.client.ContextClient import ContextClient -from device.client.DeviceClient import DeviceClient -from monitoring.client.MonitoringClient import MonitoringClient from .Objects import WIM_MAPPING, WIM_PASSWORD, WIM_USERNAME -@pytest.fixture(scope='session') -def context_client(): - _client = ContextClient() - yield _client - _client.close() - - -@pytest.fixture(scope='session') -def device_client(): - _client = DeviceClient() - yield _client - _client.close() - - -@pytest.fixture(scope='session') -def monitoring_client(): - _client = MonitoringClient() - yield _client - _client.close() - - @pytest.fixture(scope='session') def osm_wim(): wim_url = 'http://{:s}:{:s}'.format( diff --git a/src/tests/ofc22/tests/test_functional_bootstrap.py b/src/tests/ofc22/tests/test_functional_bootstrap.py index 6b8c3f1fc..76c52810b 100644 --- a/src/tests/ofc22/tests/test_functional_bootstrap.py +++ b/src/tests/ofc22/tests/test_functional_bootstrap.py @@ -26,7 +26,7 @@ from context.client.EventsCollector import EventsCollector from common.proto.context_pb2 import Context, ContextId, Device, Empty, Link, Topology from device.client.DeviceClient import DeviceClient from .Objects import CONTEXT_ID, CONTEXTS, DEVICES, LINKS, TOPOLOGIES -from .Fixtures import context_client, device_client, monitoring_client +from tests.Fixtures import context_client, device_client, monitoring_client LOGGER = logging.getLogger(__name__) LOGGER.setLevel(logging.DEBUG) diff --git a/src/tests/ofc22/tests/test_functional_cleanup.py b/src/tests/ofc22/tests/test_functional_cleanup.py index 4fdeb1916..b0dfe5490 100644 --- a/src/tests/ofc22/tests/test_functional_cleanup.py +++ b/src/tests/ofc22/tests/test_functional_cleanup.py @@ -23,7 +23,7 @@ from context.client.ContextClient import ContextClient from context.client.EventsCollector import EventsCollector from common.proto.context_pb2 import ContextId, DeviceId, Empty, LinkId, TopologyId from device.client.DeviceClient import DeviceClient -from .Fixtures import context_client, device_client +from tests.Fixtures import context_client, device_client from .Objects import CONTEXT_ID, CONTEXTS, DEVICES, LINKS, TOPOLOGIES LOGGER = logging.getLogger(__name__) diff --git a/src/tests/ofc22/tests/test_functional_create_service.py b/src/tests/ofc22/tests/test_functional_create_service.py index ea7decfc0..5615f119b 100644 --- a/src/tests/ofc22/tests/test_functional_create_service.py +++ b/src/tests/ofc22/tests/test_functional_create_service.py @@ -25,7 +25,8 @@ from context.client.ContextClient import ContextClient from monitoring.client.MonitoringClient import MonitoringClient from context.client.EventsCollector import EventsCollector from common.proto.context_pb2 import ContextId, Empty -from .Fixtures import context_client, monitoring_client, osm_wim +from tests.Fixtures import context_client, monitoring_client +from .Fixtures import osm_wim from .Objects import ( CONTEXT_ID, CONTEXTS, DEVICE_O1_UUID, DEVICE_R1_UUID, DEVICE_R3_UUID, DEVICES, LINKS, TOPOLOGIES, WIM_SERVICE_CONNECTION_POINTS, WIM_SERVICE_TYPE) diff --git a/src/tests/ofc22/tests/test_functional_delete_service.py b/src/tests/ofc22/tests/test_functional_delete_service.py index 391df9916..5d9568cd8 100644 --- a/src/tests/ofc22/tests/test_functional_delete_service.py +++ b/src/tests/ofc22/tests/test_functional_delete_service.py @@ -24,7 +24,8 @@ from compute.tests.mock_osm.MockOSM import MockOSM from context.client.ContextClient import ContextClient from context.client.EventsCollector import EventsCollector from common.proto.context_pb2 import ContextId, Empty, ServiceTypeEnum -from .Fixtures import context_client, osm_wim +from tests.Fixtures import context_client +from .Fixtures import osm_wim from .Objects import ( CONTEXT_ID, CONTEXTS, DEVICE_O1_UUID, DEVICE_R1_UUID, DEVICE_R3_UUID, DEVICES, LINKS, TOPOLOGIES, WIM_MAPPING, WIM_PASSWORD, WIM_USERNAME) -- GitLab