db-infra-mocks
Installation
SKILL.md
DB Infrastructure Mocks
When to Use
- Integration dependencies (RDBMS, Redis, MongoDB) prevent running tests or local development and you need safe, testable alternatives.
Responsibilities
- Locate where clients and connections are constructed and consumed (
database/package). - Propose interface-based seams and minimal mock implementations.
- Provide migration path and verification steps so production behavior remains unchanged.
Rules
- Prefer small interfaces and constructor injection over large refactors.
- Make tests deterministic and avoid network calls.
- Provide unit and integration verification steps for any change.
Project-Specific Details
- RDBMS connections:
gdb.InitDB()/gdb.GetDB()(GORM*gorm.DB). - Redis connections:
gdb.InitRedis()/gdb.GetRedis()(radix v4radix.Client). - MongoDB connections:
gdb.InitMongo()/gdb.GetMongo()(*mongo.Clientfrom official driver v2). - Close all:
gdb.CloseAllDB().
Recommended Approaches
- RDBMS: Use SQLite in-memory (
driver: "sqlite3") for simple GORM-backed tests. - Redis: Use a radix v4 compatible mock or inject an interface wrapper around
radix.Client. - MongoDB: Inject a mock repository interface or use a local test MongoDB instance.
Output
- Dependency map with
path:lineof client construction and usage. - Recommended seam (interface signature) and where to inject it.
- Example mock/test code snippet and verification commands.
Related Skills
test-runner,patch-applier,migration-helper
Related skills
More from pilinux/gorest
file-reader
Precisely read source files or snippets and return concise, citation-backed facts needed for decisions or edits.
27code-navigation
Rapid, focused navigation to locate definitions/usages and map the impact of proposed changes.
7fix-suggester
Diagnose failures and propose minimal, test-backed fixes with verification and rollback instructions.
7build-run
Build and run the project locally to reproduce compile/runtime issues in a safe, non-production way.
7logs-repro-harness
Reduce flaky or environment-dependent failures to a minimal, reproducible script and capture the exact logs and error lines.
7ci-orchestrator
Run a CI-like pipeline locally (format, lint, vet, static-analysis, tests) and summarize per-step results with remediation guidance.
6