diff --git a/unittests/test_apiutils.py b/unittests/test_apiutils.py
index 264b4c880022e6fd135426864bf9c5084c047eca..7511014475ead4145559641dddc28c6477949ee0 100644
--- a/unittests/test_apiutils.py
+++ b/unittests/test_apiutils.py
@@ -29,7 +29,7 @@
 import caosdb as db
 import pickle
 import tempfile
-from caosdb.apiutils import apply_to_ids, create_id_query, resolve_reference
+from caosdb.apiutils import apply_to_ids, create_id_query, resolve_reference, compare_entities
 import caosdb.apiutils
 from .test_property import testrecord
 
@@ -102,3 +102,33 @@ def test_resolve_reference():
 
     # restore retrive_entity_with_id
     caosdb.apiutils.retrieve_entity_with_id = original_retrieve_entity_with_id
+
+    
+def test_compare_entities():
+    r1 = db.Record()
+    r2 = db.Record()
+    r1.add_parent("bla")
+    r2.add_parent("bla")
+    r1.add_parent("lopp")
+    r1.add_property("test", value=2)
+    r2.add_property("test", value=2)
+    r1.add_property("tests", value=3)
+    r2.add_property("tests", value=45)
+    r1.add_property("tests_234234", value=45)
+    r2.add_property("tests_TT", value=45)
+
+    diff_r1, diff_r2 = compare_entities(r1, r2)
+
+    assert len(diff_r1["parents"]) == 1
+    assert len(diff_r2["parents"]) == 0
+    assert len(diff_r1["properties"]) == 2
+    assert len(diff_r2["properties"]) == 2
+
+    assert "test" not in diff_r1["properties"]
+    assert "test" not in diff_r2["properties"]
+    
+    assert "tests" in diff_r1["properties"]
+    assert "tests" in diff_r2["properties"]
+
+    assert "tests_234234" in diff_r1["properties"]
+    assert "tests_TT" in diff_r2["properties"]