feat: implement Story 4.2 - New Participant Registration
Implement participant registration with the following features: - POST handler for /exchange/<slug>/register - Create Participant record with lowercased email - Generate magic token and send confirmation email - Redirect to success page after registration - Rate limiting: 10 registrations per hour per IP - Validation for exchange state (must be registration_open) - Form validation for required fields (name, email) - Email format validation - Optional fields support (gift_ideas, reminder_enabled) Also includes: - Registration success page template - 429 error handling template - Flash message support in base template - Test config update for email service dev mode - Comprehensive test suite with 8 tests All tests passing (86 total), 91% coverage maintained. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -15,6 +15,7 @@ class TestEmailService:
|
||||
"""Test EmailService initialization with API key."""
|
||||
with app.app_context():
|
||||
app.config["RESEND_API_KEY"] = "test-api-key"
|
||||
app.config["FLASK_ENV"] = "production"
|
||||
service = EmailService()
|
||||
assert service.api_key == "test-api-key"
|
||||
assert service.dev_mode is False
|
||||
|
||||
Reference in New Issue
Block a user