diff --git a/unittests/test_apiutils.py b/unittests/test_apiutils.py
index 045c140fa7bec4b94aa06727a7eebfd8ce500c8a..5fcc27dfa5ec31247f5788a7bb91570d29f7311f 100644
--- a/unittests/test_apiutils.py
+++ b/unittests/test_apiutils.py
@@ -29,7 +29,8 @@
 import caosdb as db
 import pickle
 import tempfile
-from caosdb.apiutils import apply_to_ids, create_id_query, retrieve_entity_with_id
+from caosdb.apiutils import apply_to_ids, create_id_query, resolve_reference
+import caosdb.apiutils
 from .test_property import testrecord
 
 
@@ -63,17 +64,42 @@ def test_apply_to_ids():
     assert rec.properties[0].id == -23345
     assert rec.id == -23
 
+
 def test_id_query():
-    ids = [1,2,3,4,5]
+    ids = [1, 2, 3, 4, 5]
     assert create_id_query(ids) == 'FIND ENTITY WITH ID=1 OR ID=2 OR ID=3 OR ID=4 OR ID=5'
 
-original_retrieve_entity_with_id = retrieve_entity_with_id
-retrieve_entity_with_id = lambda eid: db.Record(id=eid)
+
+original_retrieve_entity_with_id = caosdb.apiutils.retrieve_entity_with_id
+
+
+def dummy_entity(eid):
+    return db.Record(id=eid)
+
+
+caosdb.apiutils.retrieve_entity_with_id = dummy_entity
+
 
 def test_resolve_reference():
-    prop = db.Property(id = 1, datatype=db.REFERENCE, value=100)
-    prop_list = [db.Property(id = 2, datatype=db.REFERENCE, value=200), 
-                 db.Property(id = 3, datatype=db.REFERENCE, value=300), 
-                 db.Property(id = 4, datatype=db.Integer, value=400)
-    ]
-    
\ No newline at end of file
+    prop = db.Property(id=1, datatype=db.REFERENCE, value=100)
+    prop.is_valid = lambda: True
+    items = [200, 300, 400]
+    prop_list = db.Property(datatype=db.LIST(db.REFERENCE), value=items)
+    prop_list2 = db.Property(datatype=db.LIST(db.REFERENCE), value=db.Record(id=500))
+    resolve_reference(prop)
+    resolve_reference(prop_list)
+    resolve_reference(prop_list2)
+    assert prop.value.id == db.Record(id=100).id
+
+    prop_list_ids = []
+    for i in prop_list.value:
+        prop_list_ids.append(i.id)
+    assert prop_list_ids == items
+
+    for i in prop_list2.value:
+        assert i.id == 500
+
+    assert resolve_reference(db.Property(id=5000, datatype=db.INTEGER, value=2)) == None
+
+    # restore retrive_entity_with_id
+    caosdb.apiutils.retrieve_entity_with_id = original_retrieve_entity_with_id