feat: Implement tournament schedule tab and fix E2E tests (#27)
## 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>
This commit was merged in pull request #27.
This commit is contained in:
@@ -9,8 +9,8 @@ Feature: User Registration
|
||||
@happy-path @authentication
|
||||
Scenario: Successful registration with valid data
|
||||
When I fill in "name" with "Test User"
|
||||
And I fill in "email" with "test-user@example.com"
|
||||
And I fill in "password" with "TestPassword123!"
|
||||
And I fill in "email" with the generated unique email
|
||||
And I fill in "password" with "TestPassword1234!"
|
||||
And I click the "Create Account" button
|
||||
Then I should be redirected to my profile page
|
||||
And my user account should exist
|
||||
@@ -18,8 +18,8 @@ Feature: User Registration
|
||||
@happy-path @authentication
|
||||
Scenario: Auto-created player profile is linked to user
|
||||
When I fill in "name" with "Profile Test User"
|
||||
And I fill in "email" with "profile-test@example.com"
|
||||
And I fill in "password" with "ProfilePass123!"
|
||||
And I fill in "email" with the generated unique email
|
||||
And I fill in "password" with "ProfilePass1234!"
|
||||
And I click the "Create Account" button
|
||||
Then I should be redirected to my profile page
|
||||
And I should see "Welcome, Profile Test User"
|
||||
@@ -30,14 +30,14 @@ Feature: User Registration
|
||||
When I navigate to the registration page
|
||||
And I fill in "name" with "Duplicate User"
|
||||
And I fill in "email" with the same email
|
||||
And I fill in "password" with "TestPassword123!"
|
||||
And I fill in "password" with "TestPassword1234!"
|
||||
And I click the "Create Account" button
|
||||
Then I should see a registration error
|
||||
|
||||
@negative-test @authentication
|
||||
Scenario: Registration with weak password fails
|
||||
When I fill in "name" with "Weak Password User"
|
||||
And I fill in "email" with "weak@example.com"
|
||||
And I fill in "email" with the generated unique email
|
||||
And I fill in "password" with "weak"
|
||||
And I click the "Create Account" button
|
||||
Then I should see "password" validation error
|
||||
@@ -54,6 +54,6 @@ Feature: User Registration
|
||||
Scenario: Registration with email verification (placeholder)
|
||||
When I fill in "name" with "Email Verify User"
|
||||
And I fill in "email" with "verify@example.com"
|
||||
And I fill in "password" with "TestPassword123!"
|
||||
And I fill in "password" with "TestPassword1234!"
|
||||
And I click the "Create Account" button
|
||||
Then I should see "Please check your email to verify your account"
|
||||
|
||||
Reference in New Issue
Block a user