# 1. Referred Customers & Renewals — Test Cases

User Type: **Affiliate**
Source: *Mi Digital Academy - Education CRM Features Document*
Spec: referred_customers_renewals.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 |
|---------|--------------------|----------|
| 1.1 | List of all referred customers | TC-AF-4-01-001 |
| 1.1 | Customer, course, referral date, and status per entry | TC-AF-4-01-002 |
| 1.1 | Search referred customers | TC-AF-4-01-003 |
| 1.1 | Filter by course or status | TC-AF-4-01-004 |
| 1.1 | View a referred customer's details | TC-AF-4-01-005 |
| 1.1 | Referred customers available on web and mobile | TC-AF-4-01-006 |
| 1.1 | Customers event logging (viewed) | TC-AF-4-01-007 |
| 1.1 | Audit logging of the view all referred customers | TC-AF-4-01-008 |
| 1.1 | Rule: The list shows all referred customers. | TC-AF-4-01-001 |
| 1.1 | Rule: The list can be searched and filtered. | TC-AF-4-01-002 |
| 1.1 | Rule: Customers events (viewed) are logged with the account and the timestamp. | TC-AF-4-01-003 |
| 1.1 | Rule: The view all referred customers is audit-logged with the account and the timestamp. | TC-AF-4-01-004 |
| 1.2 | List of referred customer renewals | TC-AF-4-01-009 |
| 1.2 | Renewal date per renewal | TC-AF-4-01-010 |
| 1.2 | Recurring commission per renewal | TC-AF-4-01-011 |
| 1.2 | Renewal status (renewed, lapsed) | TC-AF-4-01-012 |
| 1.2 | Renewals by period | TC-AF-4-01-013 |
| 1.2 | Renewals available on web and mobile | TC-AF-4-01-014 |
| 1.2 | Renewals event logging (viewed) | TC-AF-4-01-015 |
| 1.2 | Audit logging of the track subscription renewals from referrals | TC-AF-4-01-016 |
| 1.2 | Rule: The renewals show date, recurring commission, and status. | TC-AF-4-01-009 |
| 1.2 | Rule: The renewals are shown by period. | TC-AF-4-01-010 |
| 1.2 | Rule: Renewals events (viewed) are logged with the account and the timestamp. | TC-AF-4-01-011 |
| 1.2 | Rule: The track subscription renewals from referrals is audit-logged with the account and the timestamp. | TC-AF-4-01-012 |
| 1.3 | Recent activity per referred customer | TC-AF-4-01-017 |
| 1.3 | Course progress per referred customer | TC-AF-4-01-018 |
| 1.3 | Engagement per referred customer | TC-AF-4-01-019 |
| 1.3 | Status changes per referred customer | TC-AF-4-01-020 |
| 1.3 | Activity feed | TC-AF-4-01-021 |
| 1.3 | Activity available on web and mobile | TC-AF-4-01-022 |
| 1.3 | Activity event logging (viewed) | TC-AF-4-01-023 |
| 1.3 | Audit logging of the referred customer activity | TC-AF-4-01-024 |
| 1.3 | Rule: The activity is shown per referred customer. | TC-AF-4-01-017 |
| 1.3 | Rule: The activity feed is displayed. | TC-AF-4-01-018 |
| 1.3 | Rule: Activity events (viewed) are logged with the account and the timestamp. | TC-AF-4-01-019 |
| 1.3 | Rule: The referred customer activity is audit-logged with the account and the timestamp. | TC-AF-4-01-020 |

## 1.1 View All Referred Customers

### TC-AF-4-01-001 — List of all referred customers
**Type:** Positive
**Covers:** 1.1 → List of all referred customers; Rule: The list shows all referred customers.
**Preconditions:** A Affiliate account is active and the Affiliate is in the state required for this behavior.
**Steps:**
1. As a Affiliate, set up the precondition and perform: List of all referred customers.
2. Observe the result and verify the full behavior: List of all referred customers.
**Expected Result:** List of all referred customers — delivered exactly as documented.
**Priority:** Critical

### TC-AF-4-01-002 — Customer, course, referral date, and status per entry
**Type:** Positive
**Covers:** 1.1 → Customer, course, referral date, and status per entry; Rule: The list can be searched and filtered.
**Preconditions:** A Affiliate account is active and the Affiliate is in the state required for this behavior.
**Steps:**
1. As a Affiliate, set up the precondition and perform: Customer, course, referral date, and status per entry.
2. Observe the result and verify the full behavior: Customer, course, referral date, and status per entry.
**Expected Result:** Customer, course, referral date, and status per entry — delivered exactly as documented.
**Priority:** High

### TC-AF-4-01-003 — Search referred customers
**Type:** Positive
**Covers:** 1.1 → Search referred customers; Rule: Customers events (viewed) are logged with the account and the timestamp.
**Preconditions:** A Affiliate account is active and the Affiliate is in the state required for this behavior.
**Steps:**
1. As a Affiliate, set up the precondition and perform: Search referred customers.
2. Observe the result and verify the full behavior: Search referred customers.
**Expected Result:** Search referred customers — delivered exactly as documented.
**Priority:** High

### TC-AF-4-01-004 — Filter by course or status
**Type:** Positive
**Covers:** 1.1 → Filter by course or status; Rule: The view all referred customers is audit-logged with the account and the timestamp.
**Preconditions:** A Affiliate account is active and the Affiliate is in the state required for this behavior.
**Steps:**
1. As a Affiliate, set up the precondition and perform: Filter by course or status.
2. Observe the result and verify the full behavior: Filter by course or status.
**Expected Result:** Filter by course or status — delivered exactly as documented.
**Priority:** High

### TC-AF-4-01-005 — View a referred customer's details
**Type:** Positive
**Covers:** 1.1 → View a referred customer's details
**Preconditions:** A Affiliate account is active and the Affiliate is in the state required for this behavior.
**Steps:**
1. As a Affiliate, set up the precondition and perform: View a referred customer's details.
2. Observe the result and verify the full behavior: View a referred customer's details.
**Expected Result:** View a referred customer's details — delivered exactly as documented.
**Priority:** High

### TC-AF-4-01-006 — Referred customers available on web and mobile
**Type:** Positive
**Covers:** 1.1 → Referred customers available on web and mobile
**Preconditions:** A Affiliate account is active and the Affiliate is in the state required for this behavior.
**Steps:**
1. As a Affiliate, set up the precondition and perform: Referred customers available on web and mobile.
2. Observe the result and verify the full behavior: Referred customers available on web and mobile.
**Expected Result:** Referred customers available on web and mobile — delivered exactly as documented.
**Priority:** High

### TC-AF-4-01-007 — Customers event logging (viewed)
**Type:** Positive
**Covers:** 1.1 → Customers event logging (viewed)
**Preconditions:** A Affiliate account is active and the Affiliate is in the state required for this behavior.
**Steps:**
1. As a Affiliate, set up the precondition and perform: Customers event logging (viewed).
2. Observe the result and verify the full behavior: Customers event logging (viewed).
**Expected Result:** Customers event logging (viewed) — delivered exactly as documented.
**Priority:** High

### TC-AF-4-01-008 — Audit logging of the view all referred customers
**Type:** Positive
**Covers:** 1.1 → Audit logging of the view all referred customers
**Preconditions:** A Affiliate account is active and the Affiliate is in the state required for this behavior.
**Steps:**
1. As a Affiliate, perform the view all referred customers action.
2. Open the audit log and verify the entry for the action.
**Expected Result:** The view all referred customers action is recorded in the audit log with the account and the timestamp.
**Priority:** Critical


## 1.2 Track Subscription Renewals from Referrals

### TC-AF-4-01-009 — List of referred customer renewals
**Type:** Positive
**Covers:** 1.2 → List of referred customer renewals; Rule: The renewals show date, recurring commission, and status.
**Preconditions:** A Affiliate account is active and the Affiliate is in the state required for this behavior.
**Steps:**
1. As a Affiliate, set up the precondition and perform: List of referred customer renewals.
2. Observe the result and verify the full behavior: List of referred customer renewals.
**Expected Result:** List of referred customer renewals — delivered exactly as documented.
**Priority:** Critical

### TC-AF-4-01-010 — Renewal date per renewal
**Type:** Positive
**Covers:** 1.2 → Renewal date per renewal; Rule: The renewals are shown by period.
**Preconditions:** A Affiliate account is active and the Affiliate is in the state required for this behavior.
**Steps:**
1. As a Affiliate, set up the precondition and perform: Renewal date per renewal.
2. Observe the result and verify the full behavior: Renewal date per renewal.
**Expected Result:** Renewal date per renewal — delivered exactly as documented.
**Priority:** High

### TC-AF-4-01-011 — Recurring commission per renewal
**Type:** Positive
**Covers:** 1.2 → Recurring commission per renewal; Rule: Renewals events (viewed) are logged with the account and the timestamp.
**Preconditions:** A Affiliate account is active and the Affiliate is in the state required for this behavior.
**Steps:**
1. As a Affiliate, set up the precondition and perform: Recurring commission per renewal.
2. Observe the result and verify the full behavior: Recurring commission per renewal.
**Expected Result:** Recurring commission per renewal — delivered exactly as documented.
**Priority:** High

### TC-AF-4-01-012 — Renewal status (renewed, lapsed)
**Type:** Positive
**Covers:** 1.2 → Renewal status (renewed, lapsed); Rule: The track subscription renewals from referrals is audit-logged with the account and the timestamp.
**Preconditions:** A Affiliate account is active and the Affiliate is in the state required for this behavior.
**Steps:**
1. As a Affiliate, set up the precondition and perform: Renewal status (renewed, lapsed).
2. Observe the result and verify the full behavior: Renewal status (renewed, lapsed).
**Expected Result:** Renewal status (renewed, lapsed) — delivered exactly as documented.
**Priority:** High

### TC-AF-4-01-013 — Renewals by period
**Type:** Positive
**Covers:** 1.2 → Renewals by period
**Preconditions:** A Affiliate account is active and the Affiliate is in the state required for this behavior.
**Steps:**
1. As a Affiliate, set up the precondition and perform: Renewals by period.
2. Observe the result and verify the full behavior: Renewals by period.
**Expected Result:** Renewals by period — delivered exactly as documented.
**Priority:** High

### TC-AF-4-01-014 — Renewals available on web and mobile
**Type:** Positive
**Covers:** 1.2 → Renewals available on web and mobile
**Preconditions:** A Affiliate account is active and the Affiliate is in the state required for this behavior.
**Steps:**
1. As a Affiliate, set up the precondition and perform: Renewals available on web and mobile.
2. Observe the result and verify the full behavior: Renewals available on web and mobile.
**Expected Result:** Renewals available on web and mobile — delivered exactly as documented.
**Priority:** High

### TC-AF-4-01-015 — Renewals event logging (viewed)
**Type:** Positive
**Covers:** 1.2 → Renewals event logging (viewed)
**Preconditions:** A Affiliate account is active and the Affiliate is in the state required for this behavior.
**Steps:**
1. As a Affiliate, set up the precondition and perform: Renewals event logging (viewed).
2. Observe the result and verify the full behavior: Renewals event logging (viewed).
**Expected Result:** Renewals event logging (viewed) — delivered exactly as documented.
**Priority:** High

### TC-AF-4-01-016 — Audit logging of the track subscription renewals from referrals
**Type:** Positive
**Covers:** 1.2 → Audit logging of the track subscription renewals from referrals
**Preconditions:** A Affiliate account is active and the Affiliate is in the state required for this behavior.
**Steps:**
1. As a Affiliate, perform the track subscription renewals from referrals action.
2. Open the audit log and verify the entry for the action.
**Expected Result:** The track subscription renewals from referrals action is recorded in the audit log with the account and the timestamp.
**Priority:** Critical


## 1.3 Referred Customer Activity

### TC-AF-4-01-017 — Recent activity per referred customer
**Type:** Positive
**Covers:** 1.3 → Recent activity per referred customer; Rule: The activity is shown per referred customer.
**Preconditions:** A Affiliate account is active and the Affiliate is in the state required for this behavior.
**Steps:**
1. As a Affiliate, set up the precondition and perform: Recent activity per referred customer.
2. Observe the result and verify the full behavior: Recent activity per referred customer.
**Expected Result:** Recent activity per referred customer — delivered exactly as documented.
**Priority:** Critical

### TC-AF-4-01-018 — Course progress per referred customer
**Type:** Positive
**Covers:** 1.3 → Course progress per referred customer; Rule: The activity feed is displayed.
**Preconditions:** A Affiliate account is active and the Affiliate is in the state required for this behavior.
**Steps:**
1. As a Affiliate, set up the precondition and perform: Course progress per referred customer.
2. Observe the result and verify the full behavior: Course progress per referred customer.
**Expected Result:** Course progress per referred customer — delivered exactly as documented.
**Priority:** High

### TC-AF-4-01-019 — Engagement per referred customer
**Type:** Positive
**Covers:** 1.3 → Engagement per referred customer; Rule: Activity events (viewed) are logged with the account and the timestamp.
**Preconditions:** A Affiliate account is active and the Affiliate is in the state required for this behavior.
**Steps:**
1. As a Affiliate, set up the precondition and perform: Engagement per referred customer.
2. Observe the result and verify the full behavior: Engagement per referred customer.
**Expected Result:** Engagement per referred customer — delivered exactly as documented.
**Priority:** High

### TC-AF-4-01-020 — Status changes per referred customer
**Type:** Positive
**Covers:** 1.3 → Status changes per referred customer; Rule: The referred customer activity is audit-logged with the account and the timestamp.
**Preconditions:** A Affiliate account is active and the Affiliate is in the state required for this behavior.
**Steps:**
1. As a Affiliate, set up the precondition and perform: Status changes per referred customer.
2. Observe the result and verify the full behavior: Status changes per referred customer.
**Expected Result:** Status changes per referred customer — delivered exactly as documented.
**Priority:** High

### TC-AF-4-01-021 — Activity feed
**Type:** Positive
**Covers:** 1.3 → Activity feed
**Preconditions:** A Affiliate account is active and the Affiliate is in the state required for this behavior.
**Steps:**
1. As a Affiliate, set up the precondition and perform: Activity feed.
2. Observe the result and verify the full behavior: Activity feed.
**Expected Result:** Activity feed — delivered exactly as documented.
**Priority:** High

### TC-AF-4-01-022 — Activity available on web and mobile
**Type:** Positive
**Covers:** 1.3 → Activity available on web and mobile
**Preconditions:** A Affiliate account is active and the Affiliate is in the state required for this behavior.
**Steps:**
1. As a Affiliate, set up the precondition and perform: Activity available on web and mobile.
2. Observe the result and verify the full behavior: Activity available on web and mobile.
**Expected Result:** Activity available on web and mobile — delivered exactly as documented.
**Priority:** High

### TC-AF-4-01-023 — Activity event logging (viewed)
**Type:** Positive
**Covers:** 1.3 → Activity event logging (viewed)
**Preconditions:** A Affiliate account is active and the Affiliate is in the state required for this behavior.
**Steps:**
1. As a Affiliate, set up the precondition and perform: Activity event logging (viewed).
2. Observe the result and verify the full behavior: Activity event logging (viewed).
**Expected Result:** Activity event logging (viewed) — delivered exactly as documented.
**Priority:** High

### TC-AF-4-01-024 — Audit logging of the referred customer activity
**Type:** Positive
**Covers:** 1.3 → Audit logging of the referred customer activity
**Preconditions:** A Affiliate account is active and the Affiliate is in the state required for this behavior.
**Steps:**
1. As a Affiliate, perform the referred customer activity action.
2. Open the audit log and verify the entry for the action.
**Expected Result:** The referred customer activity action is recorded in the audit log with the account and the timestamp.
**Priority:** Critical
