mirror of
https://github.com/Monadical-SAS/reflector.git
synced 2026-02-06 10:46:46 +00:00
fix: use function mocks with correct signature in dedup tests
This commit is contained in:
@@ -53,12 +53,16 @@ async def test_duplicate_calendar_event_does_not_create_duplicate_meeting():
|
|||||||
"reflector.worker.ics_sync.create_platform_client"
|
"reflector.worker.ics_sync.create_platform_client"
|
||||||
) as mock_platform_factory:
|
) as mock_platform_factory:
|
||||||
mock_client = AsyncMock()
|
mock_client = AsyncMock()
|
||||||
mock_client.create_meeting.return_value = AsyncMock(
|
|
||||||
meeting_id="meeting-1",
|
async def mock_create_meeting_1(room_name_prefix, *, end_date, room):
|
||||||
room_name="dedup-test-room-abc",
|
return AsyncMock(
|
||||||
room_url="https://mock.video/dedup-test-room-abc",
|
meeting_id="meeting-1",
|
||||||
host_room_url="https://mock.video/dedup-test-room-abc?host=true",
|
room_name="dedup-test-room-abc",
|
||||||
)
|
room_url="https://mock.video/dedup-test-room-abc",
|
||||||
|
host_room_url="https://mock.video/dedup-test-room-abc?host=true",
|
||||||
|
)
|
||||||
|
|
||||||
|
mock_client.create_meeting = mock_create_meeting_1
|
||||||
mock_client.upload_logo = AsyncMock()
|
mock_client.upload_logo = AsyncMock()
|
||||||
mock_platform_factory.return_value = mock_client
|
mock_platform_factory.return_value = mock_client
|
||||||
|
|
||||||
@@ -86,19 +90,22 @@ async def test_duplicate_calendar_event_does_not_create_duplicate_meeting():
|
|||||||
"reflector.worker.ics_sync.create_platform_client"
|
"reflector.worker.ics_sync.create_platform_client"
|
||||||
) as mock_platform_factory:
|
) as mock_platform_factory:
|
||||||
mock_client = AsyncMock()
|
mock_client = AsyncMock()
|
||||||
mock_client.create_meeting.return_value = AsyncMock(
|
create_meeting_called = False
|
||||||
meeting_id="meeting-2",
|
|
||||||
room_name="dedup-test-room-def",
|
async def mock_create_meeting_2(room_name_prefix, *, end_date, room):
|
||||||
room_url="https://mock.video/dedup-test-room-def",
|
nonlocal create_meeting_called
|
||||||
host_room_url="https://mock.video/dedup-test-room-def?host=true",
|
create_meeting_called = True
|
||||||
)
|
|
||||||
|
mock_client.create_meeting = mock_create_meeting_2
|
||||||
mock_client.upload_logo = AsyncMock()
|
mock_client.upload_logo = AsyncMock()
|
||||||
mock_platform_factory.return_value = mock_client
|
mock_platform_factory.return_value = mock_client
|
||||||
|
|
||||||
await create_upcoming_meetings_for_event(event2, create_window, room)
|
await create_upcoming_meetings_for_event(event2, create_window, room)
|
||||||
|
|
||||||
# Platform client should NOT have been called for the duplicate
|
# Platform client should NOT have been called for the duplicate
|
||||||
mock_client.create_meeting.assert_not_called()
|
assert (
|
||||||
|
not create_meeting_called
|
||||||
|
), "create_meeting should not be called for duplicate"
|
||||||
|
|
||||||
# Verify still only 1 meeting
|
# Verify still only 1 meeting
|
||||||
results = await get_database().fetch_all(
|
results = await get_database().fetch_all(
|
||||||
|
|||||||
Reference in New Issue
Block a user