修复项目无法删除问题

This commit is contained in:
2026-08-13 20:42:09 +08:00
parent cb88a69012
commit a407e69ba7
18 changed files with 623 additions and 63 deletions

View File

@@ -45,8 +45,29 @@ func TestPostgresMigrationAndMaintenanceIntegration(t *testing.T) {
if err := sqlDB.QueryRowContext(ctx, `SELECT count(*) FROM schema_migrations`).Scan(&migrationCount); err != nil {
t.Fatal(err)
}
if migrationCount < 14 {
t.Fatalf("migration count = %d, want at least 14", migrationCount)
if migrationCount < 15 {
t.Fatalf("migration count = %d, want at least 15", migrationCount)
}
var archivedAtType, archivedAtNullable string
var archivedAtDefault *string
if err := sqlDB.QueryRowContext(ctx, `
SELECT data_type, is_nullable, column_default
FROM information_schema.columns
WHERE table_schema = 'public' AND table_name = 'projects' AND column_name = 'archived_at'`).
Scan(&archivedAtType, &archivedAtNullable, &archivedAtDefault); err != nil {
t.Fatal(err)
}
if archivedAtType != "timestamp with time zone" || archivedAtNullable != "YES" || archivedAtDefault != nil {
t.Fatalf("archived_at schema = %q/%q/%v, want timestamptz/nullable/no default", archivedAtType, archivedAtNullable, archivedAtDefault)
}
var archivedStatusConstraint int
if err := sqlDB.QueryRowContext(ctx, `
SELECT count(*) FROM pg_constraint
WHERE conrelid = 'projects'::regclass AND conname = 'projects_archived_status_check'`).Scan(&archivedStatusConstraint); err != nil {
t.Fatal(err)
}
if archivedStatusConstraint != 1 {
t.Fatalf("projects_archived_status_check count = %d, want 1", archivedStatusConstraint)
}
var experiencedPeopleStartColumn string
if err := sqlDB.QueryRowContext(ctx, `