## Summary
This PR implements the tournament schedule tab functionality and fixes all remaining E2E test failures.
### Changes Included
1. **Tournament Schedule Feature**
- Added tournament schedule page at `/admin/tournaments/[id]/schedule`
- Implemented "Generate Schedule" button functionality
- Added schedule generation logic for round-robin tournaments
2. **E2E Test Fixes**
- Fixed database connection issues in production builds
- Improved test reliability with better error handling and debugging
- Updated test infrastructure to use environment variables instead of hardcoded values
3. **CI/CD Updates**
- Added E2E test job to PR workflow
- Configured tests to run against development database
- Moved database password to Gitea secrets
4. **Code Quality**
- Removed hardcoded passwords from codebase
- Improved Prisma client configuration
- Enhanced authentication and navigation components
### Test Results
All 16 E2E test scenarios are now passing:
- Authentication tests: ✅
- Registration tests: ✅
- Tournament schedule tests: ✅
- Player schedule tests: ✅
- Admin navigation tests: ✅
### Database Configuration
- Tests run against `euchre_camp_dev` database
- Production builds use environment variables for database configuration
- Database password stored in Gitea secrets as `DB_PASSWORD`
### CI Pipeline
The PR workflow now includes:
1. Unit tests
2. E2E tests (using production build)
3. Version bump analysis
E2E tests must pass before PR can be merged.
Reviewed-on: #27
Co-authored-by: David Gwilliam <dhgwilliam@gmail.com>
Co-committed-by: David Gwilliam <dhgwilliam@gmail.com>
- Update all test files to use named mock variables instead of inline mocks
- Clear mock history in beforeEach instead of using mock.restore()
- Add default mock implementations stored at module level
- Document that tests should not use --randomize flag due to mock.module() limitations
- All 89 unit tests pass consistently without randomization
- Install Bun via mise
- Update package.json scripts to use Bun
- Migrate unit tests from Vitest to Bun test runner
- Migrate component tests from Vitest to Bun test runner
- Configure Bun with DOM environment for React Testing Library
- Keep Playwright for E2E tests (as planned)
- 93/100 tests passing (7 flaky tests when running all together, pass individually)
Fix the allowTies checkbox not being saved when editing tournaments. Added comprehensive unit and E2E tests to verify the fix.
Co-authored-by: David Gwilliam <dhgwilliam@gmail.com>
Co-committed-by: David Gwilliam <dhgwilliam@gmail.com>