# 3. Exclusive Rewards & Perks — Test Cases

User Type: **Affiliate**
Source: *Mi Digital Academy - Education CRM Features Document*
Spec: exclusive_rewards_perks.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 | Exclusive materials for top tiers | TC-AF-6-03-001 |
| 3.1 | Premium banners | TC-AF-6-03-002 |
| 3.1 | Limited-edition content | TC-AF-6-03-003 |
| 3.1 | Campaign assets | TC-AF-6-03-004 |
| 3.1 | Browse and download exclusive materials | TC-AF-6-03-005 |
| 3.1 | Materials available on web and mobile | TC-AF-6-03-006 |
| 3.1 | Materials event logging (viewed, downloaded) | TC-AF-6-03-007 |
| 3.1 | Audit logging of the exclusive promotional materials | TC-AF-6-03-008 |
| 3.1 | Rule: The materials are exclusive to top tiers. | TC-AF-6-03-001 |
| 3.1 | Rule: The materials can be browsed and downloaded. | TC-AF-6-03-002 |
| 3.1 | Rule: Materials events (viewed, downloaded) are logged with the account and the timestamp. | TC-AF-6-03-003 |
| 3.1 | Rule: The exclusive promotional materials is audit-logged with the account and the timestamp. | TC-AF-6-03-004 |
| 3.2 | Priority support for top tiers | TC-AF-6-03-009 |
| 3.2 | Faster response times | TC-AF-6-03-010 |
| 3.2 | Dedicated support channel | TC-AF-6-03-011 |
| 3.2 | Access to a senior support agent | TC-AF-6-03-012 |
| 3.2 | Raise a priority request | TC-AF-6-03-013 |
| 3.2 | Track the priority request | TC-AF-6-03-014 |
| 3.2 | Support available on web and mobile | TC-AF-6-03-015 |
| 3.2 | Support event logging (raised, resolved) | TC-AF-6-03-016 |
| 3.2 | Audit logging of the priority support | TC-AF-6-03-017 |
| 3.2 | Rule: The priority support is for top tiers. | TC-AF-6-03-009 |
| 3.2 | Rule: A priority request can be raised and tracked. | TC-AF-6-03-010 |
| 3.2 | Rule: Support events (raised, resolved) are logged with the account and the timestamp. | TC-AF-6-03-011 |
| 3.2 | Rule: The priority support is audit-logged with the account and the timestamp. | TC-AF-6-03-012 |
| 3.3 | Exclusive seasonal campaigns for top tiers | TC-AF-6-03-018 |
| 3.3 | Boosted commissions in campaigns | TC-AF-6-03-019 |
| 3.3 | Special campaign rewards | TC-AF-6-03-020 |
| 3.3 | View active campaigns | TC-AF-6-03-021 |
| 3.3 | Join a campaign | TC-AF-6-03-022 |
| 3.3 | Track campaign performance | TC-AF-6-03-023 |
| 3.3 | Campaigns available on web and mobile | TC-AF-6-03-024 |
| 3.3 | Campaigns event logging (joined, tracked) | TC-AF-6-03-025 |
| 3.3 | Audit logging of the seasonal campaigns | TC-AF-6-03-026 |
| 3.3 | Rule: The campaigns are exclusive to top tiers. | TC-AF-6-03-018 |
| 3.3 | Rule: A campaign can be joined and tracked. | TC-AF-6-03-019 |
| 3.3 | Rule: Campaigns events (joined, tracked) are logged with the account and the timestamp. | TC-AF-6-03-020 |
| 3.3 | Rule: The seasonal campaigns is audit-logged with the account and the timestamp. | TC-AF-6-03-021 |

## 3.1 Exclusive Promotional Materials

### TC-AF-6-03-001 — Exclusive materials for top tiers
**Type:** Positive
**Covers:** 3.1 → Exclusive materials for top tiers; Rule: The materials are exclusive to top tiers.
**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: Exclusive materials for top tiers.
2. Observe the result and verify the full behavior: Exclusive materials for top tiers.
**Expected Result:** Exclusive materials for top tiers — delivered exactly as documented.
**Priority:** Critical

### TC-AF-6-03-002 — Premium banners
**Type:** Positive
**Covers:** 3.1 → Premium banners; Rule: The materials can be browsed and 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: Premium banners.
2. Observe the result and verify the full behavior: Premium banners.
**Expected Result:** Premium banners — delivered exactly as documented.
**Priority:** High

### TC-AF-6-03-003 — Limited-edition content
**Type:** Edge
**Covers:** 3.1 → Limited-edition content; Rule: Materials 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: Limited-edition content.
2. Observe the result and verify the full behavior: Limited-edition content.
**Expected Result:** Limited-edition content — delivered exactly as documented.
**Priority:** High

### TC-AF-6-03-004 — Campaign assets
**Type:** Positive
**Covers:** 3.1 → Campaign assets; Rule: The exclusive promotional materials 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: Campaign assets.
2. Observe the result and verify the full behavior: Campaign assets.
**Expected Result:** Campaign assets — delivered exactly as documented.
**Priority:** High

### TC-AF-6-03-005 — Browse and download exclusive materials
**Type:** Positive
**Covers:** 3.1 → Browse and download exclusive materials
**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: Browse and download exclusive materials.
2. Observe the result and verify the full behavior: Browse and download exclusive materials.
**Expected Result:** Browse and download exclusive materials — delivered exactly as documented.
**Priority:** High

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

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

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


## 3.2 Priority Support

### TC-AF-6-03-009 — Priority support for top tiers
**Type:** Positive
**Covers:** 3.2 → Priority support for top tiers; Rule: The priority support is for top tiers.
**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: Priority support for top tiers.
2. Observe the result and verify the full behavior: Priority support for top tiers.
**Expected Result:** Priority support for top tiers — delivered exactly as documented.
**Priority:** Critical

### TC-AF-6-03-010 — Faster response times
**Type:** Positive
**Covers:** 3.2 → Faster response times; Rule: A priority request can be raised and tracked.
**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: Faster response times.
2. Observe the result and verify the full behavior: Faster response times.
**Expected Result:** Faster response times — delivered exactly as documented.
**Priority:** High

### TC-AF-6-03-011 — Dedicated support channel
**Type:** Positive
**Covers:** 3.2 → Dedicated support channel; Rule: Support events (raised, resolved) 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: Dedicated support channel.
2. Observe the result and verify the full behavior: Dedicated support channel.
**Expected Result:** Dedicated support channel — delivered exactly as documented.
**Priority:** High

### TC-AF-6-03-012 — Access to a senior support agent
**Type:** Positive
**Covers:** 3.2 → Access to a senior support agent; Rule: The priority support 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: Access to a senior support agent.
2. Observe the result and verify the full behavior: Access to a senior support agent.
**Expected Result:** Access to a senior support agent — delivered exactly as documented.
**Priority:** High

### TC-AF-6-03-013 — Raise a priority request
**Type:** Positive
**Covers:** 3.2 → Raise a priority request
**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: Raise a priority request.
2. Observe the result and verify the full behavior: Raise a priority request.
**Expected Result:** Raise a priority request — delivered exactly as documented.
**Priority:** High

### TC-AF-6-03-014 — Track the priority request
**Type:** Positive
**Covers:** 3.2 → Track the priority request
**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: Track the priority request.
2. Observe the result and verify the full behavior: Track the priority request.
**Expected Result:** Track the priority request — delivered exactly as documented.
**Priority:** High

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

### TC-AF-6-03-016 — Support event logging (raised, resolved)
**Type:** Positive
**Covers:** 3.2 → Support event logging (raised, resolved)
**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: Support event logging (raised, resolved).
2. Observe the result and verify the full behavior: Support event logging (raised, resolved).
**Expected Result:** Support event logging (raised, resolved) — delivered exactly as documented.
**Priority:** High

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


## 3.3 Seasonal Campaigns

### TC-AF-6-03-018 — Exclusive seasonal campaigns for top tiers
**Type:** Positive
**Covers:** 3.3 → Exclusive seasonal campaigns for top tiers; Rule: The campaigns are exclusive to top tiers.
**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: Exclusive seasonal campaigns for top tiers.
2. Observe the result and verify the full behavior: Exclusive seasonal campaigns for top tiers.
**Expected Result:** Exclusive seasonal campaigns for top tiers — delivered exactly as documented.
**Priority:** Critical

### TC-AF-6-03-019 — Boosted commissions in campaigns
**Type:** Positive
**Covers:** 3.3 → Boosted commissions in campaigns; Rule: A campaign can be joined and tracked.
**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: Boosted commissions in campaigns.
2. Observe the result and verify the full behavior: Boosted commissions in campaigns.
**Expected Result:** Boosted commissions in campaigns — delivered exactly as documented.
**Priority:** High

### TC-AF-6-03-020 — Special campaign rewards
**Type:** Positive
**Covers:** 3.3 → Special campaign rewards; Rule: Campaigns events (joined, tracked) 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: Special campaign rewards.
2. Observe the result and verify the full behavior: Special campaign rewards.
**Expected Result:** Special campaign rewards — delivered exactly as documented.
**Priority:** High

### TC-AF-6-03-021 — View active campaigns
**Type:** Positive
**Covers:** 3.3 → View active campaigns; Rule: The seasonal campaigns 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 active campaigns.
2. Observe the result and verify the full behavior: View active campaigns.
**Expected Result:** View active campaigns — delivered exactly as documented.
**Priority:** High

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

### TC-AF-6-03-023 — Track campaign performance
**Type:** Positive
**Covers:** 3.3 → Track campaign performance
**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: Track campaign performance.
2. Observe the result and verify the full behavior: Track campaign performance.
**Expected Result:** Track campaign performance — delivered exactly as documented.
**Priority:** High

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

### TC-AF-6-03-025 — Campaigns event logging (joined, tracked)
**Type:** Positive
**Covers:** 3.3 → Campaigns event logging (joined, tracked)
**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: Campaigns event logging (joined, tracked).
2. Observe the result and verify the full behavior: Campaigns event logging (joined, tracked).
**Expected Result:** Campaigns event logging (joined, tracked) — delivered exactly as documented.
**Priority:** High

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