# 4. Incentive History & Recognition — Test Cases

User Type: **Affiliate**
Source: *Mi Digital Academy - Education CRM Features Document*
Spec: incentive_history_recognition.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 | Complete incentive earning history | TC-AF-6-04-001 |
| 4.1 | Date, trigger, and amount per entry | TC-AF-6-04-002 |
| 4.1 | Filter by incentive type | TC-AF-6-04-003 |
| 4.1 | Filter by period | TC-AF-6-04-004 |
| 4.1 | View an incentive entry's details | TC-AF-6-04-005 |
| 4.1 | History available on web and mobile | TC-AF-6-04-006 |
| 4.1 | History event logging (viewed) | TC-AF-6-04-007 |
| 4.1 | Audit logging of the incentive earning history | TC-AF-6-04-008 |
| 4.1 | Rule: The history is complete and itemized. | TC-AF-6-04-001 |
| 4.1 | Rule: The history can be filtered by type and period. | TC-AF-6-04-002 |
| 4.1 | Rule: History events (viewed) are logged with the account and the timestamp. | TC-AF-6-04-003 |
| 4.1 | Rule: The incentive earning history is audit-logged with the account and the timestamp. | TC-AF-6-04-004 |
| 4.2 | Badges earned | TC-AF-6-04-009 |
| 4.2 | Titles earned | TC-AF-6-04-010 |
| 4.2 | Public recognition | TC-AF-6-04-011 |
| 4.2 | View a badge's details | TC-AF-6-04-012 |
| 4.2 | Share the recognition | TC-AF-6-04-013 |
| 4.2 | Recognition available on web and mobile | TC-AF-6-04-014 |
| 4.2 | Recognition event logging (viewed, shared) | TC-AF-6-04-015 |
| 4.2 | Audit logging of the recognition and badges | TC-AF-6-04-016 |
| 4.2 | Rule: The recognition includes badges, titles, and public recognition. | TC-AF-6-04-009 |
| 4.2 | Rule: The recognition can be shared. | TC-AF-6-04-010 |
| 4.2 | Rule: Recognition events (viewed, shared) are logged with the account and the timestamp. | TC-AF-6-04-011 |
| 4.2 | Rule: The recognition and badges is audit-logged with the account and the timestamp. | TC-AF-6-04-012 |
| 4.3 | Incentive summary for the period | TC-AF-6-04-017 |
| 4.3 | Total incentive earnings | TC-AF-6-04-018 |
| 4.3 | Breakdown by incentive type | TC-AF-6-04-019 |
| 4.3 | Incentive earnings trend | TC-AF-6-04-020 |
| 4.3 | Select the report period | TC-AF-6-04-021 |
| 4.3 | Download the report | TC-AF-6-04-022 |
| 4.3 | Report available on web and mobile | TC-AF-6-04-023 |
| 4.3 | Report event logging (viewed, downloaded) | TC-AF-6-04-024 |
| 4.3 | Audit logging of the incentive summary report | TC-AF-6-04-025 |
| 4.3 | Rule: The summary is for the selected period. | TC-AF-6-04-017 |
| 4.3 | Rule: The breakdown is by incentive type. | TC-AF-6-04-018 |
| 4.3 | Rule: The report can be downloaded. | TC-AF-6-04-019 |
| 4.3 | Rule: Report events (viewed, downloaded) are logged with the account and the timestamp. | TC-AF-6-04-020 |
| 4.3 | Rule: The incentive summary report is audit-logged with the account and the timestamp. | TC-AF-6-04-021 |

## 4.1 Incentive Earning History

### TC-AF-6-04-001 — Complete incentive earning history
**Type:** Positive
**Covers:** 4.1 → Complete incentive earning history; Rule: The history is complete and itemized.
**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: Complete incentive earning history.
2. Observe the result and verify the full behavior: Complete incentive earning history.
**Expected Result:** Complete incentive earning history — delivered exactly as documented.
**Priority:** Critical

### TC-AF-6-04-002 — Date, trigger, and amount per entry
**Type:** Positive
**Covers:** 4.1 → Date, trigger, and amount per entry; Rule: The history can be filtered by type and 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: Date, trigger, and amount per entry.
2. Observe the result and verify the full behavior: Date, trigger, and amount per entry.
**Expected Result:** Date, trigger, and amount per entry — delivered exactly as documented.
**Priority:** High

### TC-AF-6-04-003 — Filter by incentive type
**Type:** Positive
**Covers:** 4.1 → Filter by incentive type; Rule: History 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: Filter by incentive type.
2. Observe the result and verify the full behavior: Filter by incentive type.
**Expected Result:** Filter by incentive type — delivered exactly as documented.
**Priority:** High

### TC-AF-6-04-004 — Filter by period
**Type:** Positive
**Covers:** 4.1 → Filter by period; Rule: The incentive earning history 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 period.
2. Observe the result and verify the full behavior: Filter by period.
**Expected Result:** Filter by period — delivered exactly as documented.
**Priority:** High

### TC-AF-6-04-005 — View an incentive entry's details
**Type:** Positive
**Covers:** 4.1 → View an incentive entry'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 an incentive entry's details.
2. Observe the result and verify the full behavior: View an incentive entry's details.
**Expected Result:** View an incentive entry's details — delivered exactly as documented.
**Priority:** High

### TC-AF-6-04-006 — History available on web and mobile
**Type:** Positive
**Covers:** 4.1 → History 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: History available on web and mobile.
2. Observe the result and verify the full behavior: History available on web and mobile.
**Expected Result:** History available on web and mobile — delivered exactly as documented.
**Priority:** High

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

### TC-AF-6-04-008 — Audit logging of the incentive earning history
**Type:** Positive
**Covers:** 4.1 → Audit logging of the incentive earning history
**Preconditions:** A Affiliate account is active and the Affiliate is in the state required for this behavior.
**Steps:**
1. As a Affiliate, perform the incentive earning history action.
2. Open the audit log and verify the entry for the action.
**Expected Result:** The incentive earning history action is recorded in the audit log with the account and the timestamp.
**Priority:** Critical


## 4.2 Recognition & Badges

### TC-AF-6-04-009 — Badges earned
**Type:** Positive
**Covers:** 4.2 → Badges earned; Rule: The recognition includes badges, titles, and public recognition.
**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: Badges earned.
2. Observe the result and verify the full behavior: Badges earned.
**Expected Result:** Badges earned — delivered exactly as documented.
**Priority:** Critical

### TC-AF-6-04-010 — Titles earned
**Type:** Positive
**Covers:** 4.2 → Titles earned; Rule: The recognition can be shared.
**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: Titles earned.
2. Observe the result and verify the full behavior: Titles earned.
**Expected Result:** Titles earned — delivered exactly as documented.
**Priority:** High

### TC-AF-6-04-011 — Public recognition
**Type:** Positive
**Covers:** 4.2 → Public recognition; Rule: Recognition events (viewed, shared) 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: Public recognition.
2. Observe the result and verify the full behavior: Public recognition.
**Expected Result:** Public recognition — delivered exactly as documented.
**Priority:** High

### TC-AF-6-04-012 — View a badge's details
**Type:** Positive
**Covers:** 4.2 → View a badge's details; Rule: The recognition and badges 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: View a badge's details.
2. Observe the result and verify the full behavior: View a badge's details.
**Expected Result:** View a badge's details — delivered exactly as documented.
**Priority:** High

### TC-AF-6-04-013 — Share the recognition
**Type:** Positive
**Covers:** 4.2 → Share the recognition
**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: Share the recognition.
2. Observe the result and verify the full behavior: Share the recognition.
**Expected Result:** Share the recognition — delivered exactly as documented.
**Priority:** High

### TC-AF-6-04-014 — Recognition available on web and mobile
**Type:** Positive
**Covers:** 4.2 → Recognition 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: Recognition available on web and mobile.
2. Observe the result and verify the full behavior: Recognition available on web and mobile.
**Expected Result:** Recognition available on web and mobile — delivered exactly as documented.
**Priority:** High

### TC-AF-6-04-015 — Recognition event logging (viewed, shared)
**Type:** Positive
**Covers:** 4.2 → Recognition event logging (viewed, shared)
**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: Recognition event logging (viewed, shared).
2. Observe the result and verify the full behavior: Recognition event logging (viewed, shared).
**Expected Result:** Recognition event logging (viewed, shared) — delivered exactly as documented.
**Priority:** High

### TC-AF-6-04-016 — Audit logging of the recognition and badges
**Type:** Positive
**Covers:** 4.2 → Audit logging of the recognition and badges
**Preconditions:** A Affiliate account is active and the Affiliate is in the state required for this behavior.
**Steps:**
1. As a Affiliate, perform the recognition and badges action.
2. Open the audit log and verify the entry for the action.
**Expected Result:** The recognition and badges action is recorded in the audit log with the account and the timestamp.
**Priority:** Critical


## 4.3 Incentive Summary Report

### TC-AF-6-04-017 — Incentive summary for the period
**Type:** Positive
**Covers:** 4.3 → Incentive summary for the period; Rule: The summary is for the selected 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: Incentive summary for the period.
2. Observe the result and verify the full behavior: Incentive summary for the period.
**Expected Result:** Incentive summary for the period — delivered exactly as documented.
**Priority:** Critical

### TC-AF-6-04-018 — Total incentive earnings
**Type:** Positive
**Covers:** 4.3 → Total incentive earnings; Rule: The breakdown is by incentive type.
**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: Total incentive earnings.
2. Observe the result and verify the full behavior: Total incentive earnings.
**Expected Result:** Total incentive earnings — delivered exactly as documented.
**Priority:** High

### TC-AF-6-04-019 — Breakdown by incentive type
**Type:** Positive
**Covers:** 4.3 → Breakdown by incentive type; Rule: The report can be downloaded.
**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: Breakdown by incentive type.
2. Observe the result and verify the full behavior: Breakdown by incentive type.
**Expected Result:** Breakdown by incentive type — delivered exactly as documented.
**Priority:** High

### TC-AF-6-04-020 — Incentive earnings trend
**Type:** Positive
**Covers:** 4.3 → Incentive earnings trend; Rule: Report events (viewed, downloaded) 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: Incentive earnings trend.
2. Observe the result and verify the full behavior: Incentive earnings trend.
**Expected Result:** Incentive earnings trend — delivered exactly as documented.
**Priority:** High

### TC-AF-6-04-021 — Select the report period
**Type:** Positive
**Covers:** 4.3 → Select the report period; Rule: The incentive summary report 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: Select the report period.
2. Observe the result and verify the full behavior: Select the report period.
**Expected Result:** Select the report period — delivered exactly as documented.
**Priority:** High

### TC-AF-6-04-022 — Download the report
**Type:** Positive
**Covers:** 4.3 → Download the report
**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: Download the report.
2. Observe the result and verify the full behavior: Download the report.
**Expected Result:** Download the report — delivered exactly as documented.
**Priority:** High

### TC-AF-6-04-023 — Report available on web and mobile
**Type:** Positive
**Covers:** 4.3 → Report 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: Report available on web and mobile.
2. Observe the result and verify the full behavior: Report available on web and mobile.
**Expected Result:** Report available on web and mobile — delivered exactly as documented.
**Priority:** High

### TC-AF-6-04-024 — Report event logging (viewed, downloaded)
**Type:** Positive
**Covers:** 4.3 → Report event logging (viewed, downloaded)
**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: Report event logging (viewed, downloaded).
2. Observe the result and verify the full behavior: Report event logging (viewed, downloaded).
**Expected Result:** Report event logging (viewed, downloaded) — delivered exactly as documented.
**Priority:** High

### TC-AF-6-04-025 — Audit logging of the incentive summary report
**Type:** Positive
**Covers:** 4.3 → Audit logging of the incentive summary report
**Preconditions:** A Affiliate account is active and the Affiliate is in the state required for this behavior.
**Steps:**
1. As a Affiliate, perform the incentive summary report action.
2. Open the audit log and verify the entry for the action.
**Expected Result:** The incentive summary report action is recorded in the audit log with the account and the timestamp.
**Priority:** Critical
