🐛 Fix fields marked as "set" in models (#117)
Co-authored-by: Michael Statt <michael.statt@modelyst.io> Co-authored-by: Sebastián Ramírez <tiangolo@gmail.com>
This commit is contained in:
21
tests/test_fields_set.py
Normal file
21
tests/test_fields_set.py
Normal file
@@ -0,0 +1,21 @@
|
||||
from datetime import datetime, timedelta
|
||||
|
||||
from sqlmodel import Field, SQLModel
|
||||
|
||||
|
||||
def test_fields_set():
|
||||
class User(SQLModel):
|
||||
username: str
|
||||
email: str = "test@test.com"
|
||||
last_updated: datetime = Field(default_factory=datetime.now)
|
||||
|
||||
user = User(username="bob")
|
||||
assert user.__fields_set__ == {"username"}
|
||||
user = User(username="bob", email="bob@test.com")
|
||||
assert user.__fields_set__ == {"username", "email"}
|
||||
user = User(
|
||||
username="bob",
|
||||
email="bob@test.com",
|
||||
last_updated=datetime.now() - timedelta(days=1),
|
||||
)
|
||||
assert user.__fields_set__ == {"username", "email", "last_updated"}
|
||||
Reference in New Issue
Block a user