Toolverse
Wszystkie skille

run-tests

autor: pgschema

Uruchamiaj testy pgschema i waliduj zmiany w logice porównywania schematów PostgreSQL

Instalacja

Wybierz klienta i sklonuj repozytorium do odpowiedniego katalogu skilli.

Instalacja

Szybkie info

Kategoria
Testowanie
Wyświetlenia
3

O skillu

Skill do uruchamiania zautomatyzowanych testów pgschema (go test) na potrzeby walidacji logiki diff, generowania planów migracji i funkcjonalności dump. Pozwala testować porównywanie schematów bez bazy danych, pełne przepływy z wbudowanym PostgreSQL oraz ekstrakcję schematów z testowych baz. Obsługuje filtrowanie testów po kategoriach, regenerowanie oczekiwanych wyników oraz testowanie na wersjach PostgreSQL 14–18. Przydatne przy debugowaniu błędów testów, dodawaniu nowych przypadków testowych i walidacji zmian implementacji.

Jak używać

  1. 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.
  2. 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.
  3. 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.
  4. Aby zawęzić testy do konkretnej kategorii, ustaw zmienną PGSCHEMA_TEST_FILTER przed 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.
  5. 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 --generate nadpisze pliki diff.sql, plan.json i plan.sql. Zawsze sprawdź zmiany za pomocą git diff i ponownie uruchom test bez flagi --generate, aby potwierdzić.
  6. Do testowania na różnych wersjach PostgreSQL ustaw PGSCHEMA_POSTGRES_VERSION przed testem, na przykład: PGSCHEMA_POSTGRES_VERSION=17 go test -v ./cmd/dump -run TestDumpCommand. Skill wspiera wersje 14–18.

Podobne skille