Unchained
|
84b85f5291
|
test: comprehensive test suite for Manoon storefront
Add complete testing infrastructure with Vitest:
Testing Stack:
- Vitest for unit/integration tests
- @testing-library/react for component tests
- @playwright/test for E2E (installed, ready to configure)
- MSW for API mocking
Test Coverage:
1. Webhook Handler Tests (src/__tests__/integration/api/webhooks/saleor.test.ts)
- ORDER_CONFIRMED: Emails + analytics
- ORDER_CREATED: No duplicates
- ORDER_FULFILLED: Tracking info
- ORDER_CANCELLED: Cancellation reason
- ORDER_FULLY_PAID: Payment confirmation
- Error handling (400/500 responses)
- Currency handling (RSD preservation)
2. OrderNotificationService Tests
- Email sending in all 4 languages (SR, EN, DE, FR)
- Price formatting verification
- Admin vs Customer templates
- Address formatting
- Tracking info handling
3. AnalyticsService Tests
- Revenue tracking with correct currency
- Duplicate prevention verification
- Error handling (doesn't break flow)
- Singleton pattern
4. Utility Tests
- formatPrice: RSD, EUR, USD formatting
- Decimal and zero handling
Fixtures:
- Realistic order data in src/__tests__/fixtures/orders.ts
- Multiple scenarios (with tracking, cancelled, etc.)
Scripts:
- npm test: Run tests in watch mode
- npm run test:run: Run once
- npm run test:coverage: Generate coverage report
- npm run test:e2e: Run Playwright tests
Coverage target: 80%+ for critical paths
|
2026-03-25 21:07:47 +02:00 |
|