db-infra-mocks
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
Weekly Installs
4
Repository
pilinux/gorestGitHub Stars
487
First Seen
14 days ago
Security Audits
Installed on
cline4
gemini-cli4
github-copilot4
codex4
kimi-cli4
cursor4