# 3. Voice Note Management — Test Cases

User Type: **Super Administrator**
Source: *Mi Digital Academy - Education CRM Features Document*
Spec: voice_note_management.md — every feature, sub-feature, and rule covered

## Test Execution Policy

- Zero tolerance: any deviation from the documented behavior is a defect.
- Every failed test is logged with a Bug ID, the feature, the sub-feature, the expected vs actual result, and the severity; 100% of bugs are fixed before the group passes.
- 100% pass rate is required for the group to be marked complete.

## Coverage Matrix

| Feature | Sub-feature / Rule | Test IDs |
|---------|--------------------|----------|
| 3.1 Note Storage | Storage enablement | TC-SA-VN-03-001 |
| 3.1 Note Storage | Storage capacity | TC-SA-VN-03-002 |
| 3.1 Note Storage | Storage format | TC-SA-VN-03-003 |
| 3.1 Note Storage | Storage status | TC-SA-VN-03-004 |
| 3.1 Note Storage | Storage log | TC-SA-VN-03-005 |
| 3.1 Note Storage | Rule: a note exceeding the capacity cannot be stored | TC-SA-VN-03-006 |
| 3.1 Note Storage | Rule: storage actions are audit-logged | TC-SA-VN-03-007 |
| 3.2 Note Organization | Note categorization | TC-SA-VN-03-008 |
| 3.2 Note Organization | Note tagging | TC-SA-VN-03-009 |
| 3.2 Note Organization | Note search | TC-SA-VN-03-010 |
| 3.2 Note Organization | Note listing | TC-SA-VN-03-011 |
| 3.2 Note Organization | Note log | TC-SA-VN-03-012 |
| 3.2 Note Organization | Rule: a note with no category is uncategorized | TC-SA-VN-03-013 |
| 3.2 Note Organization | Rule: organization actions are audit-logged | TC-SA-VN-03-014 |
| 3.3 Note Playback | Playback enablement | TC-SA-VN-03-015 |
| 3.3 Note Playback | Playback controls | TC-SA-VN-03-016 |
| 3.3 Note Playback | Playback status | TC-SA-VN-03-017 |
| 3.3 Note Playback | Playback history | TC-SA-VN-03-018 |
| 3.3 Note Playback | Playback log | TC-SA-VN-03-019 |
| 3.3 Note Playback | Rule: a playback without a note cannot be started | TC-SA-VN-03-020 |
| 3.3 Note Playback | Rule: playback actions are audit-logged | TC-SA-VN-03-021 |
| 3.4 Note Retention | Retention enablement | TC-SA-VN-03-022 |
| 3.4 Note Retention | Retention period | TC-SA-VN-03-023 |
| 3.4 Note Retention | Retention status | TC-SA-VN-03-024 |
| 3.4 Note Retention | Retention expiry | TC-SA-VN-03-025 |
| 3.4 Note Retention | Retention log | TC-SA-VN-03-026 |
| 3.4 Note Retention | Rule: a note past the retention period is expired | TC-SA-VN-03-027 |
| 3.4 Note Retention | Rule: retention actions are audit-logged | TC-SA-VN-03-028 |
| 3.5 Note Deletion | Deletion enablement | TC-SA-VN-03-029 |
| 3.5 Note Deletion | Deletion scope | TC-SA-VN-03-030 |
| 3.5 Note Deletion | Deletion confirmation | TC-SA-VN-03-031 |
| 3.5 Note Deletion | Deletion status | TC-SA-VN-03-032 |
| 3.5 Note Deletion | Deletion log | TC-SA-VN-03-033 |
| 3.5 Note Deletion | Rule: a deletion without a note cannot be performed | TC-SA-VN-03-034 |
| 3.5 Note Deletion | Rule: deletion actions are audit-logged | TC-SA-VN-03-035 |

### TC-SA-VN-03-001 — Storage enablement
**Type:** Positive
**Covers:** 3.1 → Storage enablement: the enablement of the note storage
**Preconditions:** A Super Admin account is active.
**Steps:**
1. As a Super Admin, enable the note storage and save.
2. Observe the result and verify the full behavior: the storage is enabled.
**Expected Result:** The enablement works — the storage is enabled, delivered exactly as documented.
**Priority:** High

### TC-SA-VN-03-002 — Storage capacity
**Type:** Positive
**Covers:** 3.1 → Storage capacity: the capacity of the storage
**Preconditions:** A Super Admin account is active; the storage is enabled.
**Steps:**
1. As a Super Admin, set the storage capacity and save.
2. Observe the result and verify the full behavior: the capacity is applied.
**Expected Result:** The capacity is set — it is applied, delivered exactly as documented.
**Priority:** High

### TC-SA-VN-03-003 — Storage format
**Type:** Positive
**Covers:** 3.1 → Storage format: the format of the stored notes
**Preconditions:** A Super Admin account is active; the storage is enabled.
**Steps:**
1. As a Super Admin, set the storage format and save.
2. Observe the result and verify the full behavior: the format is applied.
**Expected Result:** The format is set — it is applied, delivered exactly as documented.
**Priority:** Medium

### TC-SA-VN-03-004 — Storage status
**Type:** Positive
**Covers:** 3.1 → Storage status: the status of the storage
**Preconditions:** A Super Admin account is active; the storage is enabled.
**Steps:**
1. As a Super Admin, view the storage status.
2. Observe the result and verify the full behavior: the status is shown.
**Expected Result:** The status is shown — it reflects the state, delivered exactly as documented.
**Priority:** Low

### TC-SA-VN-03-005 — Storage log
**Type:** Positive
**Covers:** 3.1 → Storage log: the log of the storage
**Preconditions:** A Super Admin account is active; storage actions exist.
**Steps:**
1. As a Super Admin, open the storage log.
2. Observe the result and verify the full behavior: the actions are listed.
**Expected Result:** The log is shown — the actions are listed, delivered exactly as documented.
**Priority:** Low

### TC-SA-VN-03-006 — Rule: a note exceeding the capacity cannot be stored
**Type:** Negative
**Covers:** 3.1 → Rule: a note exceeding the capacity cannot be stored
**Preconditions:** A Super Admin account is active; the storage capacity is set.
**Steps:**
1. As a learner, attempt to store a note exceeding the capacity.
2. Observe the result and verify the full behavior: the storage is blocked.
**Expected Result:** The storage is blocked — the capacity is enforced, delivered exactly as documented.
**Priority:** High

### TC-SA-VN-03-007 — Rule: storage actions are audit-logged
**Type:** Positive
**Covers:** 3.1 → Audit logging of note storage
**Preconditions:** A Super Admin account is active; the audit log is accessible.
**Steps:**
1. As a Super Admin, enable the storage and save.
2. Open the audit log.
3. Observe the result and verify the full behavior: the action is recorded with the actor and timestamp.
**Expected Result:** The action is audit-logged — the actor and timestamp are recorded, delivered exactly as documented.
**Priority:** High

### TC-SA-VN-03-008 — Note categorization
**Type:** Positive
**Covers:** 3.2 → Note categorization: the categorization of the notes
**Preconditions:** A Super Admin account is active; notes exist.
**Steps:**
1. As a Super Admin, categorize the notes and save.
2. Observe the result and verify the full behavior: the categorization is applied.
**Expected Result:** The categorization works — it is applied, delivered exactly as documented.
**Priority:** Medium

### TC-SA-VN-03-009 — Note tagging
**Type:** Positive
**Covers:** 3.2 → Note tagging: the tagging of the notes
**Preconditions:** A Super Admin account is active; notes exist.
**Steps:**
1. As a Super Admin, tag the notes and save.
2. Observe the result and verify the full behavior: the tagging is applied.
**Expected Result:** The tagging works — it is applied, delivered exactly as documented.
**Priority:** Medium

### TC-SA-VN-03-010 — Note search
**Type:** Positive
**Covers:** 3.2 → Note search: the search of the notes
**Preconditions:** A Super Admin account is active; notes exist.
**Steps:**
1. As a Super Admin, search the notes.
2. Observe the result and verify the full behavior: the notes are found.
**Expected Result:** The search works — the notes are found, delivered exactly as documented.
**Priority:** Medium

### TC-SA-VN-03-011 — Note listing
**Type:** Positive
**Covers:** 3.2 → Note listing: the listing of the notes
**Preconditions:** A Super Admin account is active; notes exist.
**Steps:**
1. As a Super Admin, open the note listing.
2. Observe the result and verify the full behavior: the notes are listed.
**Expected Result:** The listing is shown — the notes are listed, delivered exactly as documented.
**Priority:** Low

### TC-SA-VN-03-012 — Note log
**Type:** Positive
**Covers:** 3.2 → Note log: the log of the organization
**Preconditions:** A Super Admin account is active; organization actions exist.
**Steps:**
1. As a Super Admin, open the note log.
2. Observe the result and verify the full behavior: the actions are listed.
**Expected Result:** The log is shown — the actions are listed, delivered exactly as documented.
**Priority:** Low

### TC-SA-VN-03-013 — Rule: a note with no category is uncategorized
**Type:** Positive
**Covers:** 3.2 → Rule: a note with no category is uncategorized
**Preconditions:** A Super Admin account is active; a note has no category.
**Steps:**
1. As a Super Admin, open the note.
2. Observe the result and verify the full behavior: the note is shown as uncategorized.
**Expected Result:** The note is uncategorized — it is shown, delivered exactly as documented.
**Priority:** Low

### TC-SA-VN-03-014 — Rule: organization actions are audit-logged
**Type:** Positive
**Covers:** 3.2 → Audit logging of note organization
**Preconditions:** A Super Admin account is active; the audit log is accessible.
**Steps:**
1. As a Super Admin, categorize a note and save.
2. Open the audit log.
3. Observe the result and verify the full behavior: the action is recorded with the actor and timestamp.
**Expected Result:** The action is audit-logged — the actor and timestamp are recorded, delivered exactly as documented.
**Priority:** High

### TC-SA-VN-03-015 — Playback enablement
**Type:** Positive
**Covers:** 3.3 → Playback enablement: the enablement of the note playback
**Preconditions:** A Super Admin account is active.
**Steps:**
1. As a Super Admin, enable the note playback and save.
2. Observe the result and verify the full behavior: the playback is enabled.
**Expected Result:** The enablement works — the playback is enabled, delivered exactly as documented.
**Priority:** High

### TC-SA-VN-03-016 — Playback controls
**Type:** Positive
**Covers:** 3.3 → Playback controls: the controls of the playback
**Preconditions:** A Super Admin account is active; the playback is enabled.
**Steps:**
1. As a learner, use the playback controls.
2. Observe the result and verify the full behavior: the controls work.
**Expected Result:** The controls work — they are applied, delivered exactly as documented.
**Priority:** Medium

### TC-SA-VN-03-017 — Playback status
**Type:** Positive
**Covers:** 3.3 → Playback status: the status of the playback
**Preconditions:** A Super Admin account is active; a note is playing.
**Steps:**
1. As a Super Admin, view the playback status.
2. Observe the result and verify the full behavior: the status is shown.
**Expected Result:** The status is shown — it reflects the state, delivered exactly as documented.
**Priority:** Low

### TC-SA-VN-03-018 — Playback history
**Type:** Positive
**Covers:** 3.3 → Playback history: the history of the playbacks
**Preconditions:** A Super Admin account is active; playbacks exist.
**Steps:**
1. As a Super Admin, open the playback history.
2. Observe the result and verify the full behavior: the playbacks are listed.
**Expected Result:** The history is shown — the playbacks are listed, delivered exactly as documented.
**Priority:** Low

### TC-SA-VN-03-019 — Playback log
**Type:** Positive
**Covers:** 3.3 → Playback log: the log of the playbacks
**Preconditions:** A Super Admin account is active; playback actions exist.
**Steps:**
1. As a Super Admin, open the playback log.
2. Observe the result and verify the full behavior: the actions are listed.
**Expected Result:** The log is shown — the actions are listed, delivered exactly as documented.
**Priority:** Low

### TC-SA-VN-03-020 — Rule: a playback without a note cannot be started
**Type:** Negative
**Covers:** 3.3 → Rule: a playback without a note cannot be started
**Preconditions:** A Super Admin account is active; no note exists.
**Steps:**
1. As a learner, attempt to start the playback without a note.
2. Observe the result and verify the full behavior: the playback is blocked.
**Expected Result:** The playback is blocked — the note precondition is enforced, delivered exactly as documented.
**Priority:** High

### TC-SA-VN-03-021 — Rule: playback actions are audit-logged
**Type:** Positive
**Covers:** 3.3 → Audit logging of note playback
**Preconditions:** A Super Admin account is active; the audit log is accessible.
**Steps:**
1. As a Super Admin, enable the playback and save.
2. Open the audit log.
3. Observe the result and verify the full behavior: the action is recorded with the actor and timestamp.
**Expected Result:** The action is audit-logged — the actor and timestamp are recorded, delivered exactly as documented.
**Priority:** High

### TC-SA-VN-03-022 — Retention enablement
**Type:** Positive
**Covers:** 3.4 → Retention enablement: the enablement of the note retention
**Preconditions:** A Super Admin account is active.
**Steps:**
1. As a Super Admin, enable the note retention and save.
2. Observe the result and verify the full behavior: the retention is enabled.
**Expected Result:** The enablement works — the retention is enabled, delivered exactly as documented.
**Priority:** High

### TC-SA-VN-03-023 — Retention period
**Type:** Positive
**Covers:** 3.4 → Retention period: the period of the retention
**Preconditions:** A Super Admin account is active; the retention is enabled.
**Steps:**
1. As a Super Admin, set the retention period and save.
2. Observe the result and verify the full behavior: the period is applied.
**Expected Result:** The period is set — it is applied, delivered exactly as documented.
**Priority:** High

### TC-SA-VN-03-024 — Retention status
**Type:** Positive
**Covers:** 3.4 → Retention status: the status of the retention
**Preconditions:** A Super Admin account is active; a note is retained.
**Steps:**
1. As a Super Admin, view the retention status.
2. Observe the result and verify the full behavior: the status is shown.
**Expected Result:** The status is shown — it reflects the state, delivered exactly as documented.
**Priority:** Low

### TC-SA-VN-03-025 — Retention expiry
**Type:** Positive
**Covers:** 3.4 → Retention expiry: the expiry of the retention
**Preconditions:** A Super Admin account is active; a note is retained.
**Steps:**
1. As a Super Admin, view the retention expiry.
2. Observe the result and verify the full behavior: the expiry is shown.
**Expected Result:** The expiry is shown — it is accurate, delivered exactly as documented.
**Priority:** Medium

### TC-SA-VN-03-026 — Retention log
**Type:** Positive
**Covers:** 3.4 → Retention log: the log of the retentions
**Preconditions:** A Super Admin account is active; retention actions exist.
**Steps:**
1. As a Super Admin, open the retention log.
2. Observe the result and verify the full behavior: the actions are listed.
**Expected Result:** The log is shown — the actions are listed, delivered exactly as documented.
**Priority:** Low

### TC-SA-VN-03-027 — Rule: a note past the retention period is expired
**Type:** Positive
**Covers:** 3.4 → Rule: a note past the retention period is expired
**Preconditions:** A Super Admin account is active; a note is past the retention period.
**Steps:**
1. As a Super Admin, open the note.
2. Observe the result and verify the full behavior: the note is shown as expired.
**Expected Result:** The note is expired — it is shown, delivered exactly as documented.
**Priority:** High

### TC-SA-VN-03-028 — Rule: retention actions are audit-logged
**Type:** Positive
**Covers:** 3.4 → Audit logging of note retention
**Preconditions:** A Super Admin account is active; the audit log is accessible.
**Steps:**
1. As a Super Admin, enable the retention and save.
2. Open the audit log.
3. Observe the result and verify the full behavior: the action is recorded with the actor and timestamp.
**Expected Result:** The action is audit-logged — the actor and timestamp are recorded, delivered exactly as documented.
**Priority:** High

### TC-SA-VN-03-029 — Deletion enablement
**Type:** Positive
**Covers:** 3.5 → Deletion enablement: the enablement of the note deletion
**Preconditions:** A Super Admin account is active.
**Steps:**
1. As a Super Admin, enable the note deletion and save.
2. Observe the result and verify the full behavior: the deletion is enabled.
**Expected Result:** The enablement works — the deletion is enabled, delivered exactly as documented.
**Priority:** High

### TC-SA-VN-03-030 — Deletion scope
**Type:** Positive
**Covers:** 3.5 → Deletion scope: the scope of the deletion
**Preconditions:** A Super Admin account is active; the deletion is enabled.
**Steps:**
1. As a Super Admin, set the deletion scope and save.
2. Observe the result and verify the full behavior: the scope is applied.
**Expected Result:** The scope is set — it is applied, delivered exactly as documented.
**Priority:** High

### TC-SA-VN-03-031 — Deletion confirmation
**Type:** Positive
**Covers:** 3.5 → Deletion confirmation: the confirmation of the deletion
**Preconditions:** A Super Admin account is active; a note exists.
**Steps:**
1. As a Super Admin, delete a note and confirm.
2. Observe the result and verify the full behavior: the confirmation is required.
**Expected Result:** The confirmation works — it is required, delivered exactly as documented.
**Priority:** High

### TC-SA-VN-03-032 — Deletion status
**Type:** Positive
**Covers:** 3.5 → Deletion status: the status of the deletion
**Preconditions:** A Super Admin account is active; a note is deleted.
**Steps:**
1. As a Super Admin, view the deletion status.
2. Observe the result and verify the full behavior: the status is shown.
**Expected Result:** The status is shown — it reflects the state, delivered exactly as documented.
**Priority:** Low

### TC-SA-VN-03-033 — Deletion log
**Type:** Positive
**Covers:** 3.5 → Deletion log: the log of the deletions
**Preconditions:** A Super Admin account is active; deletions exist.
**Steps:**
1. As a Super Admin, open the deletion log.
2. Observe the result and verify the full behavior: the deletions are listed.
**Expected Result:** The log is shown — the deletions are listed, delivered exactly as documented.
**Priority:** Low

### TC-SA-VN-03-034 — Rule: a deletion without a note cannot be performed
**Type:** Negative
**Covers:** 3.5 → Rule: a deletion without a note cannot be performed
**Preconditions:** A Super Admin account is active; no note exists.
**Steps:**
1. As a Super Admin, attempt to perform the deletion without a note.
2. Observe the result and verify the full behavior: the deletion is blocked.
**Expected Result:** The deletion is blocked — the note precondition is enforced, delivered exactly as documented.
**Priority:** High

### TC-SA-VN-03-035 — Rule: deletion actions are audit-logged
**Type:** Positive
**Covers:** 3.5 → Audit logging of note deletion
**Preconditions:** A Super Admin account is active; the audit log is accessible.
**Steps:**
1. As a Super Admin, delete a note and save.
2. Open the audit log.
3. Observe the result and verify the full behavior: the action is recorded with the actor and timestamp.
**Expected Result:** The action is audit-logged — the actor and timestamp are recorded, delivered exactly as documented.
**Priority:** High
