diff --git a/test/test_worker_utils.py b/test/test_worker_utils.py index b62e9cb05e590b87ef015f89232b326b957a87e8..3add562c8fac4c88397afa1f85fc1db8325f7729 100644 --- a/test/test_worker_utils.py +++ b/test/test_worker_utils.py @@ -1,6 +1,7 @@ """ tests of a few worker utilities """ +import contextlib import json import re @@ -20,20 +21,36 @@ def backend_db(): }).db -def test_build_interface_services(mocked_worker_module): + +@contextlib.contextmanager +def mocked_connection(ignored): + yield None + +def test_build_interface_services(mocker, mocked_worker_module): """ checks that valid interface service objects are created :param mocked_worker_module: fixture :return: """ + + def _mocked_get_service_users(cx, service_ids): + for id in service_ids: + yield {'service_id': id, 'user': 'AAAAA'} + yield {'service_id': id, 'user': 'BBBB'} + + mocker.patch('inventory_provider.db.db.connection', mocked_connection) + mocker.patch( + 'inventory_provider.db.opsdb.get_service_users', + _mocked_get_service_users) + ifc_schema = { '$schema': 'http://json-schema.org/draft-07/schema#', - 'type': 'object', 'properties': { 'description': {'type': 'string'}, 'router': {'type': 'string'}, - 'interface': {'type': 'string'} + 'interface': {'type': 'string'}, + 'user': {'type': 'string'} }, 'required': ['router', 'interface', 'description'], 'additionalProperties': False