diff --git a/test/conftest.py b/test/conftest.py index 0a9a3cec059287e5068958351e8d21a81a578808..17fa67de0193e188c777f77c13ee9d7e4def792d 100644 --- a/test/conftest.py +++ b/test/conftest.py @@ -6,9 +6,12 @@ import re import shutil import tempfile +from lxml import etree import pytest + import inventory_provider from inventory_provider import config +from inventory_provider.tasks import worker TEST_DATA_DIRNAME = os.path.realpath(os.path.join( inventory_provider.__path__[0], @@ -197,3 +200,22 @@ def mocked_netifaces(mocker): data = ast.literal_eval(s) mocker.patch('netifaces.interfaces', lambda: data.keys()) mocker.patch('netifaces.ifaddresses', lambda n: data[n]) + +@pytest.fixture +def mocked_worker_module( + mocker, mocked_redis, data_config, + cached_test_data, mocked_netifaces): + + worker.InventoryTask.config = data_config + + def _mocked_snmp_interfaces(hostname, community, _): + return json.loads(cached_test_data['snmp-interfaces:' + hostname]) + mocker.patch( + 'inventory_provider.snmp.get_router_interfaces', + _mocked_snmp_interfaces) + + def _mocked_load_juniper_netconf_config(hostname, _): + return etree.XML(cached_test_data['netconf:' + hostname]) + mocker.patch( + 'inventory_provider.juniper.load_config', + _mocked_load_juniper_netconf_config) diff --git a/test/per_router/test_celery_worker.py b/test/per_router/test_celery_worker.py index 37a676a9731d2c588be288e9f31d095cc1db9ed7..e3e636c8b5bcb4772ffc7ef1ea9dae6bba89eea6 100644 --- a/test/per_router/test_celery_worker.py +++ b/test/per_router/test_celery_worker.py @@ -2,10 +2,6 @@ just checks that the worker methods call the right functions and some data ends up in the right place ... otherwise not very detailed """ -import json - -from lxml import etree -import pytest from inventory_provider.tasks import worker from inventory_provider.tasks.common import get_redis @@ -16,26 +12,6 @@ def backend_db(): }).db -@pytest.fixture -def mocked_worker_module( - mocker, mocked_redis, data_config, - cached_test_data, mocked_netifaces): - - worker.InventoryTask.config = data_config - - def _mocked_snmp_interfaces(hostname, community, _): - return json.loads(cached_test_data['snmp-interfaces:' + hostname]) - mocker.patch( - 'inventory_provider.snmp.get_router_interfaces', - _mocked_snmp_interfaces) - - def _mocked_load_juniper_netconf_config(hostname, _): - return etree.XML(cached_test_data['netconf:' + hostname]) - mocker.patch( - 'inventory_provider.juniper.load_config', - _mocked_load_juniper_netconf_config) - - def test_netconf_refresh_config(mocked_worker_module, router): del backend_db()['netconf:' + router] worker.netconf_refresh_config(router)