diff --git a/integrationtests/test_base_table_exporter_integration.py b/integrationtests/test_base_table_exporter_integration.py
index b3dad7a8b29462fdd70d142de5bb0f69e0f7e45c..1c9158bd1d9600884571957d4916939f82c1a9ca 100644
--- a/integrationtests/test_base_table_exporter_integration.py
+++ b/integrationtests/test_base_table_exporter_integration.py
@@ -124,7 +124,7 @@ def test_find_functions():
 
 def test_queries():
     rec1, rec2, _, _ = insert_entities()
-    # no explicit functions since only `query` key is used, 
+    # no explicit functions since only `query` key is used,
     # so works with BaseTableExporter
     export_dict = {
         "Test_Property_1": {},
diff --git a/src/caosadvancedtools/cfood.py b/src/caosadvancedtools/cfood.py
index 1bb842dec9f3df61e9073cec868e51e71e7178db..b61982c64a00f6cdf087d343491606c1c1c8c5a4 100644
--- a/src/caosadvancedtools/cfood.py
+++ b/src/caosadvancedtools/cfood.py
@@ -45,6 +45,7 @@ from abc import ABCMeta, abstractmethod
 import caosdb as db
 from caosdb.exceptions import AmbiguityException, EntityDoesNotExistError
 
+from datetime import datetime
 from .datamodel_problems import DataModelProblems
 from .guard import global_guard as guard
 
@@ -85,7 +86,7 @@ def get_property(name):
         try:
             prop = db.execute_query("FIND Property with name='{}'".format(
                 name),
-                                    unique=True)
+                unique=True)
         except (EntityDoesNotExistError, AmbiguityException):
             # Property might actually be a RecordTypes
             prop = get_recordtype(name)
@@ -586,6 +587,15 @@ def assure_has_property(entity, name, value, to_be_updated=None,
 
             break
 
+        # cover special case of datetimes that are returned as strings
+        # by pylib.
+        if isinstance(value, datetime):
+
+            if datetime.fromisoformat(el.value) == value:
+                contained = True
+
+                break
+
     if contained:
         logger.debug("entity {} has property  {} with value {}".format(
             entity.id, name, value))
diff --git a/src/caosadvancedtools/table_export.py b/src/caosadvancedtools/table_export.py
index 64a2b7ed6ef9aa04fa4cd042db4684bb348adb94..bed0edc97a794dd83b2bdd7b1c0449c710c18d3f 100644
--- a/src/caosadvancedtools/table_export.py
+++ b/src/caosadvancedtools/table_export.py
@@ -154,7 +154,8 @@ class BaseTableExporter(object):
                 except Exception as exc:
                     # invalid query
                     logger.debug(exc)
-                    errmssg = "Empty or invalid query '{}' for entry {}".format(q, e)
+                    errmssg = "Empty or invalid query '{}' for entry {}".format(
+                        q, e)
                     raise TableExportError(errmssg)
 
                 if val is not None:
diff --git a/unittests/test_cfood.py b/unittests/test_cfood.py
index 0545a44784e8d571aebcbc759a2b8a51eb7cea0b..f340bfb893996d2d48e4607814c34f2d707f6cc9 100644
--- a/unittests/test_cfood.py
+++ b/unittests/test_cfood.py
@@ -32,6 +32,9 @@ from caosadvancedtools.cfood import (AbstractCFood, AbstractFileCFood, CMeal,
                                      get_entity_for_path)
 from caosadvancedtools.crawler import FileCrawler
 from caosadvancedtools.example_cfood import ExampleCFood
+from caosdb.common.models import _parse_single_xml_element
+from lxml import etree
+from datetime import datetime
 
 PATTERN = "h.*"
 
@@ -215,6 +218,26 @@ class InsertionTest(unittest.TestCase):
         assert "parent" not in ps
         assert "other_parent" not in ps
 
+    def test_assure_datetime(self):
+        entity_xml = '<Record id="1234" name="Test_Record"><Property id="1233" name="TestDate" datatype="DATETIME">{}</Property></Record>'
+        to_be_updated = []
+        rec = _parse_single_xml_element(
+            etree.fromstring(entity_xml.format("2020-01-01")))
+        assure_has_property(entity=rec, name="TestDate", value=datetime(
+            2020, 1, 1), to_be_updated=to_be_updated)
+        assert not to_be_updated
+        assure_has_property(entity=rec, name="TestDate", value=datetime(
+            2020, 1, 1, 0, 0), to_be_updated=to_be_updated)
+        assert not to_be_updated
+        assure_has_property(entity=rec, name="TestDate", value=datetime(
+            2020, 1, 1, 15, 0), to_be_updated=to_be_updated)
+        assert len(to_be_updated) == 1
+        rec = _parse_single_xml_element(etree.fromstring(
+            entity_xml.format("2020-01-01T00:00:00.000")))
+        assure_has_property(entity=rec, name="TestDate", value=datetime(
+            2020, 1, 1), to_be_updated=to_be_updated)
+        assert len(to_be_updated) == 1
+
 
 class DependendTest(unittest.TestCase):
     def test(self):