Files
restic-manager/internal/store/migrate_test.go
T
steve db71e006bb store: A1 — check rows.Err() + Scan err in migrate_test
Code-quality nits flagged in review of 2692c66. Mirrors the existing
pattern in host_credentials_test.go.
2026-05-04 19:19:28 +01:00

39 lines
841 B
Go

package store
import (
"context"
"path/filepath"
"testing"
)
func TestMigration0013AlertsLastSeen(t *testing.T) {
t.Parallel()
dir := t.TempDir()
st, err := Open(context.Background(), filepath.Join(dir, "rm.db"))
if err != nil {
t.Fatalf("open: %v", err)
}
defer st.Close()
// Column must exist after migration. Best signal: PRAGMA table_info.
rows, err := st.DB().Query(`SELECT name FROM pragma_table_info('alerts')`)
if err != nil {
t.Fatalf("pragma: %v", err)
}
defer rows.Close()
cols := map[string]bool{}
for rows.Next() {
var n string
if err := rows.Scan(&n); err != nil {
t.Fatalf("scan: %v", err)
}
cols[n] = true
}
if err := rows.Err(); err != nil {
t.Fatalf("rows iter: %v", err)
}
if !cols["last_seen_at"] {
t.Fatalf("alerts.last_seen_at not present after migration; cols=%v", cols)
}
}