# 1. Per-Video Resources — Test Cases

User Type: **Super Administrator**
Source: *Mi Digital Academy - Education CRM Features Document*
Spec: per_video_resources.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 Downloadable PDF Notes and Key Concepts Summary | PDF notes: the video's notes as a downloadable PDF | TC-SA-09-01-001 |
| 1.1 Downloadable PDF Notes and Key Concepts Summary | Key concepts summary: a concise summary of the video's key concepts | TC-SA-09-01-002 |
| 1.1 Downloadable PDF Notes and Key Concepts Summary | Download: the notes/summary downloadable (per the platform's download policy) | TC-SA-09-01-003 |
| 1.1 Downloadable PDF Notes and Key Concepts Summary | Attachment to the video: the resources attached to the specific video | TC-SA-09-01-004 |
| 1.1 Downloadable PDF Notes and Key Concepts Summary | Visibility: the resources shown on the video's page (where the learner is) | TC-SA-09-01-005 |
| 1.1 Downloadable PDF Notes and Key Concepts Summary | Update: the notes/summary updated when the video content changes | TC-SA-09-01-006 |
| 1.1 Downloadable PDF Notes and Key Concepts Summary | Audit logging of resource attachment/update | TC-SA-09-01-007 |
| 1.1 Downloadable PDF Notes and Key Concepts Summary | Rule: the PDF notes and key-concepts summary are the video's written counterpart; they complement the video, not replace it | TC-SA-09-01-005 |
| 1.1 Downloadable PDF Notes and Key Concepts Summary | Rule: the download is governed by the platform's download policy (entitlement, cap); the attachment does not override the policy | TC-SA-09-01-003 |
| 1.1 Downloadable PDF Notes and Key Concepts Summary | Rule: the resources are attached to the specific video; they are per-video, not generic | TC-SA-09-01-004 |
| 1.1 Downloadable PDF Notes and Key Concepts Summary | Rule: a content update (a re-cut) triggers a notes/summary update; the written material matches the current video | TC-SA-09-01-006 |
| 1.1 Downloadable PDF Notes and Key Concepts Summary | Rule: a video missing its notes/summary is a visible gap; it is not a silent omission | TC-SA-09-01-008 |
| 1.1 Downloadable PDF Notes and Key Concepts Summary | Rule: resource attachment/update is audit-logged with the video, resources, and timestamp | TC-SA-09-01-007 |
| 1.2 Additional Reading Materials and External Links | Additional reading: the supplementary reading materials (articles, documents) attached to the video | TC-SA-09-01-009 |
| 1.2 Additional Reading Materials and External Links | External links: the links to relevant articles/videos (trusted outside sources) | TC-SA-09-01-010 |
| 1.2 Additional Reading Materials and External Links | Curation: the reading/links checked for relevance and quality | TC-SA-09-01-011 |
| 1.2 Additional Reading Materials and External Links | Link validation: the external links checked (they resolve, they are the right target) | TC-SA-09-01-012 |
| 1.2 Additional Reading Materials and External Links | Attachment to the video: the reading/links attached to the specific video | TC-SA-09-01-013 |
| 1.2 Additional Reading Materials and External Links | Visibility: the reading/links shown on the video's page | TC-SA-09-01-014 |
| 1.2 Additional Reading Materials and External Links | Audit logging of reading/link attachment | TC-SA-09-01-015 |
| 1.2 Additional Reading Materials and External Links | Rule: the additional reading and external links are supplementary; they extend the video, not replace it | TC-SA-09-01-014 |
| 1.2 Additional Reading Materials and External Links | Rule: the reading/links are curated for relevance and quality; an irrelevant or low-quality item is not attached | TC-SA-09-01-011 |
| 1.2 Additional Reading Materials and External Links | Rule: the external links are validated (they resolve, they are the right target); a broken link is replaced or removed | TC-SA-09-01-012 |
| 1.2 Additional Reading Materials and External Links | Rule: the reading/links are attached to the specific video; they are per-video, not generic | TC-SA-09-01-013 |
| 1.2 Additional Reading Materials and External Links | Rule: an outdated reading material is replaced with the current one; the change is recorded | TC-SA-09-01-016 |
| 1.2 Additional Reading Materials and External Links | Rule: reading/link attachment is audit-logged with the video, reading/links, and timestamp | TC-SA-09-01-015 |
| 1.3 Practice Worksheets and Solved Example Problems | Practice worksheets: the exercises attached to the video (the learner completes them) | TC-SA-09-01-017 |
| 1.3 Practice Worksheets and Solved Example Problems | Solved example problems: the worked examples (the method shown step by step) | TC-SA-09-01-018 |
| 1.3 Practice Worksheets and Solved Example Problems | Worksheet download: the worksheets downloadable (per the platform's download policy) | TC-SA-09-01-019 |
| 1.3 Practice Worksheets and Solved Example Problems | Attachment to the video: the worksheets/solved examples attached to the specific video | TC-SA-09-01-020 |
| 1.3 Practice Worksheets and Solved Example Problems | Alignment: the worksheets/solved examples match the video's content | TC-SA-09-01-021 |
| 1.3 Practice Worksheets and Solved Example Problems | Visibility: the worksheets/solved examples shown on the video's page | TC-SA-09-01-022 |
| 1.3 Practice Worksheets and Solved Example Problems | Audit logging of worksheet/solved-example attachment | TC-SA-09-01-023 |
| 1.3 Practice Worksheets and Solved Example Problems | Rule: the practice worksheets and solved examples are the video's practice material; they turn the concepts into application | TC-SA-09-01-022 |
| 1.3 Practice Worksheets and Solved Example Problems | Rule: the alignment is checked: the worksheets/solved examples match the video's content; a mismatch is corrected | TC-SA-09-01-021 |
| 1.3 Practice Worksheets and Solved Example Problems | Rule: the worksheet download is governed by the platform's download policy (entitlement, cap) | TC-SA-09-01-019 |
| 1.3 Practice Worksheets and Solved Example Problems | Rule: the solved examples show the method; they are the worked approach, not just the answer | TC-SA-09-01-018 |
| 1.3 Practice Worksheets and Solved Example Problems | Rule: a worksheet error (a wrong answer key) is corrected and re-attached; the change is recorded | TC-SA-09-01-024 |
| 1.3 Practice Worksheets and Solved Example Problems | Rule: worksheet/solved-example attachment is audit-logged with the video, items, and timestamp | TC-SA-09-01-023 |

## 1.1 Downloadable PDF Notes and Key Concepts Summary

### TC-SA-09-01-001 — PDF notes: the video's notes as a downloadable PDF
**Type:** Positive
**Covers:** 1.1 → PDF notes: the video's notes as a downloadable PDF
**Preconditions:** A video exists; the PDF notes for the video are prepared.
**Steps:**
1. For the video, attach the PDF notes: the video's written notes, as a downloadable PDF.
2. Save and verify the PDF notes are attached to the video.
**Expected Result:** The PDF notes are attached — the video's written notes are available as a downloadable PDF.
**Priority:** Critical

### TC-SA-09-01-002 — Key concepts summary: a concise summary of the video's key concepts
**Type:** Positive
**Covers:** 1.1 → Key concepts summary: a concise summary of the video's key concepts
**Preconditions:** A video exists; the key-concepts summary is prepared.
**Steps:**
1. Attach the key-concepts summary: a concise summary of the video's key concepts (the takeaways at a glance).
2. Save and verify the summary is attached to the video.
**Expected Result:** The key-concepts summary is attached — a concise summary of the video's key concepts.
**Priority:** High

### TC-SA-09-01-003 — Download: the notes/summary downloadable (per the platform's download policy); the attachment does not override the policy
**Type:** Negative
**Covers:** 1.1 → Download: the notes/summary downloadable (per the platform's download policy); Rule: the download is governed by the platform's download policy (entitlement, cap); the attachment does not override the policy
**Preconditions:** A video has PDF notes attached; the platform's download policy (entitlement, cap) is configured.
**Steps:**
1. As an entitled learner, download the PDF notes and verify the download succeeds.
2. As a learner who has reached the download cap, attempt to download and verify the cap is enforced.
3. Verify the attachment does not override the policy (the entitlement and cap still apply).
**Expected Result:** The download is governed by the platform's download policy (entitlement, cap) — the attachment does not override the policy.
**Priority:** Critical

### TC-SA-09-01-004 — Attachment to the video: the resources attached to the specific video; they are per-video, not generic
**Type:** Positive
**Covers:** 1.1 → Attachment to the video: the resources attached to the specific video; Rule: the resources are attached to the specific video; they are per-video, not generic
**Preconditions:** Multiple videos exist; PDF notes are attached to one specific video.
**Steps:**
1. Attach the PDF notes to the specific video.
2. Verify the notes appear on that video's page only (per-video, not generic).
3. Verify another video does not show this video's notes.
**Expected Result:** The resources are attached to the specific video — they are per-video, not generic.
**Priority:** High

### TC-SA-09-01-005 — Visibility: the resources shown on the video's page (where the learner is); they complement the video, not replace it
**Type:** Positive
**Covers:** 1.1 → Visibility: the resources shown on the video's page (where the learner is); Rule: the PDF notes and key-concepts summary are the video's written counterpart; they complement the video, not replace it
**Preconditions:** A video has PDF notes and a key-concepts summary attached.
**Steps:**
1. As a learner, open the video's page.
2. Verify the PDF notes and key-concepts summary are shown on the video's page (where the learner is).
3. Verify the video is still the primary content (the resources complement it, not replace it).
**Expected Result:** The resources are shown on the video's page — they complement the video, not replace it.
**Priority:** High

### TC-SA-09-01-006 — Update: the notes/summary updated when the video content changes; the written material matches the current video
**Type:** Negative
**Covers:** 1.1 → Update: the notes/summary updated when the video content changes; Rule: a content update (a re-cut) triggers a notes/summary update; the written material matches the current video
**Preconditions:** A video's content is updated (a re-cut); the notes/summary are now out of date.
**Steps:**
1. Update the video's content (a re-cut).
2. Verify the notes/summary are updated to match the new content.
3. Verify the written material matches the current video.
**Expected Result:** The notes/summary are updated when the video content changes — the written material matches the current video.
**Priority:** Critical

### TC-SA-09-01-007 — Resource attachment/update is audit-logged with the video, the resources, and the timestamp
**Type:** Positive
**Covers:** 1.1 → Audit logging of resource attachment/update; Rule: resource attachment/update is audit-logged with the video, resources, and timestamp
**Preconditions:** PDF notes have been attached and updated for a video.
**Steps:**
1. Open the audit trail and filter by "resource attachment".
2. Verify entries show the video, the resources, and the timestamp.
**Expected Result:** The resource attachment/update is audit-logged with the video, resources, and timestamp.
**Priority:** Critical

### TC-SA-09-01-008 — A video missing its notes/summary is a visible gap; it is not a silent omission
**Type:** Negative
**Covers:** 1.1 → Rule: a video missing its notes/summary is a visible gap; it is not a silent omission
**Preconditions:** A video has no PDF notes or key-concepts summary attached.
**Steps:**
1. Review the resource coverage: the videos with their notes/summary.
2. Verify the video missing its notes/summary is a visible gap (flagged in the coverage view).
3. Verify it is not a silent omission.
**Expected Result:** The video missing its notes/summary is a visible gap — it is not a silent omission.
**Priority:** High

## 1.2 Additional Reading Materials and External Links

### TC-SA-09-01-009 — Additional reading: the supplementary reading materials (articles, documents) attached to the video
**Type:** Positive
**Covers:** 1.2 → Additional reading: the supplementary reading materials (articles, documents) attached to the video
**Preconditions:** A video exists; supplementary reading materials are prepared.
**Steps:**
1. For the video, attach the additional reading materials: the supplementary articles/documents that extend the video's topic.
2. Save and verify the reading materials are attached.
**Expected Result:** The additional reading materials are attached — the supplementary articles/documents extend the video's topic.
**Priority:** High

### TC-SA-09-01-010 — External links: the links to relevant articles/videos (trusted outside sources)
**Type:** Positive
**Covers:** 1.2 → External links: the links to relevant articles/videos (trusted outside sources)
**Preconditions:** A video exists; relevant external links are identified.
**Steps:**
1. Add the external links: the relevant articles/videos from trusted outside sources, so a learner can go deeper.
2. Save and verify the external links are attached.
**Expected Result:** The external links are attached — the relevant articles/videos from trusted outside sources.
**Priority:** High

### TC-SA-09-01-011 — Curation: the reading/links checked for relevance and quality; an irrelevant or low-quality item is not attached
**Type:** Negative
**Covers:** 1.2 → Curation: the reading/links checked for relevance and quality; Rule: the reading/links are curated for relevance and quality; an irrelevant or low-quality item is not attached
**Preconditions:** A reading material is irrelevant to the video's topic (or low-quality).
**Steps:**
1. Attempt to attach the irrelevant or low-quality reading material.
2. Verify it is not attached (the curation check rejects it).
3. Verify only relevant, high-quality items are attached.
**Expected Result:** The reading/links are curated for relevance and quality — the irrelevant or low-quality item is not attached.
**Priority:** High

### TC-SA-09-01-012 — Link validation: the external links checked (they resolve, they are the right target); a broken link is replaced or removed
**Type:** Negative
**Covers:** 1.2 → Link validation: the external links checked (they resolve, they are the right target); Rule: the external links are validated (they resolve, they are the right target); a broken link is replaced or removed
**Preconditions:** An external link is broken (the target moved or was removed).
**Steps:**
1. Validate the external links: verify they resolve (no broken links) and they are the right target.
2. Identify the broken link.
3. Replace it with a working link (or remove it) and verify the change is recorded.
**Expected Result:** The external links are validated — the broken link is replaced or removed.
**Priority:** Critical

### TC-SA-09-01-013 — Attachment to the video: the reading/links attached to the specific video; they are per-video, not generic
**Type:** Positive
**Covers:** 1.2 → Attachment to the video: the reading/links attached to the specific video; Rule: the reading/links are attached to the specific video; they are per-video, not generic
**Preconditions:** Multiple videos exist; reading/links are attached to one specific video.
**Steps:**
1. Attach the reading/links to the specific video.
2. Verify they appear on that video's page only (per-video, not generic).
**Expected Result:** The reading/links are attached to the specific video — they are per-video, not generic.
**Priority:** Medium

### TC-SA-09-01-014 — Visibility: the reading/links shown on the video's page; they extend the video, not replace it
**Type:** Positive
**Covers:** 1.2 → Visibility: the reading/links shown on the video's page; Rule: the additional reading and external links are supplementary; they extend the video, not replace it
**Preconditions:** A video has additional reading and external links attached.
**Steps:**
1. As a learner, open the video's page.
2. Verify the reading/links are shown on the video's page.
3. Verify they are supplementary (they extend the video, not replace it).
**Expected Result:** The reading/links are shown on the video's page — they extend the video, not replace it.
**Priority:** Medium

### TC-SA-09-01-015 — Reading/link attachment is audit-logged with the video, the reading/links, and the timestamp
**Type:** Positive
**Covers:** 1.2 → Audit logging of reading/link attachment; Rule: reading/link attachment is audit-logged with the video, reading/links, and timestamp
**Preconditions:** Reading materials and external links have been attached to a video.
**Steps:**
1. Open the audit trail and filter by "reading/link attachment".
2. Verify entries show the video, the reading/links, and the timestamp.
**Expected Result:** The reading/link attachment is audit-logged with the video, reading/links, and timestamp.
**Priority:** Critical

### TC-SA-09-01-016 — An outdated reading material is replaced with the current one; the change is recorded
**Type:** Negative
**Covers:** 1.2 → Rule: an outdated reading material is replaced with the current one; the change is recorded
**Preconditions:** A reading material is outdated (a superseded article).
**Steps:**
1. Identify the outdated reading material.
2. Replace it with the current one.
3. Verify the change is recorded.
**Expected Result:** The outdated reading material is replaced with the current one — the change is recorded.
**Priority:** High

## 1.3 Practice Worksheets and Solved Example Problems

### TC-SA-09-01-017 — Practice worksheets: the exercises attached to the video (the learner completes them)
**Type:** Positive
**Covers:** 1.3 → Practice worksheets: the exercises attached to the video (the learner completes them)
**Preconditions:** A video exists; practice worksheets are prepared.
**Steps:**
1. For the video, attach the practice worksheets: the exercises that apply the video's concepts (the learner completes them).
2. Save and verify the worksheets are attached.
**Expected Result:** The practice worksheets are attached — the exercises that apply the video's concepts.
**Priority:** High

### TC-SA-09-01-018 — Solved example problems: the worked examples (the method shown step by step); they are the worked approach, not just the answer
**Type:** Positive
**Covers:** 1.3 → Solved example problems: the worked examples (the method shown step by step); Rule: the solved examples show the method; they are the worked approach, not just the answer
**Preconditions:** A video exists; solved example problems are prepared.
**Steps:**
1. Attach the solved example problems: the worked examples showing the method step by step.
2. Verify the solved examples show the method (the worked approach, not just the answer).
**Expected Result:** The solved example problems are attached — the worked examples show the method step by step (the worked approach, not just the answer).
**Priority:** High

### TC-SA-09-01-019 — Worksheet download: the worksheets downloadable (per the platform's download policy); the entitlement and cap apply
**Type:** Negative
**Covers:** 1.3 → Worksheet download: the worksheets downloadable (per the platform's download policy); Rule: the worksheet download is governed by the platform's download policy (entitlement, cap)
**Preconditions:** A video has practice worksheets attached; the download policy (entitlement, cap) is configured.
**Steps:**
1. As an entitled learner, download the worksheet and verify the download succeeds.
2. As a learner who has reached the cap, attempt to download and verify the cap is enforced.
**Expected Result:** The worksheet download is governed by the platform's download policy (entitlement, cap).
**Priority:** High

### TC-SA-09-01-020 — Attachment to the video: the worksheets/solved examples attached to the specific video
**Type:** Positive
**Covers:** 1.3 → Attachment to the video: the worksheets/solved examples attached to the specific video
**Preconditions:** Multiple videos exist; worksheets/solved examples are attached to one specific video.
**Steps:**
1. Attach the worksheets/solved examples to the specific video.
2. Verify they appear on that video's page only.
**Expected Result:** The worksheets/solved examples are attached to the specific video.
**Priority:** Medium

### TC-SA-09-01-021 — Alignment: the worksheets/solved examples match the video's content; a mismatch is corrected
**Type:** Negative
**Covers:** 1.3 → Alignment: the worksheets/solved examples match the video's content; Rule: the alignment is checked: the worksheets/solved examples match the video's content; a mismatch is corrected
**Preconditions:** A worksheet is misaligned (it does not match the video's content).
**Steps:**
1. Check the alignment: verify the worksheets/solved examples match the video's content.
2. Identify the mismatch.
3. Correct it (replace with the aligned worksheet) and verify the change is recorded.
**Expected Result:** The alignment is checked — the mismatch is corrected; the worksheets/solved examples match the video's content.
**Priority:** Critical

### TC-SA-09-01-022 — Visibility: the worksheets/solved examples shown on the video's page; they turn the concepts into application
**Type:** Positive
**Covers:** 1.3 → Visibility: the worksheets/solved examples shown on the video's page; Rule: the practice worksheets and solved examples are the video's practice material; they turn the concepts into application
**Preconditions:** A video has practice worksheets and solved examples attached.
**Steps:**
1. As a learner, open the video's page.
2. Verify the worksheets/solved examples are shown on the video's page.
3. Verify the learner can study the solved examples (the method) and complete the worksheet (the application).
**Expected Result:** The worksheets/solved examples are shown on the video's page — they turn the concepts into application.
**Priority:** Medium

### TC-SA-09-01-023 — Worksheet/solved-example attachment is audit-logged with the video, the items, and the timestamp
**Type:** Positive
**Covers:** 1.3 → Audit logging of worksheet/solved-example attachment; Rule: worksheet/solved-example attachment is audit-logged with the video, items, and timestamp
**Preconditions:** Worksheets and solved examples have been attached to a video.
**Steps:**
1. Open the audit trail and filter by "worksheet attachment".
2. Verify entries show the video, the items, and the timestamp.
**Expected Result:** The worksheet/solved-example attachment is audit-logged with the video, items, and timestamp.
**Priority:** Critical

### TC-SA-09-01-024 — A worksheet error (a wrong answer key) is corrected and re-attached; the change is recorded
**Type:** Negative
**Covers:** 1.3 → Rule: a worksheet error (a wrong answer key) is corrected and re-attached; the change is recorded
**Preconditions:** A worksheet has an error (a wrong answer in the key).
**Steps:**
1. Identify the worksheet error (a wrong answer in the key).
2. Correct it and re-attach the worksheet.
3. Verify the change is recorded.
**Expected Result:** The worksheet error is corrected and re-attached — the change is recorded.
**Priority:** Critical
