home
·
contact
·
privacy
projects
/
plomtask
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Improve __eq__ of BaseModel to compare all saved attributes; plus minor refactorings.
[plomtask]
/
plomtask
/
days.py
diff --git
a/plomtask/days.py
b/plomtask/days.py
index 78340e2d13000e7ef49bff1bdc24f27e561993c1..9f3aa697a831758d0635109446a35e73428b7181 100644
(file)
--- a/
plomtask/days.py
+++ b/
plomtask/days.py
@@
-30,14
+30,11
@@
class Day(BaseModel[str]):
to_save = ['comment']
def __init__(self, date: str, comment: str = '') -> None:
to_save = ['comment']
def __init__(self, date: str, comment: str = '') -> None:
-
super().__init__
(date)
- s
elf.id_: str = valid_date(date
)
+
id_ = valid_date
(date)
+ s
uper().__init__(id_
)
self.datetime = datetime.strptime(self.date, DATE_FORMAT)
self.comment = comment
self.datetime = datetime.strptime(self.date, DATE_FORMAT)
self.comment = comment
- def __eq__(self, other: object) -> bool:
- return isinstance(other, self.__class__) and self.date == other.date
-
def __lt__(self, other: Day) -> bool:
return self.date < other.date
def __lt__(self, other: Day) -> bool:
return self.date < other.date
@@
-69,6
+66,7
@@
class Day(BaseModel[str]):
@property
def date(self) -> str:
"""Return self.id_ under the assumption it's a date string."""
@property
def date(self) -> str:
"""Return self.id_ under the assumption it's a date string."""
+ assert isinstance(self.id_, str)
return self.id_
@property
return self.id_
@property
@@
-90,4
+88,4
@@
class Day(BaseModel[str]):
def save(self, db_conn: DatabaseConnection) -> None:
"""Add (or re-write) self to DB and cache."""
def save(self, db_conn: DatabaseConnection) -> None:
"""Add (or re-write) self to DB and cache."""
- self.save_core(db_conn
, update_with_lastrowid=False
)
+ self.save_core(db_conn)