By: Tom Sydney Kerckhove <syd@cs-syd.eu>
Guard the ordering the per-change sqitch tests depend on The per-change tests share one database and walk the plan in order, so they are only correct while they run one at a time in definition order. Nothing said so in a way that would fail: drop `sequential` or `doNotRandomiseExecutionOrder` and the suite becomes nondeterministically broken, with failures that point at a migration rather than at the missing combinator. So assert the shape directly: the per-change tests sit under a `DoNotRandomiseExecutionOrder` node and a `Sequential` one. Removing either combinator fails this test, and (confirmed by trying it) takes the real sqitch tests down with it. Also moves `SqitchDatabase` above the functions that use it, drops a redundant lambda, and records the change in `sydtest-sqitch-postgres-persistent`, whose spec declares these tests too and whose test names therefore change as well.