From 45fe98bb225e32c21b1525b688c690673799dc84 Mon Sep 17 00:00:00 2001
From: Erik Reid <erik.reid@geant.org>
Date: Sat, 23 Jan 2021 22:45:56 +0100
Subject: [PATCH] test update_interfaces_to_services

---
 test/test_worker_utils.py | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/test/test_worker_utils.py b/test/test_worker_utils.py
index 73e27419..d0228efd 100644
--- a/test/test_worker_utils.py
+++ b/test/test_worker_utils.py
@@ -226,3 +226,24 @@ def test_build_snmp_peering_db(mocked_worker_module):
         found_record = True
 
     assert found_record
+
+
+def test_update_interfaces_to_services(mocker, mocked_worker_module):
+    test_data = [
+        {'equipment': 'eqa', 'interface_name': 'ifca', 'x': 99},
+        {'equipment': 'eqb', 'interface_name': 'ifcb', 'z': {'a': 1}}
+    ]
+
+    get_circuits = mocker.patch('inventory_provider.db.opsdb.get_circuits')
+    get_circuits.return_value = test_data
+
+    db = backend_db()  # also forces initialization
+    db.clear()
+
+    worker.update_interfaces_to_services()
+
+    for service in test_data:
+        key = 'opsdb:interface_services:{equipment}:{interface_name}'.format(
+            **service)
+        cached_service = json.loads(db[key])
+        assert cached_service == [service]
-- 
GitLab