Acceptance Test ‐ Emine Türk - bounswe/bounswe2026group11 GitHub Wiki
TC_DISC_NOTIF_002 - Event Discovery, Join Request, and Critical Change Notification with Reconfirmation
Structured Test Document
| Field | Value |
|---|---|
| Test case ID | TC_DISC_NOTIF_002 |
| Name / Test Title | User discovers a protected event via search, joins it, and must reconfirm attendance after the host changes the event start time |
| Test Priority | High |
| Name of Module | Event Discovery & Search, Join Request, Event Editing, Reconfirmation, Notifications |
| Designed by | [Emine Türk] |
| Date designed | April 30, 2026 |
| Executed by | Not executed during Lab 9 |
| Date of Execution | Not executed during Lab 9 |
| Test Type / Keywords | Acceptance, functional, search, protected event, join request, event editing, reconfirmation, notification, participation status |
| Description of Test | Verify that a participant can discover a protected event through keyword search, submit a join request, have it approved by the host, and then receive a reconfirmation notification with their participation status set to Waiting Confirmation when the host modifies the event's start time after approval. |
| Pre-condition | Host and participant accounts exist. Backend, frontend/mobile client, and database are running. The event has not yet started. No prior join requests exist between the two accounts for this event. |
| Dependencies | Login, public event discovery via search, join request creation, host approval, event editing (time change), reconfirmation trigger, notification delivery. |
| Test Data | Host: [email protected], password: HostEdit!2026. Participant: [email protected], password: SearchPass!2026. Event title: TC Outdoor Yoga Morning. Privacy: PROTECTED. Capacity: 10. Category: Sports. Location: Maçka Park, Istanbul. Latitude: 41.045210. Longitude: 29.001540. Original start: 2026-05-15T08:00:00+03:00. Original end: 2026-05-15T09:30:00+03:00. Updated start: 2026-05-15T09:00:00+03:00. Join message: I would love to join the yoga session. |
| Expected Results | The participant can find the protected event by searching for its title keyword. The event detail page is visible but requires a join request. After the host approves the join request, the participant's status becomes APPROVED and a ticket is generated. When the host updates the event start time, the participant's participation status changes to WAITING CONFIRMATION, and the participant receives a notification informing them of the time change and requesting reconfirmation. After the participant reconfirms, their status returns to APPROVED. |
| Actual Result | Not executed during Lab 9. |
| Post-condition | Participant's participation status is APPROVED. Event start time is updated to 2026-05-15T09:00:00+03:00. A new event version entry exists in the changelog. The reconfirmation notification is stored in the participant's in-app inbox. |
| Automated? | No |
| Link / Defect ID | No defect. Related features: event editing flow, reconfirmation trigger, notification service. |
| Requirement | 1.1.3, 3.1.1, 3.2.2, 3.2.3, 4.2.1, 4.2.2, 4.2.3, 4.2.4, 4.3.1, 4.3.3, 4.4.1, 4.4.2, 4.5.1, 4.5.2, 4.5.3, 4.5.4, 5.1.1, 5.5.1, 5.5.2, 7.1.1, 7.1.3, 7.2.1, 7.3.1, 7.3.2 |
| Status | Not Executed |
| Notes | This test covers both the happy path (successful discovery and approval) and a state transition edge case: a critical time change after approval must force a reconfirmation cycle. The participant's status must temporarily drop to WAITING CONFIRMATION before returning to APPROVED upon reconfirmation. |
Test Steps
| Step No | Description | Data | Expected Result | Actual Result | Status |
|---|---|---|---|---|---|
| 1 | Log in as the host with valid credentials. | Email: [email protected]; password: HostEdit!2026 |
Host session is created successfully. | Not executed | Not Executed |
| 2 | Host creates a protected event with the specified details. | Title: TC Outdoor Yoga Morning; privacy: PROTECTED; capacity: 10; category: Sports; location: 41.045210, 29.001540; start: 2026-05-15T08:00:00+03:00; end: 2026-05-15T09:30:00+03:00 |
Event is created successfully with privacy type PROTECTED and status ACTIVE. |
Not executed | Not Executed |
| 3 | Log out from host account. | Host session | Host session ends successfully. | Not executed | Not Executed |
| 4 | Log in as the participant with valid credentials. | Email: [email protected]; password: SearchPass!2026 |
Participant session is created successfully. | Not executed | Not Executed |
| 5 | Participant searches for the event using a keyword from the event title. | Search keyword: Outdoor Yoga |
Search results include TC Outdoor Yoga Morning. The event appears because it is a protected (non-private) event and the keyword matches the event title. |
Not executed | Not Executed |
| 6 | Participant opens the event detail page from search results. | Event title: TC Outdoor Yoga Morning |
Event detail page is visible. Event information is displayed. Direct joining is not available; a request-to-join action is shown instead. | Not executed | Not Executed |
| 7 | Participant submits a join request with a message. | Message: I would love to join the yoga session. |
Join request is created with PENDING status. Participant is not yet listed as an approved participant or counted in event metrics. |
Not executed | Not Executed |
| 8 | Log out from participant account and log in as the host. | Host credentials: [email protected]; password: HostEdit!2026 |
Host session is created successfully. | Not executed | Not Executed |
| 9 | Host opens the pending join requests for the event. | Event title: TC Outdoor Yoga Morning |
The join request from [email protected] is visible with PENDING status. |
Not executed | Not Executed |
| 10 | Host approves the participant's join request. | Pending request from [email protected] |
Join request status becomes APPROVED. A participation record is created for the participant with status APPROVED. One active ticket is generated for the participant. |
Not executed | Not Executed |
| 11 | Host edits the event and changes the start time. | New start time: 2026-05-15T09:00:00+03:00; end time unchanged |
Event is saved successfully. A new event version is created and visible in the event changelog. | Not executed | Not Executed |
| 12 | Verify that the participant's participation status has changed after the time update. | Participant account: [email protected]; event: TC Outdoor Yoga Morning |
Participant's participation status is now WAITING CONFIRMATION. The participant is no longer counted as an approved participant in event metrics until reconfirmation is completed. |
Not executed | Not Executed |
| 13 | Verify that the participant received a reconfirmation notification. | Participant's in-app inbox and registered email | Participant has received a notification indicating that the event start time has changed and that reconfirmation of attendance is required. The notification is stored in the in-app inbox. | Not executed | Not Executed |
| 14 | Participant reconfirms their attendance via the reconfirmation prompt. | Participant account; reconfirmation action on the event | Participant's status returns to APPROVED. The participant is once again counted as an official approved participant in event metrics. |
Not executed | Not Executed |