# 3. Account & System Alerts — Test Cases

User Type: **Parent**
Source: *Mi Digital Academy - Education CRM Features Document*
Spec: account_system_alerts.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 |
|---------|--------------------|----------|
| 3.1 Account Access Alerts | Alert on a failed login attempt | TC-PT-7-03-001 |
| 3.1 Account Access Alerts | Alert on a password change | TC-PT-7-03-002 |
| 3.1 Account Access Alerts | Alert on a new device sign-in | TC-PT-7-03-003 |
| 3.1 Account Access Alerts | Alert on an account lock | TC-PT-7-03-004 |
| 3.1 Account Access Alerts | Alert with the event details | TC-PT-7-03-005 |
| 3.1 Account Access Alerts | Link to the account security view | TC-PT-7-03-006 |
| 3.1 Account Access Alerts | Alert event logging (sent, opened) | TC-PT-7-03-007 |
| 3.1 Account Access Alerts | Audit logging of the account access alerts | TC-PT-7-03-008 |
| 3.1 Account Access Alerts | Rule: Alerts are sent on account access events. | TC-PT-7-03-001 |
| 3.1 Account Access Alerts | Rule: The alert includes the event details. | TC-PT-7-03-002 |
| 3.1 Account Access Alerts | Rule: A link to the account security view is included. | TC-PT-7-03-003 |
| 3.1 Account Access Alerts | Rule: Alert events (sent, opened) are logged with the account and the timestamp. | TC-PT-7-03-004 |
| 3.1 Account Access Alerts | Rule: The account access alerts is audit-logged with the account and the timestamp. | TC-PT-7-03-005 |
| 3.2 Subscription and Billing Alerts | Alert on an upcoming renewal | TC-PT-7-03-009 |
| 3.2 Subscription and Billing Alerts | Alert on a failed payment | TC-PT-7-03-010 |
| 3.2 Subscription and Billing Alerts | Alert on a subscription expiring soon | TC-PT-7-03-011 |
| 3.2 Subscription and Billing Alerts | Alert on a plan change | TC-PT-7-03-012 |
| 3.2 Subscription and Billing Alerts | Alert with the billing details | TC-PT-7-03-013 |
| 3.2 Subscription and Billing Alerts | Link to the billing view | TC-PT-7-03-014 |
| 3.2 Subscription and Billing Alerts | Alert event logging (sent, opened) | TC-PT-7-03-015 |
| 3.2 Subscription and Billing Alerts | Audit logging of the subscription and billing alerts | TC-PT-7-03-016 |
| 3.2 Subscription and Billing Alerts | Rule: Alerts are sent on subscription and billing events. | TC-PT-7-03-009 |
| 3.2 Subscription and Billing Alerts | Rule: The alert includes the billing details. | TC-PT-7-03-010 |
| 3.2 Subscription and Billing Alerts | Rule: A link to the billing view is included. | TC-PT-7-03-011 |
| 3.2 Subscription and Billing Alerts | Rule: Alert events (sent, opened) are logged with the account and the timestamp. | TC-PT-7-03-012 |
| 3.2 Subscription and Billing Alerts | Rule: The subscription and billing alerts is audit-logged with the account and the timestamp. | TC-PT-7-03-013 |
| 3.3 System and Maintenance Alerts | Alert on scheduled maintenance | TC-PT-7-03-017 |
| 3.3 System and Maintenance Alerts | Alert on a service outage | TC-PT-7-03-018 |
| 3.3 System and Maintenance Alerts | Alert on a feature change | TC-PT-7-03-019 |
| 3.3 System and Maintenance Alerts | Alert with the details and expected duration | TC-PT-7-03-020 |
| 3.3 System and Maintenance Alerts | Alert priority (info, important) | TC-PT-7-03-021 |
| 3.3 System and Maintenance Alerts | Alert event logging (sent, viewed) | TC-PT-7-03-022 |
| 3.3 System and Maintenance Alerts | Audit logging of the system and maintenance alerts | TC-PT-7-03-023 |
| 3.3 System and Maintenance Alerts | Rule: Alerts are sent on system and maintenance events. | TC-PT-7-03-017 |
| 3.3 System and Maintenance Alerts | Rule: The alert includes the details and expected duration. | TC-PT-7-03-018 |
| 3.3 System and Maintenance Alerts | Rule: The alert priority is info or important. | TC-PT-7-03-019 |
| 3.3 System and Maintenance Alerts | Rule: Alert events (sent, viewed) are logged with the account and the timestamp. | TC-PT-7-03-020 |
| 3.3 System and Maintenance Alerts | Rule: The system and maintenance alerts is audit-logged with the account and the timestamp. | TC-PT-7-03-021 |

## 3.1 Account Access Alerts

### TC-PT-7-03-001 — Alert on a failed login attempt
**Type:** Positive
**Covers:** 3.1 → Alert on a failed login attempt; Rule: Alerts are sent on account access events.
**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: Alert on a failed login attempt.
2. Observe the result and verify the full behavior: Alert on a failed login attempt.
**Expected Result:** Alert on a failed login attempt — delivered exactly as documented.
**Priority:** Critical

### TC-PT-7-03-002 — Alert on a password change
**Type:** Positive
**Covers:** 3.1 → Alert on a password change; Rule: The alert includes the event details.
**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: Alert on a password change.
2. Observe the result and verify the full behavior: Alert on a password change.
**Expected Result:** Alert on a password change — delivered exactly as documented.
**Priority:** High

### TC-PT-7-03-003 — Alert on a new device sign-in
**Type:** Positive
**Covers:** 3.1 → Alert on a new device sign-in; Rule: A link to the account security view is included.
**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: Alert on a new device sign-in.
2. Observe the result and verify the full behavior: Alert on a new device sign-in.
**Expected Result:** Alert on a new device sign-in — delivered exactly as documented.
**Priority:** High

### TC-PT-7-03-004 — Alert on an account lock
**Type:** Positive
**Covers:** 3.1 → Alert on an account lock; Rule: Alert events (sent, opened) 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: Alert on an account lock.
2. Observe the result and verify the full behavior: Alert on an account lock.
**Expected Result:** Alert on an account lock — delivered exactly as documented.
**Priority:** High

### TC-PT-7-03-005 — Alert with the event details
**Type:** Positive
**Covers:** 3.1 → Alert with the event details; Rule: The account access alerts 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: Alert with the event details.
2. Observe the result and verify the full behavior: Alert with the event details.
**Expected Result:** Alert with the event details — delivered exactly as documented.
**Priority:** High

### TC-PT-7-03-006 — Link to the account security view
**Type:** Positive
**Covers:** 3.1 → Link to the account security view
**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: Link to the account security view.
2. Observe the result and verify the full behavior: Link to the account security view.
**Expected Result:** Link to the account security view — delivered exactly as documented.
**Priority:** High

### TC-PT-7-03-007 — Alert event logging (sent, opened)
**Type:** Positive
**Covers:** 3.1 → Alert event logging (sent, opened)
**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: Alert event logging (sent.
2. Observe the result and verify the full behavior: Alert event logging (sent, opened).
**Expected Result:** Alert event logging (sent, opened) — delivered exactly as documented.
**Priority:** High

### TC-PT-7-03-008 — Audit logging of the account access alerts
**Type:** Positive
**Covers:** 3.1 → Audit logging of the account access alerts
**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 account access alerts.
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

## 3.2 Subscription and Billing Alerts

### TC-PT-7-03-009 — Alert on an upcoming renewal
**Type:** Positive
**Covers:** 3.2 → Alert on an upcoming renewal; Rule: Alerts are sent on subscription and billing events.
**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: Alert on an upcoming renewal.
2. Observe the result and verify the full behavior: Alert on an upcoming renewal.
**Expected Result:** Alert on an upcoming renewal — delivered exactly as documented.
**Priority:** Critical

### TC-PT-7-03-010 — Alert on a failed payment
**Type:** Positive
**Covers:** 3.2 → Alert on a failed payment; Rule: The alert includes the billing details.
**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: Alert on a failed payment.
2. Observe the result and verify the full behavior: Alert on a failed payment.
**Expected Result:** Alert on a failed payment — delivered exactly as documented.
**Priority:** High

### TC-PT-7-03-011 — Alert on a subscription expiring soon
**Type:** Edge
**Covers:** 3.2 → Alert on a subscription expiring soon; Rule: A link to the billing view is included.
**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: Alert on a subscription expiring soon.
2. Observe the result and verify the full behavior: Alert on a subscription expiring soon.
**Expected Result:** Alert on a subscription expiring soon — delivered exactly as documented.
**Priority:** High

### TC-PT-7-03-012 — Alert on a plan change
**Type:** Positive
**Covers:** 3.2 → Alert on a plan change; Rule: Alert events (sent, opened) 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: Alert on a plan change.
2. Observe the result and verify the full behavior: Alert on a plan change.
**Expected Result:** Alert on a plan change — delivered exactly as documented.
**Priority:** High

### TC-PT-7-03-013 — Alert with the billing details
**Type:** Positive
**Covers:** 3.2 → Alert with the billing details; Rule: The subscription and billing alerts 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: Alert with the billing details.
2. Observe the result and verify the full behavior: Alert with the billing details.
**Expected Result:** Alert with the billing details — delivered exactly as documented.
**Priority:** High

### TC-PT-7-03-014 — Link to the billing view
**Type:** Positive
**Covers:** 3.2 → Link to the billing view
**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: Link to the billing view.
2. Observe the result and verify the full behavior: Link to the billing view.
**Expected Result:** Link to the billing view — delivered exactly as documented.
**Priority:** High

### TC-PT-7-03-015 — Alert event logging (sent, opened)
**Type:** Positive
**Covers:** 3.2 → Alert event logging (sent, opened)
**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: Alert event logging (sent.
2. Observe the result and verify the full behavior: Alert event logging (sent, opened).
**Expected Result:** Alert event logging (sent, opened) — delivered exactly as documented.
**Priority:** High

### TC-PT-7-03-016 — Audit logging of the subscription and billing alerts
**Type:** Positive
**Covers:** 3.2 → Audit logging of the subscription and billing alerts
**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 subscription and billing alerts.
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

## 3.3 System and Maintenance Alerts

### TC-PT-7-03-017 — Alert on scheduled maintenance
**Type:** Positive
**Covers:** 3.3 → Alert on scheduled maintenance; Rule: Alerts are sent on system and maintenance events.
**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: Alert on scheduled maintenance.
2. Observe the result and verify the full behavior: Alert on scheduled maintenance.
**Expected Result:** Alert on scheduled maintenance — delivered exactly as documented.
**Priority:** Critical

### TC-PT-7-03-018 — Alert on a service outage
**Type:** Positive
**Covers:** 3.3 → Alert on a service outage; Rule: The alert includes the details and expected duration.
**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: Alert on a service outage.
2. Observe the result and verify the full behavior: Alert on a service outage.
**Expected Result:** Alert on a service outage — delivered exactly as documented.
**Priority:** High

### TC-PT-7-03-019 — Alert on a feature change
**Type:** Positive
**Covers:** 3.3 → Alert on a feature change; Rule: The alert priority is info or important.
**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: Alert on a feature change.
2. Observe the result and verify the full behavior: Alert on a feature change.
**Expected Result:** Alert on a feature change — delivered exactly as documented.
**Priority:** High

### TC-PT-7-03-020 — Alert with the details and expected duration
**Type:** Positive
**Covers:** 3.3 → Alert with the details and expected duration; Rule: Alert 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: Alert with the details and expected duration.
2. Observe the result and verify the full behavior: Alert with the details and expected duration.
**Expected Result:** Alert with the details and expected duration — delivered exactly as documented.
**Priority:** High

### TC-PT-7-03-021 — Alert priority (info, important)
**Type:** Positive
**Covers:** 3.3 → Alert priority (info, important); Rule: The system and maintenance alerts 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: Alert priority (info.
2. Observe the result and verify the full behavior: Alert priority (info, important).
**Expected Result:** Alert priority (info, important) — delivered exactly as documented.
**Priority:** High

### TC-PT-7-03-022 — Alert event logging (sent, viewed)
**Type:** Positive
**Covers:** 3.3 → Alert 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: Alert event logging (sent.
2. Observe the result and verify the full behavior: Alert event logging (sent, viewed).
**Expected Result:** Alert event logging (sent, viewed) — delivered exactly as documented.
**Priority:** High

### TC-PT-7-03-023 — Audit logging of the system and maintenance alerts
**Type:** Positive
**Covers:** 3.3 → Audit logging of the system and maintenance alerts
**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 system and maintenance alerts.
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
