From b334139f7af90b51b944d8bc4f1f4872b5c5de33 Mon Sep 17 00:00:00 2001 From: ahdamin Date: Fri, 11 Oct 2024 01:06:55 +0200 Subject: [PATCH] Use select and fetch_all_rows --- .../database/filters/test_genotype_filters.py | 9 +++--- tests/database/filters/test_user_filters.py | 32 ++++++------------- 2 files changed, 14 insertions(+), 27 deletions(-) diff --git a/tests/database/filters/test_genotype_filters.py b/tests/database/filters/test_genotype_filters.py index 53093b8..12a32e9 100644 --- a/tests/database/filters/test_genotype_filters.py +++ b/tests/database/filters/test_genotype_filters.py @@ -1,5 +1,6 @@ """Module to test the genotype filters.""" +from sqlalchemy.future import select from sqlalchemy.orm import Query from genotype_api.database.filters.genotype_filters import filter_genotypes_by_id @@ -13,11 +14,9 @@ async def test_filter_genotypes_by_id(store: Store, test_genotype: Genotype, hel await helpers.ensure_genotype(store=store, genotype=test_genotype) # WHEN filtering genotypes by id - query: Query = store._get_query(Genotype) - result = await store.session.execute(query) - genotypes: list[Genotype] = filter_genotypes_by_id( - entry_id=test_genotype.id, genotypes=result.scalars() - ).all() + query: Query = select(Genotype) + filtered_query = filter_genotypes_by_id(entry_id=test_genotype, genotypes=query) + genotypes: list[Genotype] = await store.fetch_all_rows(filtered_query) # THEN assert the genotype is returned assert genotypes diff --git a/tests/database/filters/test_user_filters.py b/tests/database/filters/test_user_filters.py index 8eea428..a57157d 100644 --- a/tests/database/filters/test_user_filters.py +++ b/tests/database/filters/test_user_filters.py @@ -1,9 +1,9 @@ """Module to test the user filters.""" +from sqlalchemy.future import select from sqlalchemy.orm import Query from genotype_api.database.filters.user_filters import ( - apply_user_filter, filter_users_by_email, filter_users_by_id, filter_users_by_name, @@ -17,13 +17,9 @@ async def test_filter_users_by_id(base_store: Store, test_user: User): # GIVEN a store with a user # WHEN filtering users by id - query: Query = base_store._get_query(User) - filter_functions = filter_users_by_id(user_id=test_user.id, users=query) - filtered_query = apply_user_filter( - users=query, filter_functions=filter_functions, user_id=test_user.id - ) - result = await base_store.session.execute(filtered_query) - user: User = result.scalars().first() + query: Query = select(User) + filtered_query = filter_users_by_id(user_id=test_user.id, users=query) + user: User = await base_store.fetch_first_row(filtered_query) # THEN the user is returned assert user @@ -35,13 +31,9 @@ async def test_filter_users_by_email(base_store: Store, test_user: User): # GIVEN a store with a user # WHEN filtering users by email - query: Query = base_store._get_query(User) - filter_functions = filter_users_by_email(email=test_user.email, users=query) - filtered_query = apply_user_filter( - users=query, filter_functions=filter_functions, email=test_user.email - ) - result = await base_store.session.execute(filtered_query) - user: User = result.scalars().first() + query: Query = select(User) + filtered_query = filter_users_by_email(email=test_user.email, users=query) + user: User = await base_store.fetch_first_row(filtered_query) # THEN the user is returned assert user @@ -53,13 +45,9 @@ async def test_filter_users_by_name(base_store: Store, test_user: User): # GIVEN a store with a user # WHEN filtering users by name - query: Query = base_store._get_query(User) - filter_functions = filter_users_by_name(name=test_user.name, users=query) - filtered_query = apply_user_filter( - users=query, filter_functions=filter_functions, name=test_user.name - ) - result = await base_store.session.execute(filtered_query) - user: User = result.scalars().first() + query: Query = select(User) + filtered_query = filter_users_by_name(name=test_user.name, users=query) + user: User = await base_store.fetch_first_row(filtered_query) # THEN the user is returned assert user