diff --git a/unittests/test_yaml_model_parser.py b/unittests/test_yaml_model_parser.py
index 5df3b8ea5d3c72ce614c33413e00f5bc8774f9f1..e645dcd6d4c37c97758a7d6eaaba30e6c8bc7a12 100644
--- a/unittests/test_yaml_model_parser.py
+++ b/unittests/test_yaml_model_parser.py
@@ -30,8 +30,6 @@ from caosadvancedtools.models.parser import (TwiceDefinedException,
 from linkahead.apiutils import compare_entities
 from pytest import mark, raises
 
-from unittests.mock import Mock
-
 
 def to_file(string):
     f = NamedTemporaryFile(mode="w", delete=False)
@@ -676,12 +674,14 @@ test_reference:
     # comparison with a version taken from a LinkAhead instance will have these attributes.
     # Furthermore, RT2 will be set as the datatype **in object version** in the yaml definition, while
     # it is an ID in case of the version from the LinkAhead instance.
+    # p_foo = db.Property(name="foo", datatype="INTEGER", description="bla bla", unit="m")
+    # rt2 = db.RecordType(name="RT2")
+    # rt1 = db.RecordType(name="RT1")
+    # rt1.add_property(p_foo)
+    # rt1.add_property(rt2)
 
-    p_foo = db.Property(name="foo", datatype="INTEGER", description="bla bla", unit="m")
-    rt2 = db.RecordType(name="RT2")
-    rt1 = db.RecordType(name="RT1")
-    rt1.add_property(p_foo)
-    rt1.add_property(rt2)
+    # existing_entities = [
+    #   p_foo, rt2, rt1]
 
     server_response = """
 <Entities>
@@ -710,26 +710,39 @@ test_reference:
     c2 = compare_entities(model["RT1"], entities[1])
     c3 = compare_entities(model["RT2"], entities[2])
     c4 = compare_entities(model["test_reference"], entities[3])
+
     for cs in (c1, c2, c3, c4):
-        assert "id" not in cs[0]
+        assert "id" in cs[0]
+        assert cs[0]["id"] is None
         assert "id" in cs[1]
+        assert cs[1]["id"] is not None
 
-    mq = Mock()
-
-    def mq_init(self, query):
-        self.query = query
+    # The server response would be the same as the xml above:
+    def get_existing_entities(ent_cont):
+        return entities
 
-    def mq_execute(self, unique=True):
-        pass
+    class MockQuery:
+        def __init__(self, q):
+            self.q = q
 
-    mq.__init__ = mq_init
-    mq.execute.side_effect = mq_execute
+        def execute(self, unique=True):
+            id = int(self.q.split("=")[1])
+            for existing_ent in entities:
+                if existing_ent.id == id:
+                    return existing_ent
+            return None
 
-    caosadvancedtools.models.parser.db.Query = mq
+    model.get_existing_entities = get_existing_entities
+    caosadvancedtools.models.parser.db.Query = MockQuery
+    caosadvancedtools.models.parser.db.Container.update = Mock()
+    caosadvancedtools.models.parser.db.Container.insert = Mock()
 
     model.sync_data_model(True, True)
-
-    stdout, stderr = capfd.readouterr()
+    assert caosadvancedtools.models.parser.db.Container.update.called
+    assert not caosadvancedtools.models.parser.db.Container.insert.called
+    output, err = capfd.readouterr()
+    print(output)
+    assert False
 
     # TODO: test that there were no changes required
 
@@ -766,9 +779,11 @@ RT:
     model.get_existing_entities = get_existing_entities
     caosadvancedtools.models.parser.db.Query = MockQuery
     caosadvancedtools.models.parser.db.Container.update = Mock()
+    caosadvancedtools.models.parser.db.Container.insert = Mock()
 
     model.sync_data_model(True, True)
     assert caosadvancedtools.models.parser.db.Container.update.called
+    assert not caosadvancedtools.models.parser.db.Container.insert.called
     output, err = capfd.readouterr()
     print(output)
     assert "version from the yaml file: TEXT" in output