@@ -52,7 +52,7 @@ async def test_get_db_sets_application_name_when_tracing_enabled(
5252 await dep_gen .aclose ()
5353 request_context .reset (context_token )
5454
55- assert fake_db .rollback_calls == 0
55+ assert fake_db .rollback_calls == 1 # unconditional rollback in finally
5656 assert fake_db .close_calls == 1
5757
5858
@@ -70,7 +70,7 @@ async def test_get_db_rolls_back_and_closes_when_consumer_raises(
7070 with pytest .raises (RuntimeError , match = "boom" ):
7171 await dep_gen .athrow (RuntimeError ("boom" ))
7272
73- assert fake_db .rollback_calls == 1
73+ assert fake_db .rollback_calls == 2 # once in except, once in finally
7474 assert fake_db .close_calls == 1
7575
7676
@@ -99,7 +99,7 @@ async def test_tracked_db_creates_and_resets_task_context(
9999 stmt , params = fake_db .execute_calls [0 ]
100100 assert "set_config" in str (stmt )
101101 assert params == {"name" : "task:cleanup_job:12345678" }
102- assert fake_db .rollback_calls == 0
102+ assert fake_db .rollback_calls == 1 # unconditional rollback in finally
103103 assert fake_db .close_calls == 1
104104
105105
@@ -122,7 +122,7 @@ async def test_tracked_db_preserves_existing_request_context(
122122 stmt , params = fake_db .execute_calls [0 ]
123123 assert "set_config" in str (stmt )
124124 assert params == {"name" : "request:existing" }
125- assert fake_db .rollback_calls == 0
125+ assert fake_db .rollback_calls == 1 # unconditional rollback in finally
126126 assert fake_db .close_calls == 1
127127
128128
@@ -138,7 +138,7 @@ async def test_tracked_db_rolls_back_on_error_and_closes(
138138 async with real_tracked_db ("operation" ):
139139 raise ValueError ("failed operation" )
140140
141- assert fake_db .rollback_calls == 1
141+ assert fake_db .rollback_calls == 2 # once in except, once in finally
142142 assert fake_db .close_calls == 1
143143
144144
0 commit comments