diff --git a/unittests/test_high_level_api.py b/unittests/test_high_level_api.py
index 296ac71b09ea67a7b341fc21080fe97361279d8a..72ac2bc340caaf6a6518b24ec3bfa875bfaa0582 100644
--- a/unittests/test_high_level_api.py
+++ b/unittests/test_high_level_api.py
@@ -26,13 +26,16 @@
 
 import caosdb as db
 from caosdb.high_level_api import (convert_to_entity, convert_to_python_object)
-from caosdb.high_level_api import (CaosDBPythonUnresolvedParent,)
+from caosdb.high_level_api import (CaosDBPythonUnresolvedParent,
+                                   CaosDBPythonUnresolvedReference)
 import pytest
 from lxml import etree
 import os
 import tempfile
 import pickle
 
+import sys, traceback, pdb
+
 @pytest.fixture
 def testrecord():
     parser = etree.XMLParser(remove_comments=True)
@@ -104,5 +107,48 @@ def test_convert_with_references():
     r = db.Record()
     r.add_property(name="ref", value=r_ref)
 
+    # try:
+    obj = convert_to_python_object(r)
+    # except:
+    #     extype, value, tb = sys.exc_info()
+    #     traceback.print_exc()
+    #     pdb.post_mortem(tb)
+    assert obj.ref.a == 42
+
+    # With datatype:
+    r_ref = db.Record()
+    r_ref.add_parent("bla")
+    r_ref.add_property(name="a", value=42)
+    
+    r = db.Record()
+    r.add_property(name="ref", value=r_ref)
+
+    obj = convert_to_python_object(r)
+    assert obj.ref.a == 42
+    # Parent does not automatically lead to a datatype:
+    assert obj.get_property_metadata("ref").datatype is None
+    assert obj.ref.has_parent("bla") is True
+
+    # Add datatype explicitely:
+    r_ref = db.Record()
+    r_ref.add_parent("bla")
+    r_ref.add_property(name="a", value=42)
+    
+    r = db.Record()
+    r.add_property(name="ref", value=r_ref, datatype="bla")
+
+    obj = convert_to_python_object(r)
+    assert obj.ref.a == 42
+    # Parent does not automatically lead to a datatype:
+    assert obj.get_property_metadata("ref").datatype is "bla"
+    assert obj.ref.has_parent("bla") is True
+
+    # Unresolved Reference:
+    r = db.Record()
+    r.add_property(name="ref", value=27, datatype="bla")
+
     obj = convert_to_python_object(r)
-    breakpoint()
+    # Parent does not automatically lead to a datatype:
+    assert obj.get_property_metadata("ref").datatype is "bla"
+    assert isinstance(obj.ref, CaosDBPythonUnresolvedReference)
+    assert obj.ref.id == 27