Files
Assistant/tests/research_contracts/reflection_worker_sql_test.go
2026-08-22 13:41:44 +03:00

28 lines
927 B
Go

package research_contracts_test
import (
"os"
"strings"
"testing"
)
func TestReflectionCandidateLeaseSQLIsDurableAndRecoverable(t *testing.T) {
checks := map[string][]string{
"../../database/migrations/032_reflection_candidate_leases.sql": {"claim_expires_at_unix_millis", "reflection_candidates_claimable_idx"},
"../../adapters/postgres/epistemics_repository.go": {"claim_expires_at_unix_millis", "FOR UPDATE SKIP LOCKED", "state='OPEN'", "state='RESOLVED'"},
"../../cmd/reflection-worker/main.go": {"RecoverReflectionClaims", "ClaimReflectionCandidate", "ResolveReflectionCandidate"},
}
for path, needles := range checks {
data, err := os.ReadFile(path)
if err != nil {
t.Fatalf("read %s: %v", path, err)
}
text := string(data)
for _, needle := range needles {
if !strings.Contains(text, needle) {
t.Fatalf("%s missing %q", path, needle)
}
}
}
}