Files
order_site/apps/backend/src/db/migration-integrity.test.ts
T

28 lines
947 B
TypeScript

import assert from 'node:assert/strict'
import test from 'node:test'
import { changedPublishedMigrations } from './migration-integrity.js'
test('迁移完整性:新增迁移允许,已发布迁移任何修改都拒绝', () => {
assert.deepEqual(
changedPublishedMigrations(
[
'A\tsrc/db/migrations/153_new_feature.sql',
'M\tsrc/db/migrations/146_voucher_consume_fallback_channel.sql',
'D\tsrc/db/migrations/145_fulfillment_current_attempt_latest.sql',
].join('\n'),
),
[
'M src/db/migrations/146_voucher_consume_fallback_channel.sql',
'D src/db/migrations/145_fulfillment_current_attempt_latest.sql',
],
)
})
test('迁移完整性:保护范围不由固定版本号截断', () => {
assert.deepEqual(
changedPublishedMigrations('M\tsrc/db/migrations/120_fulfillment_routing_invariants.sql'),
['M src/db/migrations/120_fulfillment_routing_invariants.sql'],
)
})