diff --git a/server/reflector/views/transcripts_participants.py b/server/reflector/views/transcripts_participants.py index bc4bad93..467ae4a0 100644 --- a/server/reflector/views/transcripts_participants.py +++ b/server/reflector/views/transcripts_participants.py @@ -77,7 +77,7 @@ async def transcript_add_participant( ) obj = await transcripts_controller.upsert_participant( - transcript, TranscriptParticipant(**participant.dict()) + session, transcript, TranscriptParticipant(**participant.dict()) ) return Participant.model_validate(obj) @@ -136,7 +136,7 @@ async def transcript_update_participant( fields = participant.dict(exclude_unset=True) obj = obj.copy(update=fields) - await transcripts_controller.upsert_participant(transcript, obj) + await transcripts_controller.upsert_participant(session, transcript, obj) return Participant.model_validate(obj) @@ -151,5 +151,5 @@ async def transcript_delete_participant( transcript = await transcripts_controller.get_by_id_for_http( session, transcript_id, user_id=user_id ) - await transcripts_controller.delete_participant(transcript, participant_id) + await transcripts_controller.delete_participant(session, transcript, participant_id) return DeletionStatus(status="ok") diff --git a/server/reflector/views/transcripts_speaker.py b/server/reflector/views/transcripts_speaker.py index ffae493f..54dbd683 100644 --- a/server/reflector/views/transcripts_speaker.py +++ b/server/reflector/views/transcripts_speaker.py @@ -82,7 +82,9 @@ async def transcript_assign_speaker( # if the participant does not have a speaker, create one if participant.speaker is None: participant.speaker = transcript.find_empty_speaker() - await transcripts_controller.upsert_participant(transcript, participant) + await transcripts_controller.upsert_participant( + session, transcript, participant + ) speaker = participant.speaker diff --git a/server/tests/conftest.py b/server/tests/conftest.py index 2915eccf..c7c28415 100644 --- a/server/tests/conftest.py +++ b/server/tests/conftest.py @@ -402,6 +402,7 @@ async def fake_transcript_with_topics(tmpdir, client, db_session): # create some topics await transcripts_controller.upsert_topic( + db_session, transcript, TranscriptTopic( title="Topic 1", @@ -415,6 +416,7 @@ async def fake_transcript_with_topics(tmpdir, client, db_session): ), ) await transcripts_controller.upsert_topic( + db_session, transcript, TranscriptTopic( title="Topic 2", diff --git a/server/tests/test_room_ics_api.py b/server/tests/test_room_ics_api.py index 27a784d7..986bab92 100644 --- a/server/tests/test_room_ics_api.py +++ b/server/tests/test_room_ics_api.py @@ -89,9 +89,10 @@ async def test_update_room_ics_configuration(authenticated_client): @pytest.mark.asyncio -async def test_trigger_ics_sync(authenticated_client): +async def test_trigger_ics_sync(authenticated_client, db_session): client = authenticated_client room = await rooms_controller.add( + db_session, name="sync-api-room", user_id="test-user", zulip_auto_post=False, @@ -133,8 +134,9 @@ async def test_trigger_ics_sync(authenticated_client): @pytest.mark.asyncio -async def test_trigger_ics_sync_unauthorized(client): +async def test_trigger_ics_sync_unauthorized(client, db_session): room = await rooms_controller.add( + db_session, name="sync-unauth-room", user_id="owner-123", zulip_auto_post=False, @@ -155,9 +157,10 @@ async def test_trigger_ics_sync_unauthorized(client): @pytest.mark.asyncio -async def test_trigger_ics_sync_not_configured(authenticated_client): +async def test_trigger_ics_sync_not_configured(authenticated_client, db_session): client = authenticated_client room = await rooms_controller.add( + db_session, name="sync-not-configured", user_id="test-user", zulip_auto_post=False, @@ -177,9 +180,10 @@ async def test_trigger_ics_sync_not_configured(authenticated_client): @pytest.mark.asyncio -async def test_get_ics_status(authenticated_client): +async def test_get_ics_status(authenticated_client, db_session): client = authenticated_client room = await rooms_controller.add( + db_session, name="status-room", user_id="test-user", zulip_auto_post=False, @@ -197,6 +201,7 @@ async def test_get_ics_status(authenticated_client): now = datetime.now(timezone.utc) await rooms_controller.update( + db_session, room, {"ics_last_sync": now, "ics_last_etag": "test-etag"}, ) @@ -210,8 +215,9 @@ async def test_get_ics_status(authenticated_client): @pytest.mark.asyncio -async def test_get_ics_status_unauthorized(client): +async def test_get_ics_status_unauthorized(client, db_session): room = await rooms_controller.add( + db_session, name="status-unauth", user_id="owner-456", zulip_auto_post=False, @@ -232,9 +238,10 @@ async def test_get_ics_status_unauthorized(client): @pytest.mark.asyncio -async def test_list_room_meetings(authenticated_client): +async def test_list_room_meetings(authenticated_client, db_session): client = authenticated_client room = await rooms_controller.add( + db_session, name="meetings-room", user_id="test-user", zulip_auto_post=False, @@ -255,7 +262,7 @@ async def test_list_room_meetings(authenticated_client): start_time=now - timedelta(hours=2), end_time=now - timedelta(hours=1), ) - await calendar_events_controller.upsert(event1) + await calendar_events_controller.upsert(db_session, event1) event2 = CalendarEvent( room_id=room.id, @@ -266,7 +273,7 @@ async def test_list_room_meetings(authenticated_client): end_time=now + timedelta(hours=2), attendees=[{"email": "test@example.com"}], ) - await calendar_events_controller.upsert(event2) + await calendar_events_controller.upsert(db_session, event2) response = await client.get(f"/rooms/{room.name}/meetings") assert response.status_code == 200 @@ -279,8 +286,9 @@ async def test_list_room_meetings(authenticated_client): @pytest.mark.asyncio -async def test_list_room_meetings_non_owner(client): +async def test_list_room_meetings_non_owner(client, db_session): room = await rooms_controller.add( + db_session, name="meetings-privacy", user_id="owner-789", zulip_auto_post=False, @@ -302,7 +310,7 @@ async def test_list_room_meetings_non_owner(client): end_time=datetime.now(timezone.utc) + timedelta(hours=2), attendees=[{"email": "private@example.com"}], ) - await calendar_events_controller.upsert(event) + await calendar_events_controller.upsert(db_session, event) response = await client.get(f"/rooms/{room.name}/meetings") assert response.status_code == 200 @@ -314,9 +322,10 @@ async def test_list_room_meetings_non_owner(client): @pytest.mark.asyncio -async def test_list_upcoming_meetings(authenticated_client): +async def test_list_upcoming_meetings(authenticated_client, db_session): client = authenticated_client room = await rooms_controller.add( + db_session, name="upcoming-room", user_id="test-user", zulip_auto_post=False, @@ -338,7 +347,7 @@ async def test_list_upcoming_meetings(authenticated_client): start_time=now - timedelta(hours=1), end_time=now - timedelta(minutes=30), ) - await calendar_events_controller.upsert(past_event) + await calendar_events_controller.upsert(db_session, past_event) soon_event = CalendarEvent( room_id=room.id, @@ -347,7 +356,7 @@ async def test_list_upcoming_meetings(authenticated_client): start_time=now + timedelta(minutes=15), end_time=now + timedelta(minutes=45), ) - await calendar_events_controller.upsert(soon_event) + await calendar_events_controller.upsert(db_session, soon_event) later_event = CalendarEvent( room_id=room.id, @@ -356,7 +365,7 @@ async def test_list_upcoming_meetings(authenticated_client): start_time=now + timedelta(hours=2), end_time=now + timedelta(hours=3), ) - await calendar_events_controller.upsert(later_event) + await calendar_events_controller.upsert(db_session, later_event) response = await client.get(f"/rooms/{room.name}/meetings/upcoming") assert response.status_code == 200 diff --git a/server/tests/test_transcripts_process.py b/server/tests/test_transcripts_process.py index 5f45cf4b..facc21b7 100644 --- a/server/tests/test_transcripts_process.py +++ b/server/tests/test_transcripts_process.py @@ -23,7 +23,6 @@ async def client(app_lifespan): ) -@pytest.mark.usefixtures("setup_database") @pytest.mark.usefixtures("celery_session_app") @pytest.mark.usefixtures("celery_session_worker") @pytest.mark.asyncio diff --git a/server/tests/test_transcripts_rtc_ws.py b/server/tests/test_transcripts_rtc_ws.py index b4760c43..f1cf01b4 100644 --- a/server/tests/test_transcripts_rtc_ws.py +++ b/server/tests/test_transcripts_rtc_ws.py @@ -49,7 +49,7 @@ class ThreadedUvicorn: @pytest.fixture -def appserver(tmpdir, setup_database, celery_session_app, celery_session_worker): +def appserver(tmpdir, database, celery_session_app, celery_session_worker): import threading from reflector.app import app @@ -111,7 +111,6 @@ def appserver(tmpdir, setup_database, celery_session_app, celery_session_worker) settings.DATA_DIR = DATA_DIR -@pytest.mark.usefixtures("setup_database") @pytest.mark.usefixtures("celery_session_app") @pytest.mark.usefixtures("celery_session_worker") @pytest.mark.asyncio @@ -276,7 +275,6 @@ async def test_transcript_rtc_and_websocket( assert audio_resp.headers["Content-Type"] == "audio/mpeg" -@pytest.mark.usefixtures("setup_database") @pytest.mark.usefixtures("celery_session_app") @pytest.mark.usefixtures("celery_session_worker") @pytest.mark.asyncio diff --git a/server/tests/test_transcripts_upload.py b/server/tests/test_transcripts_upload.py index e9a90c7a..e6a9a6a6 100644 --- a/server/tests/test_transcripts_upload.py +++ b/server/tests/test_transcripts_upload.py @@ -4,7 +4,6 @@ import time import pytest -@pytest.mark.usefixtures("setup_database") @pytest.mark.usefixtures("celery_session_app") @pytest.mark.usefixtures("celery_session_worker") @pytest.mark.asyncio