# 1. Organization Profile — Test Cases

User Type: **CSR**
Source: *Mi Digital Academy - Education CRM Features Document*
Spec: organization_profile.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 | Company name, logo, and registration details | TC-CSR-1-01-001 |
| 1.1 | CSR mandate and funding categories of interest | TC-CSR-1-01-002 |
| 1.1 | Approved payment and bank details | TC-CSR-1-01-003 |
| 1.1 | Primary contact and alternate contacts | TC-CSR-1-01-004 |
| 1.1 | Profile edit with change history | TC-CSR-1-01-005 |
| 1.1 | CSR Organization Profile available on web and mobile | TC-CSR-1-01-006 |
| 1.1 | csr organization profile event logging (viewed) | TC-CSR-1-01-007 |
| 1.1 | Audit logging of csr organization profile | TC-CSR-1-01-008 |
| 1.1 | Rule: Company name, logo, and registration details. | TC-CSR-1-01-009 |
| 1.1 | Rule: CSR mandate and funding categories of interest. | TC-CSR-1-01-010 |
| 1.1 | Rule: Approved payment and bank details. | TC-CSR-1-01-011 |
| 1.1 | Rule: Primary contact and alternate contacts. | TC-CSR-1-01-012 |
| 1.1 | Rule: Profile edit with change history. | TC-CSR-1-01-013 |
| 1.2 | Add, edit, and remove CSR team members | TC-CSR-1-02-014 |
| 1.2 | Role assignment: admin, finance, program manager | TC-CSR-1-02-015 |
| 1.2 | Role-based access to funding, billing, and reporting | TC-CSR-1-02-016 |
| 1.2 | Invite via email with acceptance link | TC-CSR-1-02-017 |
| 1.2 | Deactivate team member access | TC-CSR-1-02-018 |
| 1.2 | CSR Team Members available on web and mobile | TC-CSR-1-02-019 |
| 1.2 | csr team members event logging (viewed) | TC-CSR-1-02-020 |
| 1.2 | Audit logging of csr team members | TC-CSR-1-02-021 |
| 1.2 | Rule: Add, edit, and remove CSR team members. | TC-CSR-1-02-022 |
| 1.2 | Rule: Role assignment: admin, finance, program manager. | TC-CSR-1-02-023 |
| 1.2 | Rule: Role-based access to funding, billing, and reporting. | TC-CSR-1-02-024 |
| 1.2 | Rule: Invite via email with acceptance link. | TC-CSR-1-02-025 |
| 1.2 | Rule: Deactivate team member access. | TC-CSR-1-02-026 |

## 1.1 CSR Organization Profile

### TC-CSR-1-01-001 — Company name, logo, and registration details
**Type:** Positive
**Covers:** 1.1 → Company name, logo, and registration details; Rule: Company name, logo, and registration details.
**Preconditions:** A CSR account is active and the CSR is in the state required for this behavior.
**Steps:**
1. As a CSR, set up the precondition and perform: Company name, logo, and registration details.
2. Observe the result and verify the full behavior: Company name, logo, and registration details.
**Expected Result:** Company name, logo, and registration details — delivered exactly as documented.
**Priority:** Critical

### TC-CSR-1-01-002 — CSR mandate and funding categories of interest
**Type:** Positive
**Covers:** 1.1 → CSR mandate and funding categories of interest; Rule: CSR mandate and funding categories of interest.
**Preconditions:** A CSR account is active and the CSR is in the state required for this behavior.
**Steps:**
1. As a CSR, set up the precondition and perform: CSR mandate and funding categories of interest.
2. Observe the result and verify the full behavior: CSR mandate and funding categories of interest.
**Expected Result:** CSR mandate and funding categories of interest — delivered exactly as documented.
**Priority:** High

### TC-CSR-1-01-003 — Approved payment and bank details
**Type:** Positive
**Covers:** 1.1 → Approved payment and bank details; Rule: Approved payment and bank details.
**Preconditions:** A CSR account is active and the CSR is in the state required for this behavior.
**Steps:**
1. As a CSR, set up the precondition and perform: Approved payment and bank details.
2. Observe the result and verify the full behavior: Approved payment and bank details.
**Expected Result:** Approved payment and bank details — delivered exactly as documented.
**Priority:** Medium

### TC-CSR-1-01-004 — Primary contact and alternate contacts
**Type:** Positive
**Covers:** 1.1 → Primary contact and alternate contacts; Rule: Primary contact and alternate contacts.
**Preconditions:** A CSR account is active and the CSR is in the state required for this behavior.
**Steps:**
1. As a CSR, set up the precondition and perform: Primary contact and alternate contacts.
2. Observe the result and verify the full behavior: Primary contact and alternate contacts.
**Expected Result:** Primary contact and alternate contacts — delivered exactly as documented.
**Priority:** Medium

### TC-CSR-1-01-005 — Profile edit with change history
**Type:** Positive
**Covers:** 1.1 → Profile edit with change history; Rule: Profile edit with change history.
**Preconditions:** A CSR account is active and the CSR is in the state required for this behavior.
**Steps:**
1. As a CSR, set up the precondition and perform: Profile edit with change history.
2. Observe the result and verify the full behavior: Profile edit with change history.
**Expected Result:** Profile edit with change history — delivered exactly as documented.
**Priority:** Medium

### TC-CSR-1-01-006 — CSR Organization Profile available on web and mobile
**Type:** Positive
**Covers:** 1.1 → CSR Organization Profile available on web and mobile; Rule: Company name, logo, and registration details.
**Preconditions:** A CSR account is active and the CSR is in the state required for this behavior.
**Steps:**
1. As a CSR, set up the precondition and perform: CSR Organization Profile available on web and mobile.
2. Observe the result and verify the full behavior: CSR Organization Profile available on web and mobile.
**Expected Result:** CSR Organization Profile available on web and mobile — delivered exactly as documented.
**Priority:** Medium

### TC-CSR-1-01-007 — csr organization profile event logging (viewed)
**Type:** Positive
**Covers:** 1.1 → csr organization profile event logging (viewed); Rule: CSR mandate and funding categories of interest.
**Preconditions:** A CSR account is active and the CSR is in the state required for this behavior.
**Steps:**
1. As a CSR, set up the precondition and perform: csr organization profile event logging (viewed).
2. Observe the result and verify the full behavior: csr organization profile event logging (viewed).
**Expected Result:** csr organization profile event logging (viewed) — delivered exactly as documented.
**Priority:** Medium

### TC-CSR-1-01-008 — Audit logging of csr organization profile
**Type:** Positive
**Covers:** 1.1 → Audit logging of csr organization profile; Rule: Approved payment and bank details.
**Preconditions:** A CSR account is active and the CSR is in the state required for this behavior.
**Steps:**
1. As a CSR, set up the precondition and perform: Audit logging of csr organization profile.
2. Observe the result and verify the full behavior: Audit logging of csr organization profile.
**Expected Result:** Audit logging of csr organization profile — delivered exactly as documented.
**Priority:** Medium

### TC-CSR-1-01-009 — Rule: Company name, logo, and registration details.
**Type:** Positive
**Covers:** 1.1 → Rule: Company name, logo, and registration details.
**Preconditions:** A CSR account is active and the CSR is in the state required for this behavior.
**Steps:**
1. As a CSR, set up the precondition and perform the action that triggers the rule: Company name, logo, and registration details.
2. Observe the result and verify the full behavior: Company name, logo, and registration details.
**Expected Result:** Company name, logo, and registration details. — delivered exactly as documented.
**Priority:** Critical

### TC-CSR-1-01-010 — Rule: CSR mandate and funding categories of interest.
**Type:** Positive
**Covers:** 1.1 → Rule: CSR mandate and funding categories of interest.
**Preconditions:** A CSR account is active and the CSR is in the state required for this behavior.
**Steps:**
1. As a CSR, set up the precondition and perform the action that triggers the rule: CSR mandate and funding categories of interest.
2. Observe the result and verify the full behavior: CSR mandate and funding categories of interest.
**Expected Result:** CSR mandate and funding categories of interest. — delivered exactly as documented.
**Priority:** High

### TC-CSR-1-01-011 — Rule: Approved payment and bank details.
**Type:** Positive
**Covers:** 1.1 → Rule: Approved payment and bank details.
**Preconditions:** A CSR account is active and the CSR is in the state required for this behavior.
**Steps:**
1. As a CSR, set up the precondition and perform the action that triggers the rule: Approved payment and bank details.
2. Observe the result and verify the full behavior: Approved payment and bank details.
**Expected Result:** Approved payment and bank details. — delivered exactly as documented.
**Priority:** Medium

### TC-CSR-1-01-012 — Rule: Primary contact and alternate contacts.
**Type:** Positive
**Covers:** 1.1 → Rule: Primary contact and alternate contacts.
**Preconditions:** A CSR account is active and the CSR is in the state required for this behavior.
**Steps:**
1. As a CSR, set up the precondition and perform the action that triggers the rule: Primary contact and alternate contacts.
2. Observe the result and verify the full behavior: Primary contact and alternate contacts.
**Expected Result:** Primary contact and alternate contacts. — delivered exactly as documented.
**Priority:** Medium

### TC-CSR-1-01-013 — Rule: Profile edit with change history.
**Type:** Positive
**Covers:** 1.1 → Rule: Profile edit with change history.
**Preconditions:** A CSR account is active and the CSR is in the state required for this behavior.
**Steps:**
1. As a CSR, set up the precondition and perform the action that triggers the rule: Profile edit with change history.
2. Observe the result and verify the full behavior: Profile edit with change history.
**Expected Result:** Profile edit with change history. — delivered exactly as documented.
**Priority:** Medium

## 1.2 CSR Team Members

### TC-CSR-1-02-014 — Add, edit, and remove CSR team members
**Type:** Positive
**Covers:** 1.2 → Add, edit, and remove CSR team members; Rule: Add, edit, and remove CSR team members.
**Preconditions:** A CSR account is active and the CSR is in the state required for this behavior.
**Steps:**
1. As a CSR, set up the precondition and perform: Add, edit, and remove CSR team members.
2. Observe the result and verify the full behavior: Add, edit, and remove CSR team members.
**Expected Result:** Add, edit, and remove CSR team members — delivered exactly as documented.
**Priority:** Critical

### TC-CSR-1-02-015 — Role assignment: admin, finance, program manager
**Type:** Positive
**Covers:** 1.2 → Role assignment: admin, finance, program manager; Rule: Role assignment: admin, finance, program manager.
**Preconditions:** A CSR account is active and the CSR is in the state required for this behavior.
**Steps:**
1. As a CSR, set up the precondition and perform: Role assignment: admin, finance, program manager.
2. Observe the result and verify the full behavior: Role assignment: admin, finance, program manager.
**Expected Result:** Role assignment: admin, finance, program manager — delivered exactly as documented.
**Priority:** High

### TC-CSR-1-02-016 — Role-based access to funding, billing, and reporting
**Type:** Positive
**Covers:** 1.2 → Role-based access to funding, billing, and reporting; Rule: Role-based access to funding, billing, and reporting.
**Preconditions:** A CSR account is active and the CSR is in the state required for this behavior.
**Steps:**
1. As a CSR, set up the precondition and perform: Role-based access to funding, billing, and reporting.
2. Observe the result and verify the full behavior: Role-based access to funding, billing, and reporting.
**Expected Result:** Role-based access to funding, billing, and reporting — delivered exactly as documented.
**Priority:** Medium

### TC-CSR-1-02-017 — Invite via email with acceptance link
**Type:** Positive
**Covers:** 1.2 → Invite via email with acceptance link; Rule: Invite via email with acceptance link.
**Preconditions:** A CSR account is active and the CSR is in the state required for this behavior.
**Steps:**
1. As a CSR, set up the precondition and perform: Invite via email with acceptance link.
2. Observe the result and verify the full behavior: Invite via email with acceptance link.
**Expected Result:** Invite via email with acceptance link — delivered exactly as documented.
**Priority:** Medium

### TC-CSR-1-02-018 — Deactivate team member access
**Type:** Positive
**Covers:** 1.2 → Deactivate team member access; Rule: Deactivate team member access.
**Preconditions:** A CSR account is active and the CSR is in the state required for this behavior.
**Steps:**
1. As a CSR, set up the precondition and perform: Deactivate team member access.
2. Observe the result and verify the full behavior: Deactivate team member access.
**Expected Result:** Deactivate team member access — delivered exactly as documented.
**Priority:** Medium

### TC-CSR-1-02-019 — CSR Team Members available on web and mobile
**Type:** Positive
**Covers:** 1.2 → CSR Team Members available on web and mobile; Rule: Add, edit, and remove CSR team members.
**Preconditions:** A CSR account is active and the CSR is in the state required for this behavior.
**Steps:**
1. As a CSR, set up the precondition and perform: CSR Team Members available on web and mobile.
2. Observe the result and verify the full behavior: CSR Team Members available on web and mobile.
**Expected Result:** CSR Team Members available on web and mobile — delivered exactly as documented.
**Priority:** Medium

### TC-CSR-1-02-020 — csr team members event logging (viewed)
**Type:** Positive
**Covers:** 1.2 → csr team members event logging (viewed); Rule: Role assignment: admin, finance, program manager.
**Preconditions:** A CSR account is active and the CSR is in the state required for this behavior.
**Steps:**
1. As a CSR, set up the precondition and perform: csr team members event logging (viewed).
2. Observe the result and verify the full behavior: csr team members event logging (viewed).
**Expected Result:** csr team members event logging (viewed) — delivered exactly as documented.
**Priority:** Medium

### TC-CSR-1-02-021 — Audit logging of csr team members
**Type:** Positive
**Covers:** 1.2 → Audit logging of csr team members; Rule: Role-based access to funding, billing, and reporting.
**Preconditions:** A CSR account is active and the CSR is in the state required for this behavior.
**Steps:**
1. As a CSR, set up the precondition and perform: Audit logging of csr team members.
2. Observe the result and verify the full behavior: Audit logging of csr team members.
**Expected Result:** Audit logging of csr team members — delivered exactly as documented.
**Priority:** Medium

### TC-CSR-1-02-022 — Rule: Add, edit, and remove CSR team members.
**Type:** Positive
**Covers:** 1.2 → Rule: Add, edit, and remove CSR team members.
**Preconditions:** A CSR account is active and the CSR is in the state required for this behavior.
**Steps:**
1. As a CSR, set up the precondition and perform the action that triggers the rule: Add, edit, and remove CSR team members.
2. Observe the result and verify the full behavior: Add, edit, and remove CSR team members.
**Expected Result:** Add, edit, and remove CSR team members. — delivered exactly as documented.
**Priority:** Critical

### TC-CSR-1-02-023 — Rule: Role assignment: admin, finance, program manager.
**Type:** Positive
**Covers:** 1.2 → Rule: Role assignment: admin, finance, program manager.
**Preconditions:** A CSR account is active and the CSR is in the state required for this behavior.
**Steps:**
1. As a CSR, set up the precondition and perform the action that triggers the rule: Role assignment: admin, finance, program manager.
2. Observe the result and verify the full behavior: Role assignment: admin, finance, program manager.
**Expected Result:** Role assignment: admin, finance, program manager. — delivered exactly as documented.
**Priority:** High

### TC-CSR-1-02-024 — Rule: Role-based access to funding, billing, and reporting.
**Type:** Positive
**Covers:** 1.2 → Rule: Role-based access to funding, billing, and reporting.
**Preconditions:** A CSR account is active and the CSR is in the state required for this behavior.
**Steps:**
1. As a CSR, set up the precondition and perform the action that triggers the rule: Role-based access to funding, billing, and reporting.
2. Observe the result and verify the full behavior: Role-based access to funding, billing, and reporting.
**Expected Result:** Role-based access to funding, billing, and reporting. — delivered exactly as documented.
**Priority:** Medium

### TC-CSR-1-02-025 — Rule: Invite via email with acceptance link.
**Type:** Positive
**Covers:** 1.2 → Rule: Invite via email with acceptance link.
**Preconditions:** A CSR account is active and the CSR is in the state required for this behavior.
**Steps:**
1. As a CSR, set up the precondition and perform the action that triggers the rule: Invite via email with acceptance link.
2. Observe the result and verify the full behavior: Invite via email with acceptance link.
**Expected Result:** Invite via email with acceptance link. — delivered exactly as documented.
**Priority:** Medium

### TC-CSR-1-02-026 — Rule: Deactivate team member access.
**Type:** Positive
**Covers:** 1.2 → Rule: Deactivate team member access.
**Preconditions:** A CSR account is active and the CSR is in the state required for this behavior.
**Steps:**
1. As a CSR, set up the precondition and perform the action that triggers the rule: Deactivate team member access.
2. Observe the result and verify the full behavior: Deactivate team member access.
**Expected Result:** Deactivate team member access. — delivered exactly as documented.
**Priority:** Medium
