| title | impact | impactDescription | tags |
|---|---|---|---|
Mock Implementation Patterns |
MEDIUM |
Poor mocks cause flaky tests and false positives |
testing, mocking, calendar, app-store |
When mocking calendar services in Cal.com test files, implement the Calendar interface rather than adding individual properties from each specific calendar service type (like FeishuCalendarService).
Since all calendar services implement the Calendar interface and are stored in a map, the mock service should also implement this interface to ensure type compatibility.
When mocking app-store resources in Cal.com tests, prefer implementing simpler mock designs that directly implement the required interfaces rather than trying to match complex deep mock structures created with mockDeep.
This approach is more maintainable and helps resolve type compatibility issues.
- For complex mocks that cause type compatibility issues with deep mocks, consider using simpler fake implementations
- When needed, you can modify other mock files to support your implementation
- Creative solutions and refactoring to better designs are encouraged when standard mocking causes persistent type errors