From a28cb6fd75495d2bdb1fee0a371c7957e5ca3a0f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Henrik=20tom=20W=C3=B6rden?= <h.tomwoerden@indiscale.com>
Date: Wed, 1 Feb 2023 12:28:17 +0100
Subject: [PATCH] ENH: add default format

---
 src/caoscrawler/converters.py |  3 ++-
 unittests/test_converters.py  | 13 +++++++++++--
 2 files changed, 13 insertions(+), 3 deletions(-)

diff --git a/src/caoscrawler/converters.py b/src/caoscrawler/converters.py
index a2ad1df4..de399e26 100644
--- a/src/caoscrawler/converters.py
+++ b/src/caoscrawler/converters.py
@@ -1117,5 +1117,6 @@ class DateElementConverter(TextElementConverter):
         if matches is not None and "date" in matches:
             matches.update({"date": datetime.datetime.strptime(
                 matches["date"],
-                self.definition["date_format"]).date()})
+                self.definition["date_format"] if "date_format" in self.definition else "%Y-%m-%d"
+            ).date()})
         return matches
diff --git a/unittests/test_converters.py b/unittests/test_converters.py
index 83ebaf54..d7d1c9bb 100644
--- a/unittests/test_converters.py
+++ b/unittests/test_converters.py
@@ -575,11 +575,20 @@ def test_match_debug(converter_registry, capsys):
 
 def test_date_converter():
     dictconverter = DateElementConverter(
-        definition={"match_value": "(?P<date>.*)",
-                    "date_format": "%Y-%m-%d"},
+        definition={"match_value": "(?P<date>.*)"},
         name="conv",
         converter_registry=converter_registry)
     matches = dictconverter.match(TextElement("text", "2022-11-11"))
     assert "date" in matches
     assert isinstance(matches["date"], datetime.date)
     assert matches["date"].year == 2022
+
+    dictconverter = DateElementConverter(
+        definition={"match_value": "(?P<date>.*)",
+                    "date_format": "%y-%m-%d"},
+        name="conv",
+        converter_registry=converter_registry)
+    matches = dictconverter.match(TextElement("text", "22-11-11"))
+    assert "date" in matches
+    assert isinstance(matches["date"], datetime.date)
+    assert matches["date"].year == 2022
-- 
GitLab