Skip to content

Implement email notifications for test plan lifecycle events - #7

Merged
arkdevuk merged 3 commits into
mainfrom
dev
Jul 22, 2026
Merged

arkdevuk merged 3 commits into
mainfrom
dev

Conversation

@arkdevuk

Copy link
Copy Markdown
Owner

This pull request implements email notifications for testers about test plan lifecycle events (published, closed, or new assignment) and refines the logic for dispatching these notifications. It also introduces dedicated email templates for each notification type, improves configuration for local development, and adds unit tests for the new listener.

Test Plan Notification System

  • Added a new event listener TesterNotificationListener that listens for test plan lifecycle events and triggers the appropriate notification methods in TesterManager (src/EventListener/TesterNotificationListener.php).
  • Implemented notification methods in TesterManager to email testers when a plan is published, closed, or when a tester is newly assigned to an already-published plan, using dedicated Twig templates (src/Services/Entities/TesterManager.php).

Email Templates

  • Added new Twig templates for test plan published, closed, and invitation notifications (templates/test-plan-published.email.twig, templates/test-plan-closed.email.twig, templates/test-plan-invitation.email.twig). [1] [2] [3]

Test Plan State Transition Logic

  • Refined the logic in TestPlanStateProcessor to ensure notifications are sent only for the correct state transitions (e.g., testers added during a publish transition only get the "plan published" email, not an additional invitation) (src/State/TestPlanStateProcessor.php).

Testing

  • Added unit tests for the new TesterNotificationListener to verify correct notification dispatching for each event type (tests/Unit/EventListener/TesterNotificationListenerTest.php).

Development Environment Configuration

  • Relaxed SERVER_NAME and TRUSTED_HOSTS defaults in compose.yml to make local development easier, especially when using tunnels or accessing from other devices (compose.yml). [1] [2]

@arkdevuk arkdevuk self-assigned this Jul 22, 2026
@arkdevuk
arkdevuk merged commit 4ce5276 into main Jul 22, 2026
1 check passed
arkdevuk added a commit that referenced this pull request Jul 22, 2026
Merge pull request #7 from arkdevuk/dev
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant