# 3. Celebrating Achievements — Test Cases

User Type: **Parent**
Source: *Mi Digital Academy - Education CRM Features Document*
Spec: celebrating_achievements.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 Celebrate Milestones Together | Send a celebration for a milestone | TC-PT-9-03-001 |
| 3.1 Celebrate Milestones Together | Celebration with a personal message | TC-PT-9-03-002 |
| 3.1 Celebrate Milestones Together | Celebratory presentation to the child | TC-PT-9-03-003 |
| 3.1 Celebrate Milestones Together | Celebration types (course, score, streak) | TC-PT-9-03-004 |
| 3.1 Celebrate Milestones Together | Celebration history | TC-PT-9-03-005 |
| 3.1 Celebrate Milestones Together | Celebrations visible to both Parent and child | TC-PT-9-03-006 |
| 3.1 Celebrate Milestones Together | Celebration event logging (sent, viewed) | TC-PT-9-03-007 |
| 3.1 Celebrate Milestones Together | Audit logging of the celebrate milestones together | TC-PT-9-03-008 |
| 3.1 Celebrate Milestones Together | Rule: The celebration is for a milestone. | TC-PT-9-03-001 |
| 3.1 Celebrate Milestones Together | Rule: The celebration includes a personal message. | TC-PT-9-03-002 |
| 3.1 Celebrate Milestones Together | Rule: The celebration is visible to both the Parent and the child. | TC-PT-9-03-003 |
| 3.1 Celebrate Milestones Together | Rule: Celebration events (sent, viewed) are logged with the account and the timestamp. | TC-PT-9-03-004 |
| 3.1 Celebrate Milestones Together | Rule: The celebrate milestones together is audit-logged with the account and the timestamp. | TC-PT-9-03-005 |
| 3.2 Achievement Showcase | Showcase of the child's achievements | TC-PT-9-03-009 |
| 3.2 Achievement Showcase | Badges earned | TC-PT-9-03-010 |
| 3.2 Achievement Showcase | Milestones reached | TC-PT-9-03-011 |
| 3.2 Achievement Showcase | Records set | TC-PT-9-03-012 |
| 3.2 Achievement Showcase | Highlight a favorite achievement | TC-PT-9-03-013 |
| 3.2 Achievement Showcase | Showcase visible to both Parent and child | TC-PT-9-03-014 |
| 3.2 Achievement Showcase | Showcase event logging (viewed, highlighted) | TC-PT-9-03-015 |
| 3.2 Achievement Showcase | Audit logging of the achievement showcase | TC-PT-9-03-016 |
| 3.2 Achievement Showcase | Rule: The showcase includes badges, milestones, and records. | TC-PT-9-03-009 |
| 3.2 Achievement Showcase | Rule: A favorite achievement can be highlighted. | TC-PT-9-03-010 |
| 3.2 Achievement Showcase | Rule: The showcase is visible to both the Parent and the child. | TC-PT-9-03-011 |
| 3.2 Achievement Showcase | Rule: Showcase events (viewed, highlighted) are logged with the account and the timestamp. | TC-PT-9-03-012 |
| 3.2 Achievement Showcase | Rule: The achievement showcase is audit-logged with the account and the timestamp. | TC-PT-9-03-013 |
| 3.3 Share Achievements | Share an achievement with the teacher | TC-PT-9-03-017 |
| 3.3 Share Achievements | Share a shareable achievement summary | TC-PT-9-03-018 |
| 3.3 Share Achievements | Select the achievement and audience | TC-PT-9-03-019 |
| 3.3 Share Achievements | Share sent confirmation | TC-PT-9-03-020 |
| 3.3 Share Achievements | Child informed of the share | TC-PT-9-03-021 |
| 3.3 Share Achievements | Share history | TC-PT-9-03-022 |
| 3.3 Share Achievements | Sharing available on web and mobile | TC-PT-9-03-023 |
| 3.3 Share Achievements | Share event logging (shared) | TC-PT-9-03-024 |
| 3.3 Share Achievements | Audit logging of the share achievements | TC-PT-9-03-025 |
| 3.3 Share Achievements | Rule: The share is with the selected audience. | TC-PT-9-03-017 |
| 3.3 Share Achievements | Rule: A share confirmation is shown. | TC-PT-9-03-018 |
| 3.3 Share Achievements | Rule: The child is informed of the share. | TC-PT-9-03-019 |
| 3.3 Share Achievements | Rule: Share events (shared) are logged with the account and the timestamp. | TC-PT-9-03-020 |
| 3.3 Share Achievements | Rule: The share achievements is audit-logged with the account and the timestamp. | TC-PT-9-03-021 |

## 3.1 Celebrate Milestones Together

### TC-PT-9-03-001 — Send a celebration for a milestone
**Type:** Positive
**Covers:** 3.1 → Send a celebration for a milestone; Rule: The celebration is for a milestone.
**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: Send a celebration for a milestone.
2. Observe the result and verify the full behavior: Send a celebration for a milestone.
**Expected Result:** Send a celebration for a milestone — delivered exactly as documented.
**Priority:** Critical

### TC-PT-9-03-002 — Celebration with a personal message
**Type:** Positive
**Covers:** 3.1 → Celebration with a personal message; Rule: The celebration includes a personal message.
**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: Celebration with a personal message.
2. Observe the result and verify the full behavior: Celebration with a personal message.
**Expected Result:** Celebration with a personal message — delivered exactly as documented.
**Priority:** High

### TC-PT-9-03-003 — Celebratory presentation to the child
**Type:** Positive
**Covers:** 3.1 → Celebratory presentation to the child; Rule: The celebration is visible to both the Parent and the child.
**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: Celebratory presentation to the child.
2. Observe the result and verify the full behavior: Celebratory presentation to the child.
**Expected Result:** Celebratory presentation to the child — delivered exactly as documented.
**Priority:** High

### TC-PT-9-03-004 — Celebration types (course, score, streak)
**Type:** Positive
**Covers:** 3.1 → Celebration types (course, score, streak); Rule: Celebration 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: Celebration types (course.
2. Observe the result and verify the full behavior: Celebration types (course, score, streak).
**Expected Result:** Celebration types (course, score, streak) — delivered exactly as documented.
**Priority:** High

### TC-PT-9-03-005 — Celebration history
**Type:** Positive
**Covers:** 3.1 → Celebration history; Rule: The celebrate milestones together 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: Celebration history.
2. Observe the result and verify the full behavior: Celebration history.
**Expected Result:** Celebration history — delivered exactly as documented.
**Priority:** High

### TC-PT-9-03-006 — Celebrations visible to both Parent and child
**Type:** Positive
**Covers:** 3.1 → Celebrations visible to both Parent and child
**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: Celebrations visible to both Parent and child.
2. Observe the result and verify the full behavior: Celebrations visible to both Parent and child.
**Expected Result:** Celebrations visible to both Parent and child — delivered exactly as documented.
**Priority:** High

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

### TC-PT-9-03-008 — Audit logging of the celebrate milestones together
**Type:** Positive
**Covers:** 3.1 → Audit logging of the celebrate milestones together
**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 celebrate milestones together.
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 Achievement Showcase

### TC-PT-9-03-009 — Showcase of the child's achievements
**Type:** Positive
**Covers:** 3.2 → Showcase of the child's achievements; Rule: The showcase includes badges, milestones, and records.
**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: Showcase of the child's achievements.
2. Observe the result and verify the full behavior: Showcase of the child's achievements.
**Expected Result:** Showcase of the child's achievements — delivered exactly as documented.
**Priority:** Critical

### TC-PT-9-03-010 — Badges earned
**Type:** Positive
**Covers:** 3.2 → Badges earned; Rule: A favorite achievement can be highlighted.
**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: Badges earned.
2. Observe the result and verify the full behavior: Badges earned.
**Expected Result:** Badges earned — delivered exactly as documented.
**Priority:** High

### TC-PT-9-03-011 — Milestones reached
**Type:** Positive
**Covers:** 3.2 → Milestones reached; Rule: The showcase is visible to both the Parent and the child.
**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: Milestones reached.
2. Observe the result and verify the full behavior: Milestones reached.
**Expected Result:** Milestones reached — delivered exactly as documented.
**Priority:** High

### TC-PT-9-03-012 — Records set
**Type:** Positive
**Covers:** 3.2 → Records set; Rule: Showcase events (viewed, highlighted) 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: Records set.
2. Observe the result and verify the full behavior: Records set.
**Expected Result:** Records set — delivered exactly as documented.
**Priority:** High

### TC-PT-9-03-013 — Highlight a favorite achievement
**Type:** Positive
**Covers:** 3.2 → Highlight a favorite achievement; Rule: The achievement showcase 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: Highlight a favorite achievement.
2. Observe the result and verify the full behavior: Highlight a favorite achievement.
**Expected Result:** Highlight a favorite achievement — delivered exactly as documented.
**Priority:** High

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

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

### TC-PT-9-03-016 — Audit logging of the achievement showcase
**Type:** Positive
**Covers:** 3.2 → Audit logging of the achievement showcase
**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 achievement showcase.
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 Share Achievements

### TC-PT-9-03-017 — Share an achievement with the teacher
**Type:** Positive
**Covers:** 3.3 → Share an achievement with the teacher; Rule: The share is with the selected audience.
**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: Share an achievement with the teacher.
2. Observe the result and verify the full behavior: Share an achievement with the teacher.
**Expected Result:** Share an achievement with the teacher — delivered exactly as documented.
**Priority:** Critical

### TC-PT-9-03-018 — Share a shareable achievement summary
**Type:** Positive
**Covers:** 3.3 → Share a shareable achievement summary; Rule: A share confirmation is shown.
**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: Share a shareable achievement summary.
2. Observe the result and verify the full behavior: Share a shareable achievement summary.
**Expected Result:** Share a shareable achievement summary — delivered exactly as documented.
**Priority:** High

### TC-PT-9-03-019 — Select the achievement and audience
**Type:** Positive
**Covers:** 3.3 → Select the achievement and audience; Rule: The child is informed of the share.
**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: Select the achievement and audience.
2. Observe the result and verify the full behavior: Select the achievement and audience.
**Expected Result:** Select the achievement and audience — delivered exactly as documented.
**Priority:** High

### TC-PT-9-03-020 — Share sent confirmation
**Type:** Positive
**Covers:** 3.3 → Share sent confirmation; Rule: Share events (shared) 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: Share sent confirmation.
2. Observe the result and verify the full behavior: Share sent confirmation.
**Expected Result:** Share sent confirmation — delivered exactly as documented.
**Priority:** High

### TC-PT-9-03-021 — Child informed of the share
**Type:** Positive
**Covers:** 3.3 → Child informed of the share; Rule: The share achievements 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: Child informed of the share.
2. Observe the result and verify the full behavior: Child informed of the share.
**Expected Result:** Child informed of the share — delivered exactly as documented.
**Priority:** High

### TC-PT-9-03-022 — Share history
**Type:** Positive
**Covers:** 3.3 → Share 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: Share history.
2. Observe the result and verify the full behavior: Share history.
**Expected Result:** Share history — delivered exactly as documented.
**Priority:** High

### TC-PT-9-03-023 — Sharing available on web and mobile
**Type:** Positive
**Covers:** 3.3 → Sharing 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: Sharing available on web and mobile.
2. Observe the result and verify the full behavior: Sharing available on web and mobile.
**Expected Result:** Sharing available on web and mobile — delivered exactly as documented.
**Priority:** High

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

### TC-PT-9-03-025 — Audit logging of the share achievements
**Type:** Positive
**Covers:** 3.3 → Audit logging of the share achievements
**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 share achievements.
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
