use classmethod to build fields on records

This commit is contained in:
evilchili
2025-09-28 10:33:44 -07:00
parent f9ebb4a8d8
commit a76afaa126
3 changed files with 52 additions and 28 deletions
+16 -3
View File
@@ -43,16 +43,29 @@ def test_crud(db):
def test_pointers(db):
user = examples.User(name="john", email="john@foo")
players = examples.Group(name="players", users=[user])
players = examples.Group(name="players", members=[user], groups=[])
with pytest.raises(PointerReferenceError):
players = db.save(players)
user = db.save(user)
players.users[0] = user
players.members[0] = user
players = db.save(players)
assert players.users[0] == user
assert players.members[0] == user
def test_subgroups(db):
kirk = db.save(examples.User(name="James T. Kirk", email="riskybiznez@starfleet"))
pike = db.save(examples.User(name="Christopher Pike", email="hitit@starfleet"))
tos = db.save(examples.Group(name="The Original Series", members=[kirk]))
snw = db.save(examples.Group(name="Strange New Worlds", members=[pike]))
starfleet = db.save(examples.Group(name="Starfleet", groups=[tos, snw]))
assert tos in starfleet.groups
assert snw in starfleet.groups
assert kirk in set([user for group in starfleet.groups for user in group.members])
def test_unique(db):