# 3. Peer Comparison & Collaboration — Test Cases

User Type: **Student**
Source: *Mi Digital Academy - Education CRM Features Document*
Spec: peer_comparison.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 |
|---------|--------------------|----------|
| 3.1 Anonymous Peer Comparison | Percentile rank vs peers (anonymous) | TC-ST-10-03-001 |
| 3.1 Anonymous Peer Comparison | Topic-wise accuracy vs the peer average | TC-ST-10-03-002 |
| 3.1 Anonymous Peer Comparison | Historical performance trend vs peers | TC-ST-10-03-003 |
| 3.1 Anonymous Peer Comparison | Comparison per subject | TC-ST-10-03-004 |
| 3.1 Anonymous Peer Comparison | Comparison updated as new data is available | TC-ST-10-03-005 |
| 3.1 Anonymous Peer Comparison | Comparison available on web and mobile | TC-ST-10-03-006 |
| 3.1 Anonymous Peer Comparison | Comparison event logging (viewed) | TC-ST-10-03-007 |
| 3.1 Anonymous Peer Comparison | Audit logging of the anonymous peer comparison | TC-ST-10-03-008 |
| 3.1 Anonymous Peer Comparison | Rule: The comparison is anonymous; no individual peer is identified. | TC-ST-10-03-001 |
| 3.1 Anonymous Peer Comparison | Rule: The percentile rank is computed against the peer group. | TC-ST-10-03-002 |
| 3.1 Anonymous Peer Comparison | Rule: Topic-wise accuracy is compared with the peer average. | TC-ST-10-03-003 |
| 3.1 Anonymous Peer Comparison | Rule: The comparison updates as new data is available. | TC-ST-10-03-004 |
| 3.1 Anonymous Peer Comparison | Rule: Comparison events (viewed) are logged with the subject and the timestamp. | TC-ST-10-03-005 |
| 3.1 Anonymous Peer Comparison | Rule: The anonymous peer comparison is audit-logged with the account, the subject, and the timestamp. | TC-ST-10-03-006 |
| 3.2 Collaborative Problem Solving | Post a problem to a forum or study group | TC-ST-10-03-009 |
| 3.2 Collaborative Problem Solving | Peers contribute solutions and explanations | TC-ST-10-03-010 |
| 3.2 Collaborative Problem Solving | Mark a solution as helpful | TC-ST-10-03-011 |
| 3.2 Collaborative Problem Solving | Best solutions highlighted | TC-ST-10-03-012 |
| 3.2 Collaborative Problem Solving | Problem status (open, solved) | TC-ST-10-03-013 |
| 3.2 Collaborative Problem Solving | Solution event logging (posted, solved, marked helpful) | TC-ST-10-03-014 |
| 3.2 Collaborative Problem Solving | Audit logging of the collaborative problem solving | TC-ST-10-03-015 |
| 3.2 Collaborative Problem Solving | Rule: A problem can be posted to a forum or a study group. | TC-ST-10-03-009 |
| 3.2 Collaborative Problem Solving | Rule: Peers contribute solutions and explanations. | TC-ST-10-03-010 |
| 3.2 Collaborative Problem Solving | Rule: Marking a solution helpful is recorded and ranks the solutions. | TC-ST-10-03-011 |
| 3.2 Collaborative Problem Solving | Rule: A problem is "solved" when a solution is accepted. | TC-ST-10-03-012 |
| 3.2 Collaborative Problem Solving | Rule: Solution events (posted, solved, marked helpful) are logged with the problem and the timestamp. | TC-ST-10-03-013 |
| 3.2 Collaborative Problem Solving | Rule: The collaborative problem solving is audit-logged with the account, the problem, and the timestamp. | TC-ST-10-03-014 |
| 3.3 Sharing Study Resources | Share notes, flashcard decks, mind maps, and links | TC-ST-10-03-016 |
| 3.3 Sharing Study Resources | Shared resources appear in the community library or group | TC-ST-10-03-017 |
| 3.3 Sharing Study Resources | Peers can use, like, and comment on a shared resource | TC-ST-10-03-018 |
| 3.3 Sharing Study Resources | Share to a specific group or the public library | TC-ST-10-03-019 |
| 3.3 Sharing Study Resources | Unshare a resource | TC-ST-10-03-020 |
| 3.3 Sharing Study Resources | Share event logging (shared, unshared, liked, commented) | TC-ST-10-03-021 |
| 3.3 Sharing Study Resources | Audit logging of the sharing study resources | TC-ST-10-03-022 |
| 3.3 Sharing Study Resources | Rule: A resource can be shared to a group or the public library. | TC-ST-10-03-016 |
| 3.3 Sharing Study Resources | Rule: Peers can use, like, and comment on a shared resource. | TC-ST-10-03-017 |
| 3.3 Sharing Study Resources | Rule: Unsharing removes the resource from the shared location. | TC-ST-10-03-018 |
| 3.3 Sharing Study Resources | Rule: Sharing is recorded for recognition. | TC-ST-10-03-019 |
| 3.3 Sharing Study Resources | Rule: Share events (shared, unshared, liked, commented) are logged with the resource and the timestamp. | TC-ST-10-03-020 |
| 3.3 Sharing Study Resources | Rule: The sharing study resources is audit-logged with the account, the resource, and the timestamp. | TC-ST-10-03-021 |

## 3.1 Anonymous Peer Comparison

### TC-ST-10-03-001 — Percentile rank vs peers (anonymous)
**Type:** Positive
**Covers:** 3.1 → Percentile rank vs peers (anonymous); Rule: The comparison is anonymous; no individual peer is identified.
**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: Percentile rank vs peers (anonymous).
2. Observe the result and verify the full behavior: Percentile rank vs peers (anonymous).
**Expected Result:** Percentile rank vs peers (anonymous) — delivered exactly as documented.
**Priority:** Critical

### TC-ST-10-03-002 — Topic-wise accuracy vs the peer average
**Type:** Positive
**Covers:** 3.1 → Topic-wise accuracy vs the peer average; Rule: The percentile rank is computed against the peer group.
**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: Topic-wise accuracy vs the peer average.
2. Observe the result and verify the full behavior: Topic-wise accuracy vs the peer average.
**Expected Result:** Topic-wise accuracy vs the peer average — delivered exactly as documented.
**Priority:** High

### TC-ST-10-03-003 — Historical performance trend vs peers
**Type:** Positive
**Covers:** 3.1 → Historical performance trend vs peers; Rule: Topic-wise accuracy is compared with the peer average.
**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: Historical performance trend vs peers.
2. Observe the result and verify the full behavior: Historical performance trend vs peers.
**Expected Result:** Historical performance trend vs peers — delivered exactly as documented.
**Priority:** High

### TC-ST-10-03-004 — Comparison per subject
**Type:** Positive
**Covers:** 3.1 → Comparison per subject; Rule: The comparison updates as new data is 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: Comparison per subject.
2. Observe the result and verify the full behavior: Comparison per subject.
**Expected Result:** Comparison per subject — delivered exactly as documented.
**Priority:** High

### TC-ST-10-03-005 — Comparison updated as new data is available
**Type:** Positive
**Covers:** 3.1 → Comparison updated as new data is available; Rule: Comparison events (viewed) are logged with the subject 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 updated as new data is available.
2. Observe the result and verify the full behavior: Comparison updated as new data is available.
**Expected Result:** Comparison updated as new data is available — delivered exactly as documented.
**Priority:** High

### TC-ST-10-03-006 — Comparison available on web and mobile
**Type:** Positive
**Covers:** 3.1 → Comparison available on web and mobile; Rule: The anonymous peer comparison is audit-logged with the account, the subject, 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 available on web and mobile.
2. Observe the result and verify the full behavior: Comparison available on web and mobile.
**Expected Result:** Comparison available on web and mobile — delivered exactly as documented.
**Priority:** High

### TC-ST-10-03-007 — Comparison event logging (viewed)
**Type:** Positive
**Covers:** 3.1 → Comparison event logging (viewed)
**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 event logging (viewed).
2. Observe the result and verify the full behavior: Comparison event logging (viewed).
**Expected Result:** Comparison event logging (viewed) — delivered exactly as documented.
**Priority:** High

### TC-ST-10-03-008 — Audit logging of the anonymous peer comparison
**Type:** Positive
**Covers:** 3.1 → Audit logging of the anonymous peer comparison
**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 anonymous peer comparison.
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

## 3.2 Collaborative Problem Solving

### TC-ST-10-03-009 — Post a problem to a forum or study group
**Type:** Positive
**Covers:** 3.2 → Post a problem to a forum or study group; Rule: A problem can be posted to a forum or a study group.
**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: Post a problem to a forum or study group.
2. Observe the result and verify the full behavior: Post a problem to a forum or study group.
**Expected Result:** Post a problem to a forum or study group — delivered exactly as documented.
**Priority:** Critical

### TC-ST-10-03-010 — Peers contribute solutions and explanations
**Type:** Positive
**Covers:** 3.2 → Peers contribute solutions and explanations; Rule: Peers contribute solutions and explanations.
**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: Peers contribute solutions and explanations.
2. Observe the result and verify the full behavior: Peers contribute solutions and explanations.
**Expected Result:** Peers contribute solutions and explanations — delivered exactly as documented.
**Priority:** High

### TC-ST-10-03-011 — Mark a solution as helpful
**Type:** Positive
**Covers:** 3.2 → Mark a solution as helpful; Rule: Marking a solution helpful is recorded and ranks the solutions.
**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 a solution as helpful.
2. Observe the result and verify the full behavior: Mark a solution as helpful.
**Expected Result:** Mark a solution as helpful — delivered exactly as documented.
**Priority:** High

### TC-ST-10-03-012 — Best solutions highlighted
**Type:** Positive
**Covers:** 3.2 → Best solutions highlighted; Rule: A problem is "solved" when a solution is accepted.
**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: Best solutions highlighted.
2. Observe the result and verify the full behavior: Best solutions highlighted.
**Expected Result:** Best solutions highlighted — delivered exactly as documented.
**Priority:** High

### TC-ST-10-03-013 — Problem status (open, solved)
**Type:** Positive
**Covers:** 3.2 → Problem status (open, solved); Rule: Solution events (posted, solved, marked helpful) are logged with the problem 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: Problem status (open.
2. Observe the result and verify the full behavior: Problem status (open, solved).
**Expected Result:** Problem status (open, solved) — delivered exactly as documented.
**Priority:** High

### TC-ST-10-03-014 — Solution event logging (posted, solved, marked helpful)
**Type:** Positive
**Covers:** 3.2 → Solution event logging (posted, solved, marked helpful); Rule: The collaborative problem solving is audit-logged with the account, the problem, 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: Solution event logging (posted.
2. Observe the result and verify the full behavior: Solution event logging (posted, solved, marked helpful).
**Expected Result:** Solution event logging (posted, solved, marked helpful) — delivered exactly as documented.
**Priority:** High

### TC-ST-10-03-015 — Audit logging of the collaborative problem solving
**Type:** Positive
**Covers:** 3.2 → Audit logging of the collaborative problem solving
**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 collaborative problem solving.
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

## 3.3 Sharing Study Resources

### TC-ST-10-03-016 — Share notes, flashcard decks, mind maps, and links
**Type:** Positive
**Covers:** 3.3 → Share notes, flashcard decks, mind maps, and links; Rule: A resource can be shared to a group or the public library.
**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: Share notes.
2. Observe the result and verify the full behavior: Share notes, flashcard decks, mind maps, and links.
**Expected Result:** Share notes, flashcard decks, mind maps, and links — delivered exactly as documented.
**Priority:** Critical

### TC-ST-10-03-017 — Shared resources appear in the community library or group
**Type:** Positive
**Covers:** 3.3 → Shared resources appear in the community library or group; Rule: Peers can use, like, and comment on a shared resource.
**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: Shared resources appear in the community library or group.
2. Observe the result and verify the full behavior: Shared resources appear in the community library or group.
**Expected Result:** Shared resources appear in the community library or group — delivered exactly as documented.
**Priority:** High

### TC-ST-10-03-018 — Peers can use, like, and comment on a shared resource
**Type:** Positive
**Covers:** 3.3 → Peers can use, like, and comment on a shared resource; Rule: Unsharing removes the resource from the shared location.
**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: Peers can use.
2. Observe the result and verify the full behavior: Peers can use, like, and comment on a shared resource.
**Expected Result:** Peers can use, like, and comment on a shared resource — delivered exactly as documented.
**Priority:** High

### TC-ST-10-03-019 — Share to a specific group or the public library
**Type:** Positive
**Covers:** 3.3 → Share to a specific group or the public library; Rule: Sharing is recorded for recognition.
**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: Share to a specific group or the public library.
2. Observe the result and verify the full behavior: Share to a specific group or the public library.
**Expected Result:** Share to a specific group or the public library — delivered exactly as documented.
**Priority:** High

### TC-ST-10-03-020 — Unshare a resource
**Type:** Positive
**Covers:** 3.3 → Unshare a resource; Rule: Share events (shared, unshared, liked, commented) 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: Unshare a resource.
2. Observe the result and verify the full behavior: Unshare a resource.
**Expected Result:** Unshare a resource — delivered exactly as documented.
**Priority:** High

### TC-ST-10-03-021 — Share event logging (shared, unshared, liked, commented)
**Type:** Positive
**Covers:** 3.3 → Share event logging (shared, unshared, liked, commented); Rule: The sharing study 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: Share event logging (shared.
2. Observe the result and verify the full behavior: Share event logging (shared, unshared, liked, commented).
**Expected Result:** Share event logging (shared, unshared, liked, commented) — delivered exactly as documented.
**Priority:** High

### TC-ST-10-03-022 — Audit logging of the sharing study resources
**Type:** Positive
**Covers:** 3.3 → Audit logging of the sharing study 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 sharing study 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
