Skip to content

Commit e8177cf

Browse files
Ralf GrubenmannPanaetius
authored andcommitted
test: fix tests
1 parent 472e50c commit e8177cf

File tree

3 files changed

+35
-32
lines changed

3 files changed

+35
-32
lines changed

components/renku_data_services/migrations/versions/17eea03f938e_move_user_preferences_to_user_schema.py

Lines changed: 17 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -53,21 +53,24 @@ def upgrade() -> None:
5353

5454

5555
def downgrade() -> None:
56-
op.execute("CREATE SCHEMA user_preferences")
57-
op.create_table(
58-
"user_preferences",
59-
sa.Column("id", sa.Integer(), nullable=False),
60-
sa.Column("user_id", sa.String(), nullable=False),
61-
sa.Column(
62-
"pinned_projects",
63-
sa.JSON().with_variant(postgresql.JSONB(astext_type=sa.Text()), "postgresql"),
64-
nullable=False,
65-
),
66-
sa.PrimaryKeyConstraint("id"),
67-
sa.UniqueConstraint("user_id"),
68-
schema="user_preferences",
69-
)
7056
conn = op.get_bind()
57+
inspector = sa.inspect(conn)
58+
if "user_preferences" not in inspector.get_schema_names():
59+
op.execute("CREATE SCHEMA user_preferences")
60+
if "user_preferences" not in inspector.get_table_names(schema="user_preferences"):
61+
op.create_table(
62+
"user_preferences",
63+
sa.Column("id", sa.Integer(), nullable=False),
64+
sa.Column("user_id", sa.String(), nullable=False),
65+
sa.Column(
66+
"pinned_projects",
67+
sa.JSON().with_variant(postgresql.JSONB(astext_type=sa.Text()), "postgresql"),
68+
nullable=False,
69+
),
70+
sa.PrimaryKeyConstraint("id"),
71+
sa.UniqueConstraint("user_id"),
72+
schema="user_preferences",
73+
)
7174
statement = sa.sql.text(
7275
"""
7376
INSERT INTO user_preferences.user_preferences

test/components/renku_data_services/db/test_sqlalchemy_user_preferences_repo.py

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ async def test_user_preferences_insert_get(
2323
try:
2424
await create_user_preferences(project_slug=project_slug, repo=user_preferences_repo, user=loggedin_user)
2525
finally:
26-
await user_preferences_repo.delete_user_preferences(user=loggedin_user)
26+
await user_preferences_repo.delete_user_preferences(requested_by=loggedin_user)
2727

2828

2929
@given(project_slugs=project_slugs_strat)
@@ -38,15 +38,15 @@ async def test_user_preferences_add_pinned_project(
3838
project_slugs = project_slugs[: app_config.user_preferences_config.max_pinned_projects]
3939
try:
4040
for project_slug in project_slugs:
41-
await user_preferences_repo.add_pinned_project(user=loggedin_user, project_slug=project_slug)
41+
await user_preferences_repo.add_pinned_project(requested_by=loggedin_user, project_slug=project_slug)
4242

43-
res = await user_preferences_repo.get_user_preferences(user=loggedin_user)
43+
res = await user_preferences_repo.get_user_preferences(requested_by=loggedin_user)
4444
assert res.user_id == loggedin_user.id
4545
assert res.pinned_projects.project_slugs is not None
4646
assert len(res.pinned_projects.project_slugs) == len(project_slugs)
4747
assert sorted(res.pinned_projects.project_slugs) == sorted(project_slugs)
4848
finally:
49-
await user_preferences_repo.delete_user_preferences(user=loggedin_user)
49+
await user_preferences_repo.delete_user_preferences(requested_by=loggedin_user)
5050

5151

5252
@given(project_slugs=project_slugs_strat)
@@ -61,16 +61,16 @@ async def test_user_preferences_add_pinned_project_existing(
6161
project_slugs = project_slugs[: app_config.user_preferences_config.max_pinned_projects]
6262
try:
6363
for project_slug in project_slugs:
64-
await user_preferences_repo.add_pinned_project(user=loggedin_user, project_slug=project_slug)
65-
user_preferences_before = await user_preferences_repo.get_user_preferences(user=loggedin_user)
64+
await user_preferences_repo.add_pinned_project(requested_by=loggedin_user, project_slug=project_slug)
65+
user_preferences_before = await user_preferences_repo.get_user_preferences(requested_by=loggedin_user)
6666

67-
await user_preferences_repo.add_pinned_project(user=loggedin_user, project_slug=project_slugs[0])
67+
await user_preferences_repo.add_pinned_project(requested_by=loggedin_user, project_slug=project_slugs[0])
6868

69-
user_preferences_after = await user_preferences_repo.get_user_preferences(user=loggedin_user)
69+
user_preferences_after = await user_preferences_repo.get_user_preferences(requested_by=loggedin_user)
7070
assert user_preferences_after.user_id == loggedin_user.id
7171
assert user_preferences_before.model_dump_json() == user_preferences_after.model_dump_json()
7272
finally:
73-
await user_preferences_repo.delete_user_preferences(user=loggedin_user)
73+
await user_preferences_repo.delete_user_preferences(requested_by=loggedin_user)
7474

7575

7676
@given(project_slugs=project_slugs_strat)
@@ -85,17 +85,17 @@ async def test_user_preferences_delete_pinned_project(
8585
project_slugs_valid = project_slugs[: app_config.user_preferences_config.max_pinned_projects]
8686
try:
8787
for project_slug in project_slugs_valid:
88-
await user_preferences_repo.add_pinned_project(user=loggedin_user, project_slug=project_slug)
88+
await user_preferences_repo.add_pinned_project(requested_by=loggedin_user, project_slug=project_slug)
8989

9090
for project_slug in project_slugs:
91-
await user_preferences_repo.remove_pinned_project(user=loggedin_user, project_slug=project_slug)
91+
await user_preferences_repo.remove_pinned_project(requested_by=loggedin_user, project_slug=project_slug)
9292

93-
res = await user_preferences_repo.get_user_preferences(user=loggedin_user)
93+
res = await user_preferences_repo.get_user_preferences(requested_by=loggedin_user)
9494
assert res.user_id == loggedin_user.id
9595
assert res.pinned_projects.project_slugs is not None
9696
assert len(res.pinned_projects.project_slugs) == 0
9797
finally:
98-
await user_preferences_repo.delete_user_preferences(user=loggedin_user)
98+
await user_preferences_repo.delete_user_preferences(requested_by=loggedin_user)
9999

100100

101101
@given(project_slugs=project_slugs_strat)
@@ -111,18 +111,18 @@ async def test_user_preferences_add_pinned_project_respects_maximum(
111111
project_slugs_invalid = project_slugs[app_config.user_preferences_config.max_pinned_projects :]
112112
try:
113113
for project_slug in project_slugs_valid:
114-
await user_preferences_repo.add_pinned_project(user=loggedin_user, project_slug=project_slug)
114+
await user_preferences_repo.add_pinned_project(requested_by=loggedin_user, project_slug=project_slug)
115115

116116
for project_slug in project_slugs_invalid:
117117
with pytest.raises(
118118
errors.ValidationError, match=r"^ValidationError: Maximum number of pinned projects already allocated"
119119
):
120-
await user_preferences_repo.add_pinned_project(user=loggedin_user, project_slug=project_slug)
120+
await user_preferences_repo.add_pinned_project(requested_by=loggedin_user, project_slug=project_slug)
121121

122-
res = await user_preferences_repo.get_user_preferences(user=loggedin_user)
122+
res = await user_preferences_repo.get_user_preferences(requested_by=loggedin_user)
123123
assert res.user_id == loggedin_user.id
124124
assert res.pinned_projects.project_slugs is not None
125125
assert len(res.pinned_projects.project_slugs) == len(project_slugs_valid)
126126
assert sorted(res.pinned_projects.project_slugs) == sorted(project_slugs_valid)
127127
finally:
128-
await user_preferences_repo.delete_user_preferences(user=loggedin_user)
128+
await user_preferences_repo.delete_user_preferences(requested_by=loggedin_user)

test/utils.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ async def create_user_preferences(
7979
project_slug: str, repo: UserPreferencesRepository, user: base_models.APIUser
8080
) -> user_preferences_models.UserPreferences:
8181
"""Create user preferencers by adding a pinned project"""
82-
user_preferences = await repo.add_pinned_project(user=user, project_slug=project_slug)
82+
user_preferences = await repo.add_pinned_project(requested_by=user, project_slug=project_slug)
8383
assert user_preferences is not None
8484
assert user_preferences.user_id is not None
8585
assert user_preferences.pinned_projects is not None

0 commit comments

Comments
 (0)