test-database-feature
Installation
SKILL.md
Test Database Feature
Prerequisites
1. Start Local Database
docker-compose -f assets/local/docker-compose.yml up -d
Database: localhost:3306, DB: rapid_db, User: rapid_user, Password: rapid_password
2. Setup Prisma
cd backend
npm run prisma:generate
npm run prisma:migrate
Repository Integration Test Pattern
Repository tests MUST connect to actual database (not mocks).
import { describe, it, expect, beforeEach, afterAll } from 'vitest';
import { PrismaClient } from '@prisma/client';
import { makeYourRepository } from '../domain/repository';
const prisma = new PrismaClient();
describe('YourRepository Integration Tests', () => {
beforeEach(async () => {
await prisma.yourModel.deleteMany();
});
afterAll(async () => {
await prisma.$disconnect();
});
it('should create and retrieve entity', async () => {
const repo = makeYourRepository(prisma);
const entity = { id: 'test-1', name: 'Test Entity' };
await repo.storeEntity({ entity });
const retrieved = await repo.findEntityById('test-1');
expect(retrieved).not.toBeNull();
expect(retrieved?.name).toBe('Test Entity');
});
});
Test Organization
backend/src/api/features/{feature}/__tests__/
├── repository-integration.test.ts # Database integration tests
├── usecase.test.ts # Use case unit tests (mocked repo)
└── handlers.test.ts # Handler unit tests (mocked usecase)
Running Tests
cd backend
npm test # All tests
npm run test -- {test-name} # Specific test suite
npm run test:watch # Watch mode
npm run test:coverage # With coverage
Quick Commands
| Task | Command |
|---|---|
| Start DB | docker-compose -f assets/local/docker-compose.yml up -d |
| Stop DB | docker-compose -f assets/local/docker-compose.yml down |
| Reset DB | Add -v to down, then up + migrate |
| Run migrations | cd backend && npm run prisma:migrate |
| Prisma Studio | cd backend && npm run prisma:studio (http://localhost:5555) |
Success Criteria
- Docker container running
- Migrations applied
- All repository integration tests pass
- Ready to run
/build-and-formatfor final verification
Weekly Installs
1
Repository
aws-samples/rev…entationGitHub Stars
60
First Seen
Apr 1, 2026
Security Audits