diff --git a/test/conftest.py b/test/conftest.py index 748d607fdbe2bcbb3c8871f832bba3fdb7ee59a7..40c6a518d05884a0c5a627007e3e03e45171f0a6 100644 --- a/test/conftest.py +++ b/test/conftest.py @@ -158,3 +158,11 @@ def client_with_mocked_data(client, mocker): 'inventory_provider.routes.common.redis.StrictRedis', MockedRedis) return client + + +@pytest.fixture +def mocked_redis(mocker): + mocker.patch( + 'inventory_provider.routes.common.redis.StrictRedis', + MockedRedis) + diff --git a/test/test_junosspace_io.py b/test/test_junosspace_io.py index 82c774ba0f4c7081cc5c471063dabb7a727d7dda..eb910fc496b086d4de3d44128e06e651f0e9e717 100644 --- a/test/test_junosspace_io.py +++ b/test/test_junosspace_io.py @@ -1,9 +1,11 @@ import os +import re import responses import inventory_provider from inventory_provider import juniper +from inventory_provider.tasks import worker TEST_DATA_FILENAME = os.path.realpath(os.path.join( inventory_provider.__path__[0], @@ -29,4 +31,15 @@ def test_junosspace_devices_parsing(data_config): # test for .re\d+ greediness assert 'mx1.ams.nl.geant.net' in hostnames # test that 'qfx1.fra.de' is parsed - assert 'qfx1.fra.de.geant.net' in hostnames \ No newline at end of file + assert 'qfx1.fra.de.geant.net' in hostnames + + +def test_router_hostname_derivation(mocked_redis): + config = { + 'redis': { + 'hostname': None, + 'port': None + } + } + for hostname in worker._derive_router_hostnames(config): + assert re.match('^mx[\d].+\.geant\.net$', hostname)