From 8d5b71dc0f93d20917b14568ffd2cf1723f75f02 Mon Sep 17 00:00:00 2001 From: Chris Farhood Date: Thu, 14 May 2026 16:37:04 +0000 Subject: [PATCH] =?UTF-8?q?docs(UAT=5FPLAYBOOK):=20add=20=C2=A74.20=20Staf?= =?UTF-8?q?f=20Messages=20test=20cases?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Add missing test coverage for the staff Messages page introduced by PR #405 (GRO-106). Covers inbox load, conversation open, send message, empty state, unread indicator, and cross-tenant isolation per QA review on PR #408. Updated UAT_PLAYBOOK.md §4.20 — staff Messages feature (GRO-106) --- UAT_PLAYBOOK.md | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/UAT_PLAYBOOK.md b/UAT_PLAYBOOK.md index 2710eb8..461180b 100644 --- a/UAT_PLAYBOOK.md +++ b/UAT_PLAYBOOK.md @@ -217,6 +217,17 @@ GroomBook is an open-source, self-hostable pet grooming business management & CR | TC-APP-4.19.3 | Empty states | 1. Navigate to pages with no data (empty calendar, no clients)
2. Verify UI | Helpful empty state message with call-to-action displayed | | TC-APP-4.19.4 | Network error handling | 1. Disable network in DevTools
2. Attempt actions that require API calls
3. Re-enable network | Appropriate error message shown, app recovers when network restored | +### 4.20 Staff Messages + +| # | Scenario | Steps | Expected | +|---|----------|-------|----------| +| TC-APP-4.20.1 | Staff messages inbox loads | 1. Log in as Staff
2. Navigate to Messages | Conversation list renders with client phone and last message preview | +| TC-APP-4.20.2 | Open conversation | 1. Select a conversation from the list | Full message thread loads chronologically | +| TC-APP-4.20.3 | Send message | 1. Type a reply and submit | Message appears in thread; POST /api/conversations/:id/messages succeeds | +| TC-APP-4.20.4 | Empty state | 1. Log in as Staff with no conversations | Empty state shown; no crash | +| TC-APP-4.20.5 | Unread indicator | 1. Client sends a new message | Thread marked unread until staff views it | +| TC-APP-4.20.6 | Cross-tenant isolation | 1. Staff from Business A attempts to read Business B conversations | 403 or empty response returned | + ## 5. Pass/Fail Criteria **Pass:** All test cases execute without errors. Expected results match actual results. No regressions are observed. All functionality works as documented.