# 4. Mock Exams & Past Papers — Test Cases

User Type: **Student**
Source: *Mi Digital Academy - Education CRM Features Document*
Spec: mock_exams_past_papers.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 Past Paper Access | Browse past papers by subject, year, and exam type | TC-ST-04-04-001 |
| 4.1 Past Paper Access | Paper detail view (subject, year, duration, sections) | TC-ST-04-04-002 |
| 4.1 Past Paper Access | Preview a paper before starting | TC-ST-04-04-003 |
| 4.1 Past Paper Access | Download a paper for offline use (where allowed) | TC-ST-04-04-004 |
| 4.1 Past Paper Access | Marking scheme / memo view (where available) | TC-ST-04-04-005 |
| 4.1 Past Paper Access | Access gated by subscription | TC-ST-04-04-006 |
| 4.1 Past Paper Access | Search and filter past papers | TC-ST-04-04-007 |
| 4.1 Past Paper Access | Access event logging (viewed, downloaded) | TC-ST-04-04-008 |
| 4.1 Past Paper Access | Audit logging of the past paper access | TC-ST-04-04-009 |
| 4.1 Past Paper Access | Rule: Past papers are organized by subject, year, and exam type. | TC-ST-04-04-001 |
| 4.1 Past Paper Access | Rule: Download is allowed only where the paper permits it; otherwise preview only. | TC-ST-04-04-002 |
| 4.1 Past Paper Access | Rule: The marking scheme is shown only where available. | TC-ST-04-04-003 |
| 4.1 Past Paper Access | Rule: Access is gated by the Student's subscription. | TC-ST-04-04-004 |
| 4.1 Past Paper Access | Rule: Access events (viewed, downloaded) are logged with the paper and the timestamp. | TC-ST-04-04-005 |
| 4.1 Past Paper Access | Rule: The past paper access is audit-logged with the account, the paper, and the timestamp. | TC-ST-04-04-006 |
| 4.2 Mock Exam Simulation | Start a mock exam with a fixed time limit | TC-ST-04-04-010 |
| 4.2 Mock Exam Simulation | Real question mix (matching the target exam pattern) | TC-ST-04-04-011 |
| 4.2 Mock Exam Simulation | No immediate feedback during the mock | TC-ST-04-04-012 |
| 4.2 Mock Exam Simulation | Single submission (no retake within the same window) | TC-ST-04-04-013 |
| 4.2 Mock Exam Simulation | Question navigation and flagging | TC-ST-04-04-014 |
| 4.2 Mock Exam Simulation | Auto-submit at time expiry | TC-ST-04-04-015 |
| 4.2 Mock Exam Simulation | Results available after submission | TC-ST-04-04-016 |
| 4.2 Mock Exam Simulation | Mock exam list by subject and target exam | TC-ST-04-04-017 |
| 4.2 Mock Exam Simulation | Mock exam event logging (start, submit) | TC-ST-04-04-018 |
| 4.2 Mock Exam Simulation | Audit logging of the mock exam simulation | TC-ST-04-04-019 |
| 4.2 Mock Exam Simulation | Rule: A mock exam enforces a fixed time limit and auto-submits at expiry. | TC-ST-04-04-010 |
| 4.2 Mock Exam Simulation | Rule: No immediate feedback is given during a mock; results appear after submission. | TC-ST-04-04-011 |
| 4.2 Mock Exam Simulation | Rule: A mock allows a single submission within the configured window. | TC-ST-04-04-012 |
| 4.2 Mock Exam Simulation | Rule: The question mix matches the target exam pattern. | TC-ST-04-04-013 |
| 4.2 Mock Exam Simulation | Rule: Mock exam events (start, submit) are logged with the mock and the timestamp. | TC-ST-04-04-014 |
| 4.2 Mock Exam Simulation | Rule: The mock exam simulation is audit-logged with the account, the mock, and the timestamp. | TC-ST-04-04-015 |
| 4.3 Mock Exam Results and Readiness | Mock exam score and section-wise breakdown | TC-ST-04-04-020 |
| 4.3 Mock Exam Results and Readiness | Time management analysis (time per section vs available) | TC-ST-04-04-021 |
| 4.3 Mock Exam Results and Readiness | Readiness score for the target exam | TC-ST-04-04-022 |
| 4.3 Mock Exam Results and Readiness | Topics needing urgent revision | TC-ST-04-04-023 |
| 4.3 Mock Exam Results and Readiness | Recommended study focus | TC-ST-04-04-024 |
| 4.3 Mock Exam Results and Readiness | Comparison of mock scores over time | TC-ST-04-04-025 |
| 4.3 Mock Exam Results and Readiness | Readiness view linked to the target exam | TC-ST-04-04-026 |
| 4.3 Mock Exam Results and Readiness | Results event logging | TC-ST-04-04-027 |
| 4.3 Mock Exam Results and Readiness | Audit logging of the mock exam results and readiness | TC-ST-04-04-028 |
| 4.3 Mock Exam Results and Readiness | Rule: The readiness score is computed from the mock performance against the target exam. | TC-ST-04-04-020 |
| 4.3 Mock Exam Results and Readiness | Rule: Time management analysis compares time spent per section with the available time. | TC-ST-04-04-021 |
| 4.3 Mock Exam Results and Readiness | Rule: Topics needing urgent revision are those below the threshold in the mock. | TC-ST-04-04-022 |
| 4.3 Mock Exam Results and Readiness | Rule: The readiness view is linked to the target exam. | TC-ST-04-04-023 |
| 4.3 Mock Exam Results and Readiness | Rule: Results events are logged with the mock, the score, and the timestamp. | TC-ST-04-04-024 |
| 4.3 Mock Exam Results and Readiness | Rule: The mock exam results and readiness is audit-logged with the account, the mock, and the timestamp. | TC-ST-04-04-025 |

## 4.1 Past Paper Access

### TC-ST-04-04-001 — Browse past papers by subject, year, and exam type
**Type:** Positive
**Covers:** 4.1 → Browse past papers by subject, year, and exam type; Rule: Past papers are organized by subject, year, and exam type.
**Preconditions:** A Student account is active and the Student is in the state required for this behavior.
**Steps:**
1. As a Student, set up the precondition and perform: Browse past papers by subject.
2. Observe the result and verify the full behavior: Browse past papers by subject, year, and exam type.
**Expected Result:** Browse past papers by subject, year, and exam type — delivered exactly as documented.
**Priority:** Critical

### TC-ST-04-04-002 — Paper detail view (subject, year, duration, sections)
**Type:** Positive
**Covers:** 4.1 → Paper detail view (subject, year, duration, sections); Rule: Download is allowed only where the paper permits it; otherwise preview only.
**Preconditions:** A Student account is active and the Student is in the state required for this behavior.
**Steps:**
1. As a Student, set up the precondition and perform: Paper detail view (subject.
2. Observe the result and verify the full behavior: Paper detail view (subject, year, duration, sections).
**Expected Result:** Paper detail view (subject, year, duration, sections) — delivered exactly as documented.
**Priority:** High

### TC-ST-04-04-003 — Preview a paper before starting
**Type:** Positive
**Covers:** 4.1 → Preview a paper before starting; Rule: The marking scheme is shown only where available.
**Preconditions:** A Student account is active and the Student is in the state required for this behavior.
**Steps:**
1. As a Student, set up the precondition and perform: Preview a paper before starting.
2. Observe the result and verify the full behavior: Preview a paper before starting.
**Expected Result:** Preview a paper before starting — delivered exactly as documented.
**Priority:** High

### TC-ST-04-04-004 — Download a paper for offline use (where allowed)
**Type:** Positive
**Covers:** 4.1 → Download a paper for offline use (where allowed); Rule: Access is gated by the Student's subscription.
**Preconditions:** A Student account is active and the Student is in the state required for this behavior.
**Steps:**
1. As a Student, set up the precondition and perform: Download a paper for offline use (where allowed).
2. Observe the result and verify the full behavior: Download a paper for offline use (where allowed).
**Expected Result:** Download a paper for offline use (where allowed) — delivered exactly as documented.
**Priority:** High

### TC-ST-04-04-005 — Marking scheme / memo view (where available)
**Type:** Positive
**Covers:** 4.1 → Marking scheme / memo view (where available); Rule: Access events (viewed, downloaded) are logged with the paper and the timestamp.
**Preconditions:** A Student account is active and the Student is in the state required for this behavior.
**Steps:**
1. As a Student, set up the precondition and perform: Marking scheme / memo view (where available).
2. Observe the result and verify the full behavior: Marking scheme / memo view (where available).
**Expected Result:** Marking scheme / memo view (where available) — delivered exactly as documented.
**Priority:** High

### TC-ST-04-04-006 — Access gated by subscription
**Type:** Positive
**Covers:** 4.1 → Access gated by subscription; Rule: The past paper access is audit-logged with the account, the paper, and the timestamp.
**Preconditions:** A Student account is active and the Student is in the state required for this behavior.
**Steps:**
1. As a Student, set up the precondition and perform: Access gated by subscription.
2. Observe the result and verify the full behavior: Access gated by subscription.
**Expected Result:** Access gated by subscription — delivered exactly as documented.
**Priority:** High

### TC-ST-04-04-007 — Search and filter past papers
**Type:** Positive
**Covers:** 4.1 → Search and filter past papers
**Preconditions:** A Student account is active and the Student is in the state required for this behavior.
**Steps:**
1. As a Student, set up the precondition and perform: Search and filter past papers.
2. Observe the result and verify the full behavior: Search and filter past papers.
**Expected Result:** Search and filter past papers — delivered exactly as documented.
**Priority:** High

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

### TC-ST-04-04-009 — Audit logging of the past paper access
**Type:** Positive
**Covers:** 4.1 → Audit logging of the past paper access
**Preconditions:** A Student account is active and the Student is in the state required for this behavior.
**Steps:**
1. As a Student, perform the action associated with: Audit logging of the past paper access.
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 Mock Exam Simulation

### TC-ST-04-04-010 — Start a mock exam with a fixed time limit
**Type:** Edge
**Covers:** 4.2 → Start a mock exam with a fixed time limit; Rule: A mock exam enforces a fixed time limit and auto-submits at expiry.
**Preconditions:** A Student account is active and the Student is in the state required for this behavior.
**Steps:**
1. As a Student, set up the precondition and perform: Start a mock exam with a fixed time limit.
2. Observe the result and verify the full behavior: Start a mock exam with a fixed time limit.
**Expected Result:** Start a mock exam with a fixed time limit — delivered exactly as documented.
**Priority:** Critical

### TC-ST-04-04-011 — Real question mix (matching the target exam pattern)
**Type:** Positive
**Covers:** 4.2 → Real question mix (matching the target exam pattern); Rule: No immediate feedback is given during a mock; results appear after submission.
**Preconditions:** A Student account is active and the Student is in the state required for this behavior.
**Steps:**
1. As a Student, set up the precondition and perform: Real question mix (matching the target exam pattern).
2. Observe the result and verify the full behavior: Real question mix (matching the target exam pattern).
**Expected Result:** Real question mix (matching the target exam pattern) — delivered exactly as documented.
**Priority:** High

### TC-ST-04-04-012 — No immediate feedback during the mock
**Type:** Positive
**Covers:** 4.2 → No immediate feedback during the mock; Rule: A mock allows a single submission within the configured window.
**Preconditions:** A Student account is active and the Student is in the state required for this behavior.
**Steps:**
1. As a Student, set up the precondition and perform: No immediate feedback during the mock.
2. Observe the result and verify the full behavior: No immediate feedback during the mock.
**Expected Result:** No immediate feedback during the mock — delivered exactly as documented.
**Priority:** High

### TC-ST-04-04-013 — Single submission (no retake within the same window)
**Type:** Positive
**Covers:** 4.2 → Single submission (no retake within the same window); Rule: The question mix matches the target exam pattern.
**Preconditions:** A Student account is active and the Student is in the state required for this behavior.
**Steps:**
1. As a Student, set up the precondition and perform: Single submission (no retake within the same window).
2. Observe the result and verify the full behavior: Single submission (no retake within the same window).
**Expected Result:** Single submission (no retake within the same window) — delivered exactly as documented.
**Priority:** High

### TC-ST-04-04-014 — Question navigation and flagging
**Type:** Positive
**Covers:** 4.2 → Question navigation and flagging; Rule: Mock exam events (start, submit) are logged with the mock and the timestamp.
**Preconditions:** A Student account is active and the Student is in the state required for this behavior.
**Steps:**
1. As a Student, set up the precondition and perform: Question navigation and flagging.
2. Observe the result and verify the full behavior: Question navigation and flagging.
**Expected Result:** Question navigation and flagging — delivered exactly as documented.
**Priority:** High

### TC-ST-04-04-015 — Auto-submit at time expiry
**Type:** Edge
**Covers:** 4.2 → Auto-submit at time expiry; Rule: The mock exam simulation is audit-logged with the account, the mock, and the timestamp.
**Preconditions:** A Student account is active and the Student is in the state required for this behavior.
**Steps:**
1. As a Student, set up the precondition and perform: Auto-submit at time expiry.
2. Observe the result and verify the full behavior: Auto-submit at time expiry.
**Expected Result:** Auto-submit at time expiry — delivered exactly as documented.
**Priority:** High

### TC-ST-04-04-016 — Results available after submission
**Type:** Positive
**Covers:** 4.2 → Results available after submission
**Preconditions:** A Student account is active and the Student is in the state required for this behavior.
**Steps:**
1. As a Student, set up the precondition and perform: Results available after submission.
2. Observe the result and verify the full behavior: Results available after submission.
**Expected Result:** Results available after submission — delivered exactly as documented.
**Priority:** High

### TC-ST-04-04-017 — Mock exam list by subject and target exam
**Type:** Positive
**Covers:** 4.2 → Mock exam list by subject and target exam
**Preconditions:** A Student account is active and the Student is in the state required for this behavior.
**Steps:**
1. As a Student, set up the precondition and perform: Mock exam list by subject and target exam.
2. Observe the result and verify the full behavior: Mock exam list by subject and target exam.
**Expected Result:** Mock exam list by subject and target exam — delivered exactly as documented.
**Priority:** High

### TC-ST-04-04-018 — Mock exam event logging (start, submit)
**Type:** Positive
**Covers:** 4.2 → Mock exam event logging (start, submit)
**Preconditions:** A Student account is active and the Student is in the state required for this behavior.
**Steps:**
1. As a Student, set up the precondition and perform: Mock exam event logging (start.
2. Observe the result and verify the full behavior: Mock exam event logging (start, submit).
**Expected Result:** Mock exam event logging (start, submit) — delivered exactly as documented.
**Priority:** High

### TC-ST-04-04-019 — Audit logging of the mock exam simulation
**Type:** Positive
**Covers:** 4.2 → Audit logging of the mock exam simulation
**Preconditions:** A Student account is active and the Student is in the state required for this behavior.
**Steps:**
1. As a Student, perform the action associated with: Audit logging of the mock exam simulation.
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 Mock Exam Results and Readiness

### TC-ST-04-04-020 — Mock exam score and section-wise breakdown
**Type:** Positive
**Covers:** 4.3 → Mock exam score and section-wise breakdown; Rule: The readiness score is computed from the mock performance against the target exam.
**Preconditions:** A Student account is active and the Student is in the state required for this behavior.
**Steps:**
1. As a Student, set up the precondition and perform: Mock exam score and section-wise breakdown.
2. Observe the result and verify the full behavior: Mock exam score and section-wise breakdown.
**Expected Result:** Mock exam score and section-wise breakdown — delivered exactly as documented.
**Priority:** Critical

### TC-ST-04-04-021 — Time management analysis (time per section vs available)
**Type:** Positive
**Covers:** 4.3 → Time management analysis (time per section vs available); Rule: Time management analysis compares time spent per section with the available time.
**Preconditions:** A Student account is active and the Student is in the state required for this behavior.
**Steps:**
1. As a Student, set up the precondition and perform: Time management analysis (time per section vs available).
2. Observe the result and verify the full behavior: Time management analysis (time per section vs available).
**Expected Result:** Time management analysis (time per section vs available) — delivered exactly as documented.
**Priority:** High

### TC-ST-04-04-022 — Readiness score for the target exam
**Type:** Positive
**Covers:** 4.3 → Readiness score for the target exam; Rule: Topics needing urgent revision are those below the threshold in the mock.
**Preconditions:** A Student account is active and the Student is in the state required for this behavior.
**Steps:**
1. As a Student, set up the precondition and perform: Readiness score for the target exam.
2. Observe the result and verify the full behavior: Readiness score for the target exam.
**Expected Result:** Readiness score for the target exam — delivered exactly as documented.
**Priority:** High

### TC-ST-04-04-023 — Topics needing urgent revision
**Type:** Positive
**Covers:** 4.3 → Topics needing urgent revision; Rule: The readiness view is linked to the target exam.
**Preconditions:** A Student account is active and the Student is in the state required for this behavior.
**Steps:**
1. As a Student, set up the precondition and perform: Topics needing urgent revision.
2. Observe the result and verify the full behavior: Topics needing urgent revision.
**Expected Result:** Topics needing urgent revision — delivered exactly as documented.
**Priority:** High

### TC-ST-04-04-024 — Recommended study focus
**Type:** Positive
**Covers:** 4.3 → Recommended study focus; Rule: Results events are logged with the mock, the score, and the timestamp.
**Preconditions:** A Student account is active and the Student is in the state required for this behavior.
**Steps:**
1. As a Student, set up the precondition and perform: Recommended study focus.
2. Observe the result and verify the full behavior: Recommended study focus.
**Expected Result:** Recommended study focus — delivered exactly as documented.
**Priority:** High

### TC-ST-04-04-025 — Comparison of mock scores over time
**Type:** Positive
**Covers:** 4.3 → Comparison of mock scores over time; Rule: The mock exam results and readiness is audit-logged with the account, the mock, and the timestamp.
**Preconditions:** A Student account is active and the Student is in the state required for this behavior.
**Steps:**
1. As a Student, set up the precondition and perform: Comparison of mock scores over time.
2. Observe the result and verify the full behavior: Comparison of mock scores over time.
**Expected Result:** Comparison of mock scores over time — delivered exactly as documented.
**Priority:** High

### TC-ST-04-04-026 — Readiness view linked to the target exam
**Type:** Positive
**Covers:** 4.3 → Readiness view linked to the target exam
**Preconditions:** A Student account is active and the Student is in the state required for this behavior.
**Steps:**
1. As a Student, set up the precondition and perform: Readiness view linked to the target exam.
2. Observe the result and verify the full behavior: Readiness view linked to the target exam.
**Expected Result:** Readiness view linked to the target exam — delivered exactly as documented.
**Priority:** High

### TC-ST-04-04-027 — Results event logging
**Type:** Positive
**Covers:** 4.3 → Results event logging
**Preconditions:** A Student account is active and the Student is in the state required for this behavior.
**Steps:**
1. As a Student, set up the precondition and perform: Results event logging.
2. Observe the result and verify the full behavior: Results event logging.
**Expected Result:** Results event logging — delivered exactly as documented.
**Priority:** High

### TC-ST-04-04-028 — Audit logging of the mock exam results and readiness
**Type:** Positive
**Covers:** 4.3 → Audit logging of the mock exam results and readiness
**Preconditions:** A Student account is active and the Student is in the state required for this behavior.
**Steps:**
1. As a Student, perform the action associated with: Audit logging of the mock exam results and readiness.
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
