# 1. Resource Guide & FAQ — Test Cases

User Type: **Student**
Source: *Mi Digital Academy - Education CRM Features Document*
Spec: resource_guide_faq.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 |
|---------|--------------------|----------|
| 1.1 Resource Guide | Resource guide organized by subject and topic | TC-ST-05-01-001 |
| 1.1 Resource Guide | Key concepts, formulas, and definitions per topic | TC-ST-05-01-002 |
| 1.1 Resource Guide | Search within the resource guide | TC-ST-05-01-003 |
| 1.1 Resource Guide | Filter by subject and topic | TC-ST-05-01-004 |
| 1.1 Resource Guide | Links from a guide entry to related videos, flashcards, and questions | TC-ST-05-01-005 |
| 1.1 Resource Guide | Bookmark a guide entry for quick revision | TC-ST-05-01-006 |
| 1.1 Resource Guide | Guide available on web and mobile | TC-ST-05-01-007 |
| 1.1 Resource Guide | Guide content gated by subscription | TC-ST-05-01-008 |
| 1.1 Resource Guide | Access event logging (viewed, bookmarked) | TC-ST-05-01-009 |
| 1.1 Resource Guide | Audit logging of the resource guide | TC-ST-05-01-010 |
| 1.1 Resource Guide | Rule: The resource guide is organized by subject and topic; an entry appears under its topic. | TC-ST-05-01-001 |
| 1.1 Resource Guide | Rule: Search and filter operate within the guide. | TC-ST-05-01-002 |
| 1.1 Resource Guide | Rule: A guide entry links to related videos, flashcards, and practice questions where available. | TC-ST-05-01-003 |
| 1.1 Resource Guide | Rule: Bookmarking an entry adds it to the Student's saved items. | TC-ST-05-01-004 |
| 1.1 Resource Guide | Rule: Guide content is gated by the Student's subscription. | TC-ST-05-01-005 |
| 1.1 Resource Guide | Rule: Access events (viewed, bookmarked) are logged with the entry and the timestamp. | TC-ST-05-01-006 |
| 1.1 Resource Guide | Rule: The resource guide is audit-logged with the account, the entry, and the timestamp. | TC-ST-05-01-007 |
| 1.2 Frequently Asked Questions (FAQ) | FAQ organized by category (getting started, learning, billing, technical) | TC-ST-05-01-011 |
| 1.2 Frequently Asked Questions (FAQ) | Search the FAQ by keyword | TC-ST-05-01-012 |
| 1.2 Frequently Asked Questions (FAQ) | Browse questions by category | TC-ST-05-01-013 |
| 1.2 Frequently Asked Questions (FAQ) | Expand a question to read the answer | TC-ST-05-01-014 |
| 1.2 Frequently Asked Questions (FAQ) | Mark an answer as helpful or not helpful | TC-ST-05-01-015 |
| 1.2 Frequently Asked Questions (FAQ) | "Still need help?" escalation to a support ticket | TC-ST-05-01-016 |
| 1.2 Frequently Asked Questions (FAQ) | FAQ available on web and mobile | TC-ST-05-01-017 |
| 1.2 Frequently Asked Questions (FAQ) | FAQ content kept current by the platform | TC-ST-05-01-018 |
| 1.2 Frequently Asked Questions (FAQ) | FAQ event logging (searched, viewed, escalated) | TC-ST-05-01-019 |
| 1.2 Frequently Asked Questions (FAQ) | Audit logging of the FAQ | TC-ST-05-01-020 |
| 1.2 Frequently Asked Questions (FAQ) | Rule: The FAQ is organized by category; a question appears under its category. | TC-ST-05-01-011 |
| 1.2 Frequently Asked Questions (FAQ) | Rule: Search matches question titles and answer text. | TC-ST-05-01-012 |
| 1.2 Frequently Asked Questions (FAQ) | Rule: Marking an answer helpful/not helpful is recorded for content improvement. | TC-ST-05-01-013 |
| 1.2 Frequently Asked Questions (FAQ) | Rule: "Still need help?" creates a support ticket prefilled with the question. | TC-ST-05-01-014 |
| 1.2 Frequently Asked Questions (FAQ) | Rule: The FAQ is available on web and mobile. | TC-ST-05-01-015 |
| 1.2 Frequently Asked Questions (FAQ) | Rule: FAQ events (searched, viewed, escalated) are logged with the query/question and the timestamp. | TC-ST-05-01-016 |
| 1.2 Frequently Asked Questions (FAQ) | Rule: The FAQ is audit-logged with the account, the question, and the timestamp. | TC-ST-05-01-017 |
| 1.3 Downloadable Resources | Downloadable resources (PDFs, worksheets, formula sheets, templates) | TC-ST-05-01-021 |
| 1.3 Downloadable Resources | Organized by subject and topic | TC-ST-05-01-022 |
| 1.3 Downloadable Resources | Download with progress indicator | TC-ST-05-01-023 |
| 1.3 Downloadable Resources | "My downloads" library of downloaded resources | TC-ST-05-01-024 |
| 1.3 Downloadable Resources | Re-download a resource from the library | TC-ST-05-01-025 |
| 1.3 Downloadable Resources | Delete a downloaded resource | TC-ST-05-01-026 |
| 1.3 Downloadable Resources | Download gated by subscription | TC-ST-05-01-027 |
| 1.3 Downloadable Resources | Storage usage indicator | TC-ST-05-01-028 |
| 1.3 Downloadable Resources | Download event logging (started, completed, deleted) | TC-ST-05-01-029 |
| 1.3 Downloadable Resources | Audit logging of the downloadable resources | TC-ST-05-01-030 |
| 1.3 Downloadable Resources | Rule: Downloads require an active subscription; without it, the download button is disabled. | TC-ST-05-01-021 |
| 1.3 Downloadable Resources | Rule: A download completes before the resource can be opened offline. | TC-ST-05-01-022 |
| 1.3 Downloadable Resources | Rule: Deleting a downloaded resource removes it from the device but not from the catalog. | TC-ST-05-01-023 |
| 1.3 Downloadable Resources | Rule: Storage usage is shown; the Student is warned when approaching the limit. | TC-ST-05-01-024 |
| 1.3 Downloadable Resources | Rule: Download events (started, completed, deleted) are logged with the resource and the timestamp. | TC-ST-05-01-025 |
| 1.3 Downloadable Resources | Rule: The downloadable resources is audit-logged with the account, the resource, and the timestamp. | TC-ST-05-01-026 |

## 1.1 Resource Guide

### TC-ST-05-01-001 — Resource guide organized by subject and topic
**Type:** Positive
**Covers:** 1.1 → Resource guide organized by subject and topic; Rule: The resource guide is organized by subject and topic; an entry appears under its topic.
**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: Resource guide organized by subject and topic.
2. Observe the result and verify the full behavior: Resource guide organized by subject and topic.
**Expected Result:** Resource guide organized by subject and topic — delivered exactly as documented.
**Priority:** Critical

### TC-ST-05-01-002 — Key concepts, formulas, and definitions per topic
**Type:** Positive
**Covers:** 1.1 → Key concepts, formulas, and definitions per topic; Rule: Search and filter operate within the guide.
**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: Key concepts.
2. Observe the result and verify the full behavior: Key concepts, formulas, and definitions per topic.
**Expected Result:** Key concepts, formulas, and definitions per topic — delivered exactly as documented.
**Priority:** High

### TC-ST-05-01-003 — Search within the resource guide
**Type:** Positive
**Covers:** 1.1 → Search within the resource guide; Rule: A guide entry links to related videos, flashcards, and practice questions 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: Search within the resource guide.
2. Observe the result and verify the full behavior: Search within the resource guide.
**Expected Result:** Search within the resource guide — delivered exactly as documented.
**Priority:** High

### TC-ST-05-01-004 — Filter by subject and topic
**Type:** Positive
**Covers:** 1.1 → Filter by subject and topic; Rule: Bookmarking an entry adds it to the Student's saved items.
**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: Filter by subject and topic.
2. Observe the result and verify the full behavior: Filter by subject and topic.
**Expected Result:** Filter by subject and topic — delivered exactly as documented.
**Priority:** High

### TC-ST-05-01-005 — Links from a guide entry to related videos, flashcards, and questions
**Type:** Positive
**Covers:** 1.1 → Links from a guide entry to related videos, flashcards, and questions; Rule: Guide content 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: Links from a guide entry to related videos.
2. Observe the result and verify the full behavior: Links from a guide entry to related videos, flashcards, and questions.
**Expected Result:** Links from a guide entry to related videos, flashcards, and questions — delivered exactly as documented.
**Priority:** High

### TC-ST-05-01-006 — Bookmark a guide entry for quick revision
**Type:** Positive
**Covers:** 1.1 → Bookmark a guide entry for quick revision; Rule: Access events (viewed, bookmarked) are logged with the entry 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: Bookmark a guide entry for quick revision.
2. Observe the result and verify the full behavior: Bookmark a guide entry for quick revision.
**Expected Result:** Bookmark a guide entry for quick revision — delivered exactly as documented.
**Priority:** High

### TC-ST-05-01-007 — Guide available on web and mobile
**Type:** Positive
**Covers:** 1.1 → Guide available on web and mobile; Rule: The resource guide is audit-logged with the account, the entry, 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: Guide available on web and mobile.
2. Observe the result and verify the full behavior: Guide available on web and mobile.
**Expected Result:** Guide available on web and mobile — delivered exactly as documented.
**Priority:** High

### TC-ST-05-01-008 — Guide content gated by subscription
**Type:** Positive
**Covers:** 1.1 → Guide content gated by 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: Guide content gated by subscription.
2. Observe the result and verify the full behavior: Guide content gated by subscription.
**Expected Result:** Guide content gated by subscription — delivered exactly as documented.
**Priority:** High

### TC-ST-05-01-009 — Access event logging (viewed, bookmarked)
**Type:** Positive
**Covers:** 1.1 → Access event logging (viewed, bookmarked)
**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, bookmarked).
**Expected Result:** Access event logging (viewed, bookmarked) — delivered exactly as documented.
**Priority:** High

### TC-ST-05-01-010 — Audit logging of the resource guide
**Type:** Positive
**Covers:** 1.1 → Audit logging of the resource guide
**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 resource guide.
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

## 1.2 Frequently Asked Questions (FAQ)

### TC-ST-05-01-011 — FAQ organized by category (getting started, learning, billing, technical)
**Type:** Positive
**Covers:** 1.2 → FAQ organized by category (getting started, learning, billing, technical); Rule: The FAQ is organized by category; a question appears under its category.
**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: FAQ organized by category (getting started.
2. Observe the result and verify the full behavior: FAQ organized by category (getting started, learning, billing, technical).
**Expected Result:** FAQ organized by category (getting started, learning, billing, technical) — delivered exactly as documented.
**Priority:** Critical

### TC-ST-05-01-012 — Search the FAQ by keyword
**Type:** Positive
**Covers:** 1.2 → Search the FAQ by keyword; Rule: Search matches question titles and answer text.
**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 the FAQ by keyword.
2. Observe the result and verify the full behavior: Search the FAQ by keyword.
**Expected Result:** Search the FAQ by keyword — delivered exactly as documented.
**Priority:** High

### TC-ST-05-01-013 — Browse questions by category
**Type:** Positive
**Covers:** 1.2 → Browse questions by category; Rule: Marking an answer helpful/not helpful is recorded for content improvement.
**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 questions by category.
2. Observe the result and verify the full behavior: Browse questions by category.
**Expected Result:** Browse questions by category — delivered exactly as documented.
**Priority:** High

### TC-ST-05-01-014 — Expand a question to read the answer
**Type:** Positive
**Covers:** 1.2 → Expand a question to read the answer; Rule: "Still need help?" creates a support ticket prefilled with the question.
**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: Expand a question to read the answer.
2. Observe the result and verify the full behavior: Expand a question to read the answer.
**Expected Result:** Expand a question to read the answer — delivered exactly as documented.
**Priority:** High

### TC-ST-05-01-015 — Mark an answer as helpful or not helpful
**Type:** Positive
**Covers:** 1.2 → Mark an answer as helpful or not helpful; Rule: The FAQ is available on web and mobile.
**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: Mark an answer as helpful or not helpful.
2. Observe the result and verify the full behavior: Mark an answer as helpful or not helpful.
**Expected Result:** Mark an answer as helpful or not helpful — delivered exactly as documented.
**Priority:** High

### TC-ST-05-01-016 — "Still need help?" escalation to a support ticket
**Type:** Positive
**Covers:** 1.2 → "Still need help?" escalation to a support ticket; Rule: FAQ events (searched, viewed, escalated) are logged with the query/question 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: "Still need help?" escalation to a support ticket.
2. Observe the result and verify the full behavior: "Still need help?" escalation to a support ticket.
**Expected Result:** "Still need help?" escalation to a support ticket — delivered exactly as documented.
**Priority:** High

### TC-ST-05-01-017 — FAQ available on web and mobile
**Type:** Positive
**Covers:** 1.2 → FAQ available on web and mobile; Rule: The FAQ is audit-logged with the account, the question, 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: FAQ available on web and mobile.
2. Observe the result and verify the full behavior: FAQ available on web and mobile.
**Expected Result:** FAQ available on web and mobile — delivered exactly as documented.
**Priority:** High

### TC-ST-05-01-018 — FAQ content kept current by the platform
**Type:** Positive
**Covers:** 1.2 → FAQ content kept current by the platform
**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: FAQ content kept current by the platform.
2. Observe the result and verify the full behavior: FAQ content kept current by the platform.
**Expected Result:** FAQ content kept current by the platform — delivered exactly as documented.
**Priority:** High

### TC-ST-05-01-019 — FAQ event logging (searched, viewed, escalated)
**Type:** Positive
**Covers:** 1.2 → FAQ event logging (searched, viewed, escalated)
**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: FAQ event logging (searched.
2. Observe the result and verify the full behavior: FAQ event logging (searched, viewed, escalated).
**Expected Result:** FAQ event logging (searched, viewed, escalated) — delivered exactly as documented.
**Priority:** High

### TC-ST-05-01-020 — Audit logging of the FAQ
**Type:** Positive
**Covers:** 1.2 → Audit logging of the FAQ
**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 FAQ.
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

## 1.3 Downloadable Resources

### TC-ST-05-01-021 — Downloadable resources (PDFs, worksheets, formula sheets, templates)
**Type:** Positive
**Covers:** 1.3 → Downloadable resources (PDFs, worksheets, formula sheets, templates); Rule: Downloads require an active subscription; without it, the download button is disabled.
**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: Downloadable resources (PDFs.
2. Observe the result and verify the full behavior: Downloadable resources (PDFs, worksheets, formula sheets, templates).
**Expected Result:** Downloadable resources (PDFs, worksheets, formula sheets, templates) — delivered exactly as documented.
**Priority:** Critical

### TC-ST-05-01-022 — Organized by subject and topic
**Type:** Positive
**Covers:** 1.3 → Organized by subject and topic; Rule: A download completes before the resource can be opened offline.
**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: Organized by subject and topic.
2. Observe the result and verify the full behavior: Organized by subject and topic.
**Expected Result:** Organized by subject and topic — delivered exactly as documented.
**Priority:** High

### TC-ST-05-01-023 — Download with progress indicator
**Type:** Positive
**Covers:** 1.3 → Download with progress indicator; Rule: Deleting a downloaded resource removes it from the device but not from the catalog.
**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 with progress indicator.
2. Observe the result and verify the full behavior: Download with progress indicator.
**Expected Result:** Download with progress indicator — delivered exactly as documented.
**Priority:** High

### TC-ST-05-01-024 — "My downloads" library of downloaded resources
**Type:** Positive
**Covers:** 1.3 → "My downloads" library of downloaded resources; Rule: Storage usage is shown; the Student is warned when approaching the limit.
**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: "My downloads" library of downloaded resources.
2. Observe the result and verify the full behavior: "My downloads" library of downloaded resources.
**Expected Result:** "My downloads" library of downloaded resources — delivered exactly as documented.
**Priority:** High

### TC-ST-05-01-025 — Re-download a resource from the library
**Type:** Positive
**Covers:** 1.3 → Re-download a resource from the library; Rule: Download events (started, completed, deleted) are logged with the resource 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: Re-download a resource from the library.
2. Observe the result and verify the full behavior: Re-download a resource from the library.
**Expected Result:** Re-download a resource from the library — delivered exactly as documented.
**Priority:** High

### TC-ST-05-01-026 — Delete a downloaded resource
**Type:** Positive
**Covers:** 1.3 → Delete a downloaded resource; Rule: The downloadable resources is audit-logged with the account, the resource, 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: Delete a downloaded resource.
2. Observe the result and verify the full behavior: Delete a downloaded resource.
**Expected Result:** Delete a downloaded resource — delivered exactly as documented.
**Priority:** High

### TC-ST-05-01-027 — Download gated by subscription
**Type:** Positive
**Covers:** 1.3 → Download gated by 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 gated by subscription.
2. Observe the result and verify the full behavior: Download gated by subscription.
**Expected Result:** Download gated by subscription — delivered exactly as documented.
**Priority:** High

### TC-ST-05-01-028 — Storage usage indicator
**Type:** Positive
**Covers:** 1.3 → Storage usage indicator
**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: Storage usage indicator.
2. Observe the result and verify the full behavior: Storage usage indicator.
**Expected Result:** Storage usage indicator — delivered exactly as documented.
**Priority:** High

### TC-ST-05-01-029 — Download event logging (started, completed, deleted)
**Type:** Positive
**Covers:** 1.3 → Download event logging (started, completed, deleted)
**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 event logging (started.
2. Observe the result and verify the full behavior: Download event logging (started, completed, deleted).
**Expected Result:** Download event logging (started, completed, deleted) — delivered exactly as documented.
**Priority:** High

### TC-ST-05-01-030 — Audit logging of the downloadable resources
**Type:** Positive
**Covers:** 1.3 → Audit logging of the downloadable resources
**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 downloadable resources.
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
