diff --git a/test/test_celery_worker_global.py b/test/test_celery_worker_global.py
new file mode 100644
index 0000000000000000000000000000000000000000..92633f8eb97c165cff3b40a9faaa0925926c5edc
--- /dev/null
+++ b/test/test_celery_worker_global.py
@@ -0,0 +1,46 @@
+"""
+just checks that the worker methods call the right functions
+and some data ends up in the right place ... otherwise not very detailed
+"""
+import contextlib
+
+from inventory_provider.tasks import worker
+from inventory_provider.tasks.common import get_redis
+
+
+def backend_db():
+    return get_redis({
+        'redis': {'hostname': None, 'port': None}
+    }).db
+
+
+@contextlib.contextmanager
+def _mocked_connection(x):
+    yield x
+
+
+def test_update_locations(mocker, mocked_worker_module):
+
+    mocker.patch(
+        'inventory_provider.db.opsdb.lookup_pop_info',
+        lambda c, h: [{'C': c, 'H': h}])
+    mocker.patch(
+        'inventory_provider.db.db.connection',
+        _mocked_connection)
+
+    def _cached_locations():
+        db = backend_db()
+        for k in db.keys():
+            if k.startswith('opsdb:location:'):
+                yield k
+
+    db = backend_db()
+    for k in list(_cached_locations()):
+        del db[k]
+
+    assert len(list(_cached_locations())) == 0  # sanity
+    worker.update_equipment_locations()
+    assert len(list(_cached_locations())) > 0
+
+    for k in _cached_locations():
+        print(db[k])