# 4. Communication Settings — Test Cases

User Type: **Super Administrator**
Source: *Mi Digital Academy - Education CRM Features Document*
Spec: communication_settings.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 |
|---------|--------------------|----------|
| 4.1 Collaboration Notifications | Notification types | TC-SA-PS-04-001 |
| 4.1 Collaboration Notifications | Notification triggers | TC-SA-PS-04-002 |
| 4.1 Collaboration Notifications | Notification channels | TC-SA-PS-04-003 |
| 4.1 Collaboration Notifications | Notification preferences | TC-SA-PS-04-004 |
| 4.1 Collaboration Notifications | Notification log | TC-SA-PS-04-005 |
| 4.1 Collaboration Notifications | Rule: a notification without a channel is not sent | TC-SA-PS-04-006 |
| 4.1 Collaboration Notifications | Rule: notification actions are audit-logged | TC-SA-PS-04-007 |
| 4.2 Communication Channels | Channel definition | TC-SA-PS-04-008 |
| 4.2 Communication Channels | Channel enablement | TC-SA-PS-04-009 |
| 4.2 Communication Channels | Channel permissions | TC-SA-PS-04-010 |
| 4.2 Communication Channels | Channel routing | TC-SA-PS-04-011 |
| 4.2 Communication Channels | Channel status | TC-SA-PS-04-012 |
| 4.2 Communication Channels | Rule: a message on an inactive channel is not delivered | TC-SA-PS-04-013 |
| 4.2 Communication Channels | Rule: channel actions are audit-logged | TC-SA-PS-04-014 |
| 4.3 Privacy and Consent | Consent definition | TC-SA-PS-04-015 |
| 4.3 Privacy and Consent | Consent collection | TC-SA-PS-04-016 |
| 4.3 Privacy and Consent | Consent status | TC-SA-PS-04-017 |
| 4.3 Privacy and Consent | Data visibility | TC-SA-PS-04-018 |
| 4.3 Privacy and Consent | Consent log | TC-SA-PS-04-019 |
| 4.3 Privacy and Consent | Rule: data is not visible without a granted consent | TC-SA-PS-04-020 |
| 4.3 Privacy and Consent | Rule: consent actions are audit-logged | TC-SA-PS-04-021 |
| 4.4 Communication Audit | Audit scope | TC-SA-PS-04-022 |
| 4.4 Communication Audit | Audit events | TC-SA-PS-04-023 |
| 4.4 Communication Audit | Audit filters | TC-SA-PS-04-024 |
| 4.4 Communication Audit | Audit export | TC-SA-PS-04-025 |
| 4.4 Communication Audit | Audit retention | TC-SA-PS-04-026 |
| 4.4 Communication Audit | Rule: an audit with no events shows an empty state | TC-SA-PS-04-027 |
| 4.4 Communication Audit | Rule: audit actions are audit-logged | TC-SA-PS-04-028 |

### TC-SA-PS-04-001 — Notification types
**Type:** Positive
**Covers:** 4.1 → Notification types: the types of collaboration notifications
**Preconditions:** A Super Admin account is active.
**Steps:**
1. As a Super Admin, open the collaboration notifications.
2. Observe the result and verify the full behavior: the notification types are listed.
**Expected Result:** The types are shown — they are listed, delivered exactly as documented.
**Priority:** High

### TC-SA-PS-04-002 — Notification triggers
**Type:** Positive
**Covers:** 4.1 → Notification triggers: the triggers for the notifications
**Preconditions:** A Super Admin account is active; a notification type exists.
**Steps:**
1. As a Super Admin, set the trigger and save.
2. Observe the result and verify the full behavior: the trigger is shown.
**Expected Result:** The trigger is set — it is shown, delivered exactly as documented.
**Priority:** High

### TC-SA-PS-04-003 — Notification channels
**Type:** Positive
**Covers:** 4.1 → Notification channels: the channels for the notifications
**Preconditions:** A Super Admin account is active; a notification type exists.
**Steps:**
1. As a Super Admin, set the channels and save.
2. Observe the result and verify the full behavior: the channels are shown.
**Expected Result:** The channels are set — they are shown, delivered exactly as documented.
**Priority:** High

### TC-SA-PS-04-004 — Notification preferences
**Type:** Positive
**Covers:** 4.1 → Notification preferences: the preferences per user
**Preconditions:** A Super Admin account is active; a user exists.
**Steps:**
1. As a user, set the notification preferences.
2. Observe the result and verify the full behavior: the preferences are saved.
**Expected Result:** The preferences are saved — they are applied, delivered exactly as documented.
**Priority:** Medium

### TC-SA-PS-04-005 — Notification log
**Type:** Positive
**Covers:** 4.1 → Notification log: the log of the sent notifications
**Preconditions:** A Super Admin account is active; notifications have been sent.
**Steps:**
1. As a Super Admin, open the notification log.
2. Observe the result and verify the full behavior: the sent notifications are listed.
**Expected Result:** The log is shown — the notifications are listed, delivered exactly as documented.
**Priority:** Low

### TC-SA-PS-04-006 — Rule: a notification without a channel is not sent
**Type:** Negative
**Covers:** 4.1 → Rule: a notification without a channel is not sent
**Preconditions:** A Super Admin account is active; a notification has no channel.
**Steps:**
1. As a Super Admin, trigger the notification.
2. Observe the result and verify the full behavior: the notification is not sent.
**Expected Result:** The notification is not sent — the channel precondition is enforced, delivered exactly as documented.
**Priority:** High

### TC-SA-PS-04-007 — Rule: notification actions are audit-logged
**Type:** Positive
**Covers:** 4.1 → Audit logging of collaboration notifications
**Preconditions:** A Super Admin account is active; the audit log is accessible.
**Steps:**
1. As a Super Admin, set the trigger 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-PS-04-008 — Channel definition
**Type:** Positive
**Covers:** 4.2 → Channel definition: the definition of a communication channel
**Preconditions:** A Super Admin account is active.
**Steps:**
1. As a Super Admin, define a communication channel and save.
2. Observe the result and verify the full behavior: the channel is defined and listed.
**Expected Result:** The definition works — the channel is listed, delivered exactly as documented.
**Priority:** High

### TC-SA-PS-04-009 — Channel enablement
**Type:** Positive
**Covers:** 4.2 → Channel enablement: the channel toggled active or inactive
**Preconditions:** A Super Admin account is active; a channel exists.
**Steps:**
1. As a Super Admin, activate the channel.
2. Observe the result and verify the full behavior: the channel is active.
**Expected Result:** The enablement works — the channel is active, delivered exactly as documented.
**Priority:** Medium

### TC-SA-PS-04-010 — Channel permissions
**Type:** Positive
**Covers:** 4.2 → Channel permissions: the permissions per channel
**Preconditions:** A Super Admin account is active; a channel exists.
**Steps:**
1. As a Super Admin, set the permissions and save.
2. Observe the result and verify the full behavior: the permissions are applied.
**Expected Result:** The permissions are set — they are applied, delivered exactly as documented.
**Priority:** High

### TC-SA-PS-04-011 — Channel routing
**Type:** Positive
**Covers:** 4.2 → Channel routing: the routing of the messages
**Preconditions:** A Super Admin account is active; a channel exists.
**Steps:**
1. As a Super Admin, set the routing and save.
2. Observe the result and verify the full behavior: the messages are routed to the recipients.
**Expected Result:** The routing works — the messages are routed, delivered exactly as documented.
**Priority:** High

### TC-SA-PS-04-012 — Channel status
**Type:** Positive
**Covers:** 4.2 → Channel status: the status of the channel
**Preconditions:** A Super Admin account is active; a channel exists.
**Steps:**
1. As a Super Admin, view the channel 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-PS-04-013 — Rule: a message on an inactive channel is not delivered
**Type:** Negative
**Covers:** 4.2 → Rule: a message on an inactive channel is not delivered
**Preconditions:** A Super Admin account is active; a channel is inactive.
**Steps:**
1. As a user, send a message on the channel.
2. Observe the result and verify the full behavior: the message is not delivered.
**Expected Result:** The message is not delivered — the channel is inactive, delivered exactly as documented.
**Priority:** High

### TC-SA-PS-04-014 — Rule: channel actions are audit-logged
**Type:** Positive
**Covers:** 4.2 → Audit logging of communication channels
**Preconditions:** A Super Admin account is active; the audit log is accessible.
**Steps:**
1. As a Super Admin, set the permissions 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-PS-04-015 — Consent definition
**Type:** Positive
**Covers:** 4.3 → Consent definition: the definition of a consent
**Preconditions:** A Super Admin account is active.
**Steps:**
1. As a Super Admin, define a consent and save.
2. Observe the result and verify the full behavior: the consent is defined and listed.
**Expected Result:** The definition works — the consent is listed, delivered exactly as documented.
**Priority:** High

### TC-SA-PS-04-016 — Consent collection
**Type:** Positive
**Covers:** 4.3 → Consent collection: the collection of the consent
**Preconditions:** A Super Admin account is active; a consent exists; a family exists.
**Steps:**
1. As a family member, grant the consent.
2. Observe the result and verify the full behavior: the consent is recorded.
**Expected Result:** The collection works — the consent is recorded, delivered exactly as documented.
**Priority:** High

### TC-SA-PS-04-017 — Consent status
**Type:** Positive
**Covers:** 4.3 → Consent status: the status of the consent
**Preconditions:** A Super Admin account is active; a consent has been granted.
**Steps:**
1. As a Super Admin, view the consent 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:** Medium

### TC-SA-PS-04-018 — Data visibility
**Type:** Positive
**Covers:** 4.3 → Data visibility: the visibility of the data per user
**Preconditions:** A Super Admin account is active; a consent exists.
**Steps:**
1. As a Super Admin, set the data visibility and save.
2. Observe the result and verify the full behavior: the visibility is applied.
**Expected Result:** The visibility is set — it is applied, delivered exactly as documented.
**Priority:** High

### TC-SA-PS-04-019 — Consent log
**Type:** Positive
**Covers:** 4.3 → Consent log: the log of the consents
**Preconditions:** A Super Admin account is active; consents have been collected.
**Steps:**
1. As a Super Admin, open the consent log.
2. Observe the result and verify the full behavior: the past consents are listed.
**Expected Result:** The log is shown — the consents are listed, delivered exactly as documented.
**Priority:** Low

### TC-SA-PS-04-020 — Rule: data is not visible without a granted consent
**Type:** Negative
**Covers:** 4.3 → Rule: data is not visible without a granted consent
**Preconditions:** A Super Admin account is active; a consent is not granted.
**Steps:**
1. As a user, attempt to view the data.
2. Observe the result and verify the full behavior: the data is not visible.
**Expected Result:** The data is not visible — the consent is not granted, delivered exactly as documented.
**Priority:** High

### TC-SA-PS-04-021 — Rule: consent actions are audit-logged
**Type:** Positive
**Covers:** 4.3 → Audit logging of privacy and consent
**Preconditions:** A Super Admin account is active; the audit log is accessible.
**Steps:**
1. As a Super Admin, set the data visibility 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-PS-04-022 — Audit scope
**Type:** Positive
**Covers:** 4.4 → Audit scope: the scope of the communication audit
**Preconditions:** A Super Admin account is active.
**Steps:**
1. As a Super Admin, set the audit 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-PS-04-023 — Audit events
**Type:** Positive
**Covers:** 4.4 → Audit events: the events in the audit
**Preconditions:** A Super Admin account is active; communication events exist.
**Steps:**
1. As a Super Admin, open the communication audit.
2. Observe the result and verify the full behavior: the events are listed.
**Expected Result:** The events are shown — they are listed, delivered exactly as documented.
**Priority:** High

### TC-SA-PS-04-024 — Audit filters
**Type:** Positive
**Covers:** 4.4 → Audit filters: the filters for the audit
**Preconditions:** A Super Admin account is active; audit events exist.
**Steps:**
1. As a Super Admin, apply a filter.
2. Observe the result and verify the full behavior: the results are narrowed.
**Expected Result:** The filter works — the results are narrowed, delivered exactly as documented.
**Priority:** Medium

### TC-SA-PS-04-025 — Audit export
**Type:** Positive
**Covers:** 4.4 → Audit export: the export of the audit
**Preconditions:** A Super Admin account is active; audit events exist.
**Steps:**
1. As a Super Admin, export the audit.
2. Open the exported file.
3. Observe the result and verify the full behavior: the events are present and correct.
**Expected Result:** The export works — the file contains the events, delivered exactly as documented.
**Priority:** High

### TC-SA-PS-04-026 — Audit retention
**Type:** Positive
**Covers:** 4.4 → Audit retention: the retention of the audit records
**Preconditions:** A Super Admin account is active.
**Steps:**
1. As a Super Admin, set the retention period and save.
2. Observe the result and verify the full behavior: the retention is applied.
**Expected Result:** The retention is set — it is applied, delivered exactly as documented.
**Priority:** Medium

### TC-SA-PS-04-027 — Rule: an audit with no events shows an empty state
**Type:** Positive
**Covers:** 4.4 → Rule: an audit with no events shows an empty state
**Preconditions:** A Super Admin account is active; the audit has no events.
**Steps:**
1. As a Super Admin, open the communication audit.
2. Observe the result and verify the full behavior: an empty state is shown.
**Expected Result:** The empty state is shown — it is displayed, delivered exactly as documented.
**Priority:** Low

### TC-SA-PS-04-028 — Rule: audit actions are audit-logged
**Type:** Positive
**Covers:** 4.4 → Audit logging of communication audit
**Preconditions:** A Super Admin account is active; the audit log is accessible.
**Steps:**
1. As a Super Admin, export the audit.
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
