# 2. Progress & Time Tracking — Test Cases

User Type: **Parent**
Source: *Mi Digital Academy - Education CRM Features Document*
Spec: progress_time_tracking.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 |
|---------|--------------------|----------|
| 2.1 Course Progress and Completion | Course progress per enrolled course | TC-PT-3-02-001 |
| 2.1 Course Progress and Completion | Percentage completed per course | TC-PT-3-02-002 |
| 2.1 Course Progress and Completion | Lessons finished per course | TC-PT-3-02-003 |
| 2.1 Course Progress and Completion | Overall completion rate | TC-PT-3-02-004 |
| 2.1 Course Progress and Completion | Progress by subject | TC-PT-3-02-005 |
| 2.1 Course Progress and Completion | Progress available on web and mobile | TC-PT-3-02-006 |
| 2.1 Course Progress and Completion | Progress event logging (viewed) | TC-PT-3-02-007 |
| 2.1 Course Progress and Completion | Audit logging of the course progress and completion | TC-PT-3-02-008 |
| 2.1 Course Progress and Completion | Rule: The progress is per enrolled course. | TC-PT-3-02-001 |
| 2.1 Course Progress and Completion | Rule: The completion rate is a percentage. | TC-PT-3-02-002 |
| 2.1 Course Progress and Completion | Rule: Progress events (viewed) are logged with the account and the timestamp. | TC-PT-3-02-003 |
| 2.1 Course Progress and Completion | Rule: The course progress and completion is audit-logged with the account and the timestamp. | TC-PT-3-02-004 |
| 2.2 Time Spent Tracking | Time spent per day | TC-PT-3-02-009 |
| 2.2 Time Spent Tracking | Time spent per week | TC-PT-3-02-010 |
| 2.2 Time Spent Tracking | Time breakdown by subject | TC-PT-3-02-011 |
| 2.2 Time Spent Tracking | Time breakdown by activity type | TC-PT-3-02-012 |
| 2.2 Time Spent Tracking | Time trend over time | TC-PT-3-02-013 |
| 2.2 Time Spent Tracking | Time tracking available on web and mobile | TC-PT-3-02-014 |
| 2.2 Time Spent Tracking | Time event logging (viewed) | TC-PT-3-02-015 |
| 2.2 Time Spent Tracking | Audit logging of the time spent tracking | TC-PT-3-02-016 |
| 2.2 Time Spent Tracking | Rule: The time is tracked daily and weekly. | TC-PT-3-02-009 |
| 2.2 Time Spent Tracking | Rule: The breakdown is by subject and activity type. | TC-PT-3-02-010 |
| 2.2 Time Spent Tracking | Rule: Time events (viewed) are logged with the account and the timestamp. | TC-PT-3-02-011 |
| 2.2 Time Spent Tracking | Rule: The time spent tracking is audit-logged with the account and the timestamp. | TC-PT-3-02-012 |
| 2.3 Study Streak and Consistency | Current study streak (consecutive days) | TC-PT-3-02-017 |
| 2.3 Study Streak and Consistency | Longest study streak | TC-PT-3-02-018 |
| 2.3 Study Streak and Consistency | Consistency indicator | TC-PT-3-02-019 |
| 2.3 Study Streak and Consistency | Streak history | TC-PT-3-02-020 |
| 2.3 Study Streak and Consistency | Streak at-risk indicator | TC-PT-3-02-021 |
| 2.3 Study Streak and Consistency | Streak available on web and mobile | TC-PT-3-02-022 |
| 2.3 Study Streak and Consistency | Streak event logging (viewed) | TC-PT-3-02-023 |
| 2.3 Study Streak and Consistency | Audit logging of the study streak and consistency | TC-PT-3-02-024 |
| 2.3 Study Streak and Consistency | Rule: The streak is consecutive days of study. | TC-PT-3-02-017 |
| 2.3 Study Streak and Consistency | Rule: A streak at-risk indicator is shown when the streak is in danger. | TC-PT-3-02-018 |
| 2.3 Study Streak and Consistency | Rule: Streak events (viewed) are logged with the account and the timestamp. | TC-PT-3-02-019 |
| 2.3 Study Streak and Consistency | Rule: The study streak and consistency is audit-logged with the account and the timestamp. | TC-PT-3-02-020 |

## 2.1 Course Progress and Completion

### TC-PT-3-02-001 — Course progress per enrolled course
**Type:** Positive
**Covers:** 2.1 → Course progress per enrolled course; Rule: The progress is per enrolled course.
**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: Course progress per enrolled course.
2. Observe the result and verify the full behavior: Course progress per enrolled course.
**Expected Result:** Course progress per enrolled course — delivered exactly as documented.
**Priority:** Critical

### TC-PT-3-02-002 — Percentage completed per course
**Type:** Positive
**Covers:** 2.1 → Percentage completed per course; Rule: The completion rate is a percentage.
**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: Percentage completed per course.
2. Observe the result and verify the full behavior: Percentage completed per course.
**Expected Result:** Percentage completed per course — delivered exactly as documented.
**Priority:** High

### TC-PT-3-02-003 — Lessons finished per course
**Type:** Positive
**Covers:** 2.1 → Lessons finished per course; Rule: Progress events (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: Lessons finished per course.
2. Observe the result and verify the full behavior: Lessons finished per course.
**Expected Result:** Lessons finished per course — delivered exactly as documented.
**Priority:** High

### TC-PT-3-02-004 — Overall completion rate
**Type:** Positive
**Covers:** 2.1 → Overall completion rate; Rule: The course progress and completion 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: Overall completion rate.
2. Observe the result and verify the full behavior: Overall completion rate.
**Expected Result:** Overall completion rate — delivered exactly as documented.
**Priority:** High

### TC-PT-3-02-005 — Progress by subject
**Type:** Positive
**Covers:** 2.1 → Progress by subject
**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: Progress by subject.
2. Observe the result and verify the full behavior: Progress by subject.
**Expected Result:** Progress by subject — delivered exactly as documented.
**Priority:** High

### TC-PT-3-02-006 — Progress available on web and mobile
**Type:** Positive
**Covers:** 2.1 → Progress 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: Progress available on web and mobile.
2. Observe the result and verify the full behavior: Progress available on web and mobile.
**Expected Result:** Progress available on web and mobile — delivered exactly as documented.
**Priority:** High

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

### TC-PT-3-02-008 — Audit logging of the course progress and completion
**Type:** Positive
**Covers:** 2.1 → Audit logging of the course progress and completion
**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 course progress and completion.
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

## 2.2 Time Spent Tracking

### TC-PT-3-02-009 — Time spent per day
**Type:** Positive
**Covers:** 2.2 → Time spent per day; Rule: The time is tracked daily and weekly.
**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: Time spent per day.
2. Observe the result and verify the full behavior: Time spent per day.
**Expected Result:** Time spent per day — delivered exactly as documented.
**Priority:** Critical

### TC-PT-3-02-010 — Time spent per week
**Type:** Positive
**Covers:** 2.2 → Time spent per week; Rule: The breakdown is by subject and activity type.
**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: Time spent per week.
2. Observe the result and verify the full behavior: Time spent per week.
**Expected Result:** Time spent per week — delivered exactly as documented.
**Priority:** High

### TC-PT-3-02-011 — Time breakdown by subject
**Type:** Positive
**Covers:** 2.2 → Time breakdown by subject; Rule: Time events (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: Time breakdown by subject.
2. Observe the result and verify the full behavior: Time breakdown by subject.
**Expected Result:** Time breakdown by subject — delivered exactly as documented.
**Priority:** High

### TC-PT-3-02-012 — Time breakdown by activity type
**Type:** Positive
**Covers:** 2.2 → Time breakdown by activity type; Rule: The time spent tracking 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: Time breakdown by activity type.
2. Observe the result and verify the full behavior: Time breakdown by activity type.
**Expected Result:** Time breakdown by activity type — delivered exactly as documented.
**Priority:** High

### TC-PT-3-02-013 — Time trend over time
**Type:** Positive
**Covers:** 2.2 → Time trend over time
**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: Time trend over time.
2. Observe the result and verify the full behavior: Time trend over time.
**Expected Result:** Time trend over time — delivered exactly as documented.
**Priority:** High

### TC-PT-3-02-014 — Time tracking available on web and mobile
**Type:** Positive
**Covers:** 2.2 → Time tracking 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: Time tracking available on web and mobile.
2. Observe the result and verify the full behavior: Time tracking available on web and mobile.
**Expected Result:** Time tracking available on web and mobile — delivered exactly as documented.
**Priority:** High

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

### TC-PT-3-02-016 — Audit logging of the time spent tracking
**Type:** Positive
**Covers:** 2.2 → Audit logging of the time spent tracking
**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 time spent tracking.
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

## 2.3 Study Streak and Consistency

### TC-PT-3-02-017 — Current study streak (consecutive days)
**Type:** Positive
**Covers:** 2.3 → Current study streak (consecutive days); Rule: The streak is consecutive days of study.
**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: Current study streak (consecutive days).
2. Observe the result and verify the full behavior: Current study streak (consecutive days).
**Expected Result:** Current study streak (consecutive days) — delivered exactly as documented.
**Priority:** Critical

### TC-PT-3-02-018 — Longest study streak
**Type:** Positive
**Covers:** 2.3 → Longest study streak; Rule: A streak at-risk indicator is shown when the streak is in danger.
**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: Longest study streak.
2. Observe the result and verify the full behavior: Longest study streak.
**Expected Result:** Longest study streak — delivered exactly as documented.
**Priority:** High

### TC-PT-3-02-019 — Consistency indicator
**Type:** Positive
**Covers:** 2.3 → Consistency indicator; Rule: Streak events (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: Consistency indicator.
2. Observe the result and verify the full behavior: Consistency indicator.
**Expected Result:** Consistency indicator — delivered exactly as documented.
**Priority:** High

### TC-PT-3-02-020 — Streak history
**Type:** Positive
**Covers:** 2.3 → Streak history; Rule: The study streak and consistency 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: Streak history.
2. Observe the result and verify the full behavior: Streak history.
**Expected Result:** Streak history — delivered exactly as documented.
**Priority:** High

### TC-PT-3-02-021 — Streak at-risk indicator
**Type:** Positive
**Covers:** 2.3 → Streak at-risk indicator
**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: Streak at-risk indicator.
2. Observe the result and verify the full behavior: Streak at-risk indicator.
**Expected Result:** Streak at-risk indicator — delivered exactly as documented.
**Priority:** High

### TC-PT-3-02-022 — Streak available on web and mobile
**Type:** Positive
**Covers:** 2.3 → Streak 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: Streak available on web and mobile.
2. Observe the result and verify the full behavior: Streak available on web and mobile.
**Expected Result:** Streak available on web and mobile — delivered exactly as documented.
**Priority:** High

### TC-PT-3-02-023 — Streak event logging (viewed)
**Type:** Positive
**Covers:** 2.3 → Streak event logging (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: Streak event logging (viewed).
2. Observe the result and verify the full behavior: Streak event logging (viewed).
**Expected Result:** Streak event logging (viewed) — delivered exactly as documented.
**Priority:** High

### TC-PT-3-02-024 — Audit logging of the study streak and consistency
**Type:** Positive
**Covers:** 2.3 → Audit logging of the study streak and consistency
**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 study streak and consistency.
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
