add string duration -> timedelta

This commit is contained in:
Fred Sonnenwald
2025-08-08 12:38:33 +01:00
parent d431dca353
commit 976708934f
2 changed files with 15 additions and 2 deletions

View File

@@ -4,7 +4,7 @@ from jambo.types.type_parser_options import TypeParserOptions
from pydantic import EmailStr, HttpUrl, IPvAnyAddress
from typing_extensions import Unpack
from datetime import date, datetime, time
from datetime import date, datetime, time, timedelta
class StringTypeParser(GenericTypeParser):
@@ -28,6 +28,7 @@ class StringTypeParser(GenericTypeParser):
"date": date,
"time": time,
"date-time": datetime,
"duration": timedelta,
}
format_pattern_mapping = {

View File

@@ -2,7 +2,7 @@ from jambo.parser import StringTypeParser
from pydantic import EmailStr, HttpUrl, IPvAnyAddress
from datetime import date, datetime, time
from datetime import date, datetime, time, timedelta
from unittest import TestCase
@@ -197,3 +197,15 @@ class TestStringTypeParser(TestCase):
type_parsing, type_validator = parser.from_properties("placeholder", properties)
self.assertEqual(type_parsing, datetime)
def test_string_parser_with_timedelta_format(self):
parser = StringTypeParser()
properties = {
"type": "string",
"format": "duration",
}
type_parsing, type_validator = parser.from_properties("placeholder", properties)
self.assertEqual(type_parsing, timedelta)