# 4. Notification History & Management — Test Cases

User Type: **Parent**
Source: *Mi Digital Academy - Education CRM Features Document*
Spec: history_management.md — every feature, sub-feature, and rule covered

---

## Test Execution Policy
- Zero tolerance: any deviation from documented behavior = FAILED = bug
- Every bug is immediately logged/reported (Bug ID, feature, sub-feature, expected vs actual, severity) and fixed 100% before the group passes
- Feature group passes only at 100% test pass rate

## Coverage Matrix
| Feature | Sub-feature / Rule | Test IDs |
|---------|--------------------|----------|
| 4.1 Notification History | History of the Parent's notifications | TC-PT-10-04-001 |
| 4.1 Notification History | Notification, time, category, and status | TC-PT-10-04-002 |
| 4.1 Notification History | Filter the history by category | TC-PT-10-04-003 |
| 4.1 Notification History | Search within the history | TC-PT-10-04-004 |
| 4.1 Notification History | History retained for a platform-defined period | TC-PT-10-04-005 |
| 4.1 Notification History | History available on web and mobile | TC-PT-10-04-006 |
| 4.1 Notification History | History event logging (viewed, filtered, searched) | TC-PT-10-04-007 |
| 4.1 Notification History | Audit logging of the notification history | TC-PT-10-04-008 |
| 4.1 Notification History | Rule: The history lists notifications with time, category, and status. | TC-PT-10-04-001 |
| 4.1 Notification History | Rule: The history can be filtered by category and searched. | TC-PT-10-04-002 |
| 4.1 Notification History | Rule: The history is retained for the platform-defined period. | TC-PT-10-04-003 |
| 4.1 Notification History | Rule: History events (viewed, filtered, searched) are logged with the account and the timestamp. | TC-PT-10-04-004 |
| 4.1 Notification History | Rule: The notification history is audit-logged with the account and the timestamp. | TC-PT-10-04-005 |
| 4.2 Manage and Clear Notifications | Mark a notification as read | TC-PT-10-04-009 |
| 4.2 Manage and Clear Notifications | Mark all notifications as read | TC-PT-10-04-010 |
| 4.2 Manage and Clear Notifications | Clear the notification center | TC-PT-10-04-011 |
| 4.2 Manage and Clear Notifications | Mute a category temporarily | TC-PT-10-04-012 |
| 4.2 Manage and Clear Notifications | Mute duration selection | TC-PT-10-04-013 |
| 4.2 Manage and Clear Notifications | Management available on web and mobile | TC-PT-10-04-014 |
| 4.2 Manage and Clear Notifications | Management event logging (marked read, cleared, muted) | TC-PT-10-04-015 |
| 4.2 Manage and Clear Notifications | Audit logging of the manage and clear notifications | TC-PT-10-04-016 |
| 4.2 Manage and Clear Notifications | Rule: Notifications can be marked as read individually or all. | TC-PT-10-04-009 |
| 4.2 Manage and Clear Notifications | Rule: The notification center can be cleared. | TC-PT-10-04-010 |
| 4.2 Manage and Clear Notifications | Rule: A category can be muted temporarily. | TC-PT-10-04-011 |
| 4.2 Manage and Clear Notifications | Rule: Management events (marked read, cleared, muted) are logged with the account and the timestamp. | TC-PT-10-04-012 |
| 4.2 Manage and Clear Notifications | Rule: The manage and clear notifications is audit-logged with the account and the timestamp. | TC-PT-10-04-013 |
| 4.3 Critical and System Notifications | Critical notifications (security, subscription, maintenance) | TC-PT-10-04-017 |
| 4.3 Critical and System Notifications | Always delivered on all enabled channels | TC-PT-10-04-018 |
| 4.3 Critical and System Notifications | Cannot be muted or suppressed | TC-PT-10-04-019 |
| 4.3 Critical and System Notifications | Highlighted in the notification center | TC-PT-10-04-020 |
| 4.3 Critical and System Notifications | Critical notification detail | TC-PT-10-04-021 |
| 4.3 Critical and System Notifications | Critical notification history | TC-PT-10-04-022 |
| 4.3 Critical and System Notifications | Notification event logging (sent, viewed) | TC-PT-10-04-023 |
| 4.3 Critical and System Notifications | Audit logging of the critical and system notifications | TC-PT-10-04-024 |
| 4.3 Critical and System Notifications | Rule: The critical notifications are security, subscription, and maintenance. | TC-PT-10-04-017 |
| 4.3 Critical and System Notifications | Rule: The critical notifications are always delivered. | TC-PT-10-04-018 |
| 4.3 Critical and System Notifications | Rule: The critical notifications cannot be muted or suppressed. | TC-PT-10-04-019 |
| 4.3 Critical and System Notifications | Rule: Notification events (sent, viewed) are logged with the account and the timestamp. | TC-PT-10-04-020 |
| 4.3 Critical and System Notifications | Rule: The critical and system notifications is audit-logged with the account and the timestamp. | TC-PT-10-04-021 |

## 4.1 Notification History

### TC-PT-10-04-001 — History of the Parent's notifications
**Type:** Positive
**Covers:** 4.1 → History of the Parent's notifications; Rule: The history lists notifications with time, category, and status.
**Preconditions:** A Parent account is active and the Parent is in the state required for this behavior.
**Steps:**
1. As a Parent, set up the precondition and perform: History of the Parent's notifications.
2. Observe the result and verify the full behavior: History of the Parent's notifications.
**Expected Result:** History of the Parent's notifications — delivered exactly as documented.
**Priority:** Critical

### TC-PT-10-04-002 — Notification, time, category, and status
**Type:** Positive
**Covers:** 4.1 → Notification, time, category, and status; Rule: The history can be filtered by category and searched.
**Preconditions:** A Parent account is active and the Parent is in the state required for this behavior.
**Steps:**
1. As a Parent, set up the precondition and perform: Notification.
2. Observe the result and verify the full behavior: Notification, time, category, and status.
**Expected Result:** Notification, time, category, and status — delivered exactly as documented.
**Priority:** High

### TC-PT-10-04-003 — Filter the history by category
**Type:** Positive
**Covers:** 4.1 → Filter the history by category; Rule: The history is retained for the platform-defined period.
**Preconditions:** A Parent account is active and the Parent is in the state required for this behavior.
**Steps:**
1. As a Parent, set up the precondition and perform: Filter the history by category.
2. Observe the result and verify the full behavior: Filter the history by category.
**Expected Result:** Filter the history by category — delivered exactly as documented.
**Priority:** High

### TC-PT-10-04-004 — Search within the history
**Type:** Positive
**Covers:** 4.1 → Search within the history; Rule: History events (viewed, filtered, searched) are logged with the account and the timestamp.
**Preconditions:** A Parent account is active and the Parent is in the state required for this behavior.
**Steps:**
1. As a Parent, set up the precondition and perform: Search within the history.
2. Observe the result and verify the full behavior: Search within the history.
**Expected Result:** Search within the history — delivered exactly as documented.
**Priority:** High

### TC-PT-10-04-005 — History retained for a platform-defined period
**Type:** Positive
**Covers:** 4.1 → History retained for a platform-defined period; Rule: The notification history is audit-logged with the account and the timestamp.
**Preconditions:** A Parent account is active and the Parent is in the state required for this behavior.
**Steps:**
1. As a Parent, set up the precondition and perform: History retained for a platform-defined period.
2. Observe the result and verify the full behavior: History retained for a platform-defined period.
**Expected Result:** History retained for a platform-defined period — delivered exactly as documented.
**Priority:** High

### TC-PT-10-04-006 — History available on web and mobile
**Type:** Positive
**Covers:** 4.1 → History available on web and mobile
**Preconditions:** A Parent account is active and the Parent is in the state required for this behavior.
**Steps:**
1. As a Parent, set up the precondition and perform: History available on web and mobile.
2. Observe the result and verify the full behavior: History available on web and mobile.
**Expected Result:** History available on web and mobile — delivered exactly as documented.
**Priority:** High

### TC-PT-10-04-007 — History event logging (viewed, filtered, searched)
**Type:** Positive
**Covers:** 4.1 → History event logging (viewed, filtered, searched)
**Preconditions:** A Parent account is active and the Parent is in the state required for this behavior.
**Steps:**
1. As a Parent, set up the precondition and perform: History event logging (viewed.
2. Observe the result and verify the full behavior: History event logging (viewed, filtered, searched).
**Expected Result:** History event logging (viewed, filtered, searched) — delivered exactly as documented.
**Priority:** High

### TC-PT-10-04-008 — Audit logging of the notification history
**Type:** Positive
**Covers:** 4.1 → Audit logging of the notification history
**Preconditions:** A Parent account is active and the Parent is in the state required for this behavior.
**Steps:**
1. As a Parent, perform the action associated with: Audit logging of the notification history.
2. Open the relevant activity / audit log and verify the event is recorded with the account, the action, and the timestamp.
**Expected Result:** The action is audit-logged — the account, the action, and the timestamp are recorded.
**Priority:** Critical

## 4.2 Manage and Clear Notifications

### TC-PT-10-04-009 — Mark a notification as read
**Type:** Positive
**Covers:** 4.2 → Mark a notification as read; Rule: Notifications can be marked as read individually or all.
**Preconditions:** A Parent account is active and the Parent is in the state required for this behavior.
**Steps:**
1. As a Parent, set up the precondition and perform: Mark a notification as read.
2. Observe the result and verify the full behavior: Mark a notification as read.
**Expected Result:** Mark a notification as read — delivered exactly as documented.
**Priority:** Critical

### TC-PT-10-04-010 — Mark all notifications as read
**Type:** Positive
**Covers:** 4.2 → Mark all notifications as read; Rule: The notification center can be cleared.
**Preconditions:** A Parent account is active and the Parent is in the state required for this behavior.
**Steps:**
1. As a Parent, set up the precondition and perform: Mark all notifications as read.
2. Observe the result and verify the full behavior: Mark all notifications as read.
**Expected Result:** Mark all notifications as read — delivered exactly as documented.
**Priority:** High

### TC-PT-10-04-011 — Clear the notification center
**Type:** Positive
**Covers:** 4.2 → Clear the notification center; Rule: A category can be muted temporarily.
**Preconditions:** A Parent account is active and the Parent is in the state required for this behavior.
**Steps:**
1. As a Parent, set up the precondition and perform: Clear the notification center.
2. Observe the result and verify the full behavior: Clear the notification center.
**Expected Result:** Clear the notification center — delivered exactly as documented.
**Priority:** High

### TC-PT-10-04-012 — Mute a category temporarily
**Type:** Positive
**Covers:** 4.2 → Mute a category temporarily; Rule: Management events (marked read, cleared, muted) are logged with the account and the timestamp.
**Preconditions:** A Parent account is active and the Parent is in the state required for this behavior.
**Steps:**
1. As a Parent, set up the precondition and perform: Mute a category temporarily.
2. Observe the result and verify the full behavior: Mute a category temporarily.
**Expected Result:** Mute a category temporarily — delivered exactly as documented.
**Priority:** High

### TC-PT-10-04-013 — Mute duration selection
**Type:** Positive
**Covers:** 4.2 → Mute duration selection; Rule: The manage and clear notifications is audit-logged with the account and the timestamp.
**Preconditions:** A Parent account is active and the Parent is in the state required for this behavior.
**Steps:**
1. As a Parent, set up the precondition and perform: Mute duration selection.
2. Observe the result and verify the full behavior: Mute duration selection.
**Expected Result:** Mute duration selection — delivered exactly as documented.
**Priority:** High

### TC-PT-10-04-014 — Management available on web and mobile
**Type:** Positive
**Covers:** 4.2 → Management available on web and mobile
**Preconditions:** A Parent account is active and the Parent is in the state required for this behavior.
**Steps:**
1. As a Parent, set up the precondition and perform: Management available on web and mobile.
2. Observe the result and verify the full behavior: Management available on web and mobile.
**Expected Result:** Management available on web and mobile — delivered exactly as documented.
**Priority:** High

### TC-PT-10-04-015 — Management event logging (marked read, cleared, muted)
**Type:** Positive
**Covers:** 4.2 → Management event logging (marked read, cleared, muted)
**Preconditions:** A Parent account is active and the Parent is in the state required for this behavior.
**Steps:**
1. As a Parent, set up the precondition and perform: Management event logging (marked read.
2. Observe the result and verify the full behavior: Management event logging (marked read, cleared, muted).
**Expected Result:** Management event logging (marked read, cleared, muted) — delivered exactly as documented.
**Priority:** High

### TC-PT-10-04-016 — Audit logging of the manage and clear notifications
**Type:** Positive
**Covers:** 4.2 → Audit logging of the manage and clear notifications
**Preconditions:** A Parent account is active and the Parent is in the state required for this behavior.
**Steps:**
1. As a Parent, perform the action associated with: Audit logging of the manage and clear notifications.
2. Open the relevant activity / audit log and verify the event is recorded with the account, the action, and the timestamp.
**Expected Result:** The action is audit-logged — the account, the action, and the timestamp are recorded.
**Priority:** Critical

## 4.3 Critical and System Notifications

### TC-PT-10-04-017 — Critical notifications (security, subscription, maintenance)
**Type:** Positive
**Covers:** 4.3 → Critical notifications (security, subscription, maintenance); Rule: The critical notifications are security, subscription, and maintenance.
**Preconditions:** A Parent account is active and the Parent is in the state required for this behavior.
**Steps:**
1. As a Parent, set up the precondition and perform: Critical notifications (security.
2. Observe the result and verify the full behavior: Critical notifications (security, subscription, maintenance).
**Expected Result:** Critical notifications (security, subscription, maintenance) — delivered exactly as documented.
**Priority:** Critical

### TC-PT-10-04-018 — Always delivered on all enabled channels
**Type:** Positive
**Covers:** 4.3 → Always delivered on all enabled channels; Rule: The critical notifications are always delivered.
**Preconditions:** A Parent account is active and the Parent is in the state required for this behavior.
**Steps:**
1. As a Parent, set up the precondition and perform: Always delivered on all enabled channels.
2. Observe the result and verify the full behavior: Always delivered on all enabled channels.
**Expected Result:** Always delivered on all enabled channels — delivered exactly as documented.
**Priority:** High

### TC-PT-10-04-019 — Cannot be muted or suppressed
**Type:** Positive
**Covers:** 4.3 → Cannot be muted or suppressed; Rule: The critical notifications cannot be muted or suppressed.
**Preconditions:** A Parent account is active and the Parent is in the state required for this behavior.
**Steps:**
1. As a Parent, set up the precondition and perform: Cannot be muted or suppressed.
2. Observe the result and verify the full behavior: Cannot be muted or suppressed.
**Expected Result:** Cannot be muted or suppressed — delivered exactly as documented.
**Priority:** High

### TC-PT-10-04-020 — Highlighted in the notification center
**Type:** Positive
**Covers:** 4.3 → Highlighted in the notification center; Rule: Notification events (sent, viewed) are logged with the account and the timestamp.
**Preconditions:** A Parent account is active and the Parent is in the state required for this behavior.
**Steps:**
1. As a Parent, set up the precondition and perform: Highlighted in the notification center.
2. Observe the result and verify the full behavior: Highlighted in the notification center.
**Expected Result:** Highlighted in the notification center — delivered exactly as documented.
**Priority:** High

### TC-PT-10-04-021 — Critical notification detail
**Type:** Positive
**Covers:** 4.3 → Critical notification detail; Rule: The critical and system notifications is audit-logged with the account and the timestamp.
**Preconditions:** A Parent account is active and the Parent is in the state required for this behavior.
**Steps:**
1. As a Parent, set up the precondition and perform: Critical notification detail.
2. Observe the result and verify the full behavior: Critical notification detail.
**Expected Result:** Critical notification detail — delivered exactly as documented.
**Priority:** High

### TC-PT-10-04-022 — Critical notification history
**Type:** Positive
**Covers:** 4.3 → Critical notification history
**Preconditions:** A Parent account is active and the Parent is in the state required for this behavior.
**Steps:**
1. As a Parent, set up the precondition and perform: Critical notification history.
2. Observe the result and verify the full behavior: Critical notification history.
**Expected Result:** Critical notification history — delivered exactly as documented.
**Priority:** High

### TC-PT-10-04-023 — Notification event logging (sent, viewed)
**Type:** Positive
**Covers:** 4.3 → Notification event logging (sent, viewed)
**Preconditions:** A Parent account is active and the Parent is in the state required for this behavior.
**Steps:**
1. As a Parent, set up the precondition and perform: Notification event logging (sent.
2. Observe the result and verify the full behavior: Notification event logging (sent, viewed).
**Expected Result:** Notification event logging (sent, viewed) — delivered exactly as documented.
**Priority:** High

### TC-PT-10-04-024 — Audit logging of the critical and system notifications
**Type:** Positive
**Covers:** 4.3 → Audit logging of the critical and system notifications
**Preconditions:** A Parent account is active and the Parent is in the state required for this behavior.
**Steps:**
1. As a Parent, perform the action associated with: Audit logging of the critical and system notifications.
2. Open the relevant activity / audit log and verify the event is recorded with the account, the action, and the timestamp.
**Expected Result:** The action is audit-logged — the account, the action, and the timestamp are recorded.
**Priority:** Critical
