Skip to content

Commit ca94909

Browse files
committed
test: improve test for migrate_set_sequence_id's
1 parent 131c1aa commit ca94909

1 file changed

Lines changed: 29 additions & 1 deletion

File tree

tests/persistence/test_migrations.py

Lines changed: 29 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -374,11 +374,39 @@ def test_migrate_get_last_sequence_ids():
374374

375375
def test_migrate_set_sequence_ids():
376376
engine = MagicMock()
377-
engine.begin = MagicMock()
377+
# make engine.begin() usable as a context manager that returns `conn`
378+
conn = MagicMock()
379+
engine.begin = MagicMock(
380+
return_value=MagicMock(
381+
__enter__=MagicMock(return_value=conn),
382+
)
383+
)
378384
engine.name = "postgresql"
385+
379386
set_sequence_ids(engine, 22, 55, 5, 3, 1)
380387

388+
# begin called once and connection.execute invoked for each provided sequence id
381389
assert engine.begin.call_count == 1
390+
assert conn.execute.call_count == 5
391+
assert (
392+
conn.execute.call_args_list[0][0][0].text == "ALTER SEQUENCE orders_id_seq RESTART WITH 22"
393+
)
394+
assert (
395+
conn.execute.call_args_list[1][0][0].text == "ALTER SEQUENCE trades_id_seq RESTART WITH 55"
396+
)
397+
assert (
398+
conn.execute.call_args_list[2][0][0].text
399+
== "ALTER SEQUENCE pairlocks_id_seq RESTART WITH 5"
400+
)
401+
assert (
402+
conn.execute.call_args_list[3][0][0].text
403+
== 'ALTER SEQUENCE "KeyValueStore_id_seq" RESTART WITH 3'
404+
)
405+
assert (
406+
conn.execute.call_args_list[4][0][0].text
407+
== "ALTER SEQUENCE trade_custom_data_id_seq RESTART WITH 1"
408+
)
409+
382410
engine.reset_mock()
383411
engine.begin.reset_mock()
384412

0 commit comments

Comments
 (0)