Skip to content

Commit 675480a

Browse files
committed
refactor(pendulum): Put both classes in the same file
1 parent 76f2c32 commit 675480a

3 files changed

Lines changed: 23 additions & 34 deletions

File tree

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
11
# Module for enriched date, datetime type
22
from .arrow_datetime import ArrowDateTime # noqa
3-
from .pendulum_date import PendulumDate # noqa
4-
from .pendulum_datetime import PendulumDateTime # noqa
3+
from .pendulum import PendulumDate, PendulumDateTime # noqa

sqlalchemy_utils/types/enriched_datetime/pendulum_datetime.py renamed to sqlalchemy_utils/types/enriched_datetime/pendulum.py

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,3 +71,25 @@ def process_result_value(self, value, dialect):
7171

7272
def process_literal_param(self, value, dialect):
7373
return value
74+
75+
76+
class PendulumDate(PendulumDateTime):
77+
78+
cache_ok = True
79+
impl = types.Date
80+
81+
def _coerce(self, value):
82+
if value:
83+
if not isinstance(value, pendulum.Date):
84+
value = super()._coerce(value).date()
85+
return value
86+
87+
def process_result_value(self, value, dialect):
88+
if value:
89+
return pendulum.parse(value.isoformat()).date()
90+
return value
91+
92+
def process_bind_param(self, value, dialect):
93+
if value:
94+
return self._coerce(value)
95+
return value

sqlalchemy_utils/types/enriched_datetime/pendulum_date.py

Lines changed: 0 additions & 32 deletions
This file was deleted.

0 commit comments

Comments
 (0)