R
run-tests
Run pgschema automated tests (go test) to validate diff logic, plan generation, and dump functionality using test fixtures
Installation
Pick a client and clone the repository into its skills directory.
Installation
About this skill
Run pgschema automated tests (go test) to validate diff logic, plan generation, and dump functionality using test fixtures
How to use
- Zainstaluj skill w swoim projekcie pgschema, umieszczając go w katalogu
.claude/skills/. Upewnij się, że masz zainstalowany Go i dostęp do repozytorium pgschema. - Uruchom podstawowy test diff, aby walidować logikę porównywania schematów:
go test -v ./internal/diff -run TestDiffFromFiles. Test powinien zakończyć się w około 2 sekundy i nie wymaga uruchomionej bazy danych. - Jeśli chcesz testować pełny przepływ (plan i apply) z wbudowanym PostgreSQL, użyj:
go test -v ./cmd -run TestPlanAndApply. Ten test trwa 30–60 sekund i waliduje całą logikę generowania planów. - Aby zawęzić testy do konkretnej kategorii, ustaw zmienną
PGSCHEMA_TEST_FILTERprzed uruchomieniem, na przykład:PGSCHEMA_TEST_FILTER="create_trigger/" go test -v ./cmd -run TestPlanAndApply. Dostępne kategorie to:comment/,create_domain/,create_function/,create_index/,create_table/,create_trigger/,create_view/i inne. - Gdy zmienisz implementację i chcesz zaktualizować oczekiwane wyniki testów, uruchom:
PGSCHEMA_TEST_FILTER="category/test_name" go test -v ./cmd -run TestPlanAndApply --generate. Flaga--generatenadpisze plikidiff.sql,plan.jsoniplan.sql. Zawsze sprawdź zmiany za pomocągit diffi ponownie uruchom test bez flagi--generate, aby potwierdzić. - Do testowania na różnych wersjach PostgreSQL ustaw
PGSCHEMA_POSTGRES_VERSIONprzed testem, na przykład:PGSCHEMA_POSTGRES_VERSION=17 go test -v ./cmd/dump -run TestDumpCommand. Skill wspiera wersje 14–18.