A fake engine/connection records every SQL call and serves fixed batches, so the loop mechanics are verified directly: `after` advances to the last id of each batch, the UPDATE runs once per batch with the planned patches (not once per row), dry_run=True still counts but issues no UPDATE, and the loop terminates on the first empty batch. Deleted the tautological test_sql_shapes (asserted substrings of the constants against themselves).
4.4 KiB
4.4 KiB