migrate db.get_many to SQLAlchemy

This commit is contained in:
ducklet 2023-03-19 23:14:59 +01:00
parent a444909b1f
commit af9c166124
2 changed files with 45 additions and 15 deletions

View file

@ -34,10 +34,37 @@ async def test_get_all(shared_conn: db.Database):
assert [] == list(await db.get_all(models.Movie, id="blerp"))
assert [m1] == list(await db.get_all(models.Movie, id=str(m1.id)))
assert [m1, m2] == list(await db.get_all(models.Movie, release_year=2013))
assert [m1, m2] == list(
await db.get_all(models.Movie, release_year=m1.release_year)
)
assert [m1, m2, m3] == list(await db.get_all(models.Movie))
@pytest.mark.asyncio
async def test_get_many(shared_conn: db.Database):
async with shared_conn.transaction(force_rollback=True):
m1 = a_movie()
await db.add(m1)
m2 = a_movie(release_year=m1.release_year)
await db.add(m2)
m3 = a_movie(release_year=m1.release_year + 1)
await db.add(m3)
assert [] == list(await db.get_many(models.Movie)), "selected nothing"
assert [m1] == list(await db.get_many(models.Movie, id=[str(m1.id)]))
assert [m1] == list(await db.get_many(models.Movie, id={str(m1.id)}))
assert [m1, m2] == list(
await db.get_many(models.Movie, release_year=[m1.release_year])
)
assert [m1, m2, m3] == list(
await db.get_many(
models.Movie, release_year=[m1.release_year, m3.release_year]
)
)
@pytest.mark.asyncio
async def test_add_and_get(shared_conn: db.Database):
async with shared_conn.transaction(force_rollback=True):