# 6. Batch Assessments — Test Cases

User Type: **Super Administrator**
Source: *Mi Digital Academy - Education CRM Features Document*
Spec: batch_assessments.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 |
|---------|--------------------|----------|
| 6.1 Schedule Batch Assessments for Institutes | Batch assessment scheduling: an assessment set for an institute's batch at a defined time | TC-SA-08-06-001 |
| 6.1 Schedule Batch Assessments for Institutes | Assessment selection: the assessment (from the assessment set) chosen for the batch | TC-SA-08-06-002 |
| 6.1 Schedule Batch Assessments for Institutes | Time window: the start and the duration (the window the batch takes it) | TC-SA-08-06-003 |
| 6.1 Schedule Batch Assessments for Institutes | Batch selection: the institute's group the assessment is scheduled for | TC-SA-08-06-004 |
| 6.1 Schedule Batch Assessments for Institutes | Scheduling list: the batch assessments with their times, institutes, and groups | TC-SA-08-06-005 |
| 6.1 Schedule Batch Assessments for Institutes | Reminder: the batch notified of the upcoming assessment (per notification settings) | TC-SA-08-06-006 |
| 6.1 Schedule Batch Assessments for Institutes | Audit logging of batch assessment scheduling | TC-SA-08-06-007 |
| 6.1 Schedule Batch Assessments for Institutes | Rule: a batch assessment is an assessment scheduled for an institute's group at a defined time window; the batch takes it together | TC-SA-08-06-001 |
| 6.1 Schedule Batch Assessments for Institutes | Rule: the time window (start and duration) is set; the assessment is taken within it | TC-SA-08-06-003 |
| 6.1 Schedule Batch Assessments for Institutes | Rule: the batch is notified of the upcoming assessment per the notification settings; a reschedule triggers a re-notification | TC-SA-08-06-006 |
| 6.1 Schedule Batch Assessments for Institutes | Rule: the scheduling list shows the batch assessments with their times, institutes, and groups; the calendar is visible | TC-SA-08-06-005 |
| 6.1 Schedule Batch Assessments for Institutes | Rule: a reschedule is recorded; the batch's prior attempts (if any) are handled per the reschedule's impact | TC-SA-08-06-008 |
| 6.1 Schedule Batch Assessments for Institutes | Rule: scheduling is audit-logged with the assessment, institute, batch, window, and timestamp | TC-SA-08-06-007 |
| 6.2 Previous Year Papers (If Available) | Previous year paper attachment: the past papers attached to the assessment context | TC-SA-08-06-009 |
| 6.2 Previous Year Papers (If Available) | Availability condition: the papers attached only where they are available and usable | TC-SA-08-06-010 |
| 6.2 Previous Year Papers (If Available) | Paper organization: the papers organized by year/exam (where multiple) | TC-SA-08-06-011 |
| 6.2 Previous Year Papers (If Available) | Access: the papers accessible to the learners in the batch (per the access rules) | TC-SA-08-06-012 |
| 6.2 Previous Year Papers (If Available) | Practice use: the papers used for preparation (the learners practice on them) | TC-SA-08-06-013 |
| 6.2 Previous Year Papers (If Available) | Paper review: the attached papers checked for relevance and usability | TC-SA-08-06-014 |
| 6.2 Previous Year Papers (If Available) | Audit logging of paper attachment | TC-SA-08-06-015 |
| 6.2 Previous Year Papers (If Available) | Rule: the previous year papers are attached only where they are available and usable; the availability is a condition, not an assumption | TC-SA-08-06-010 |
| 6.2 Previous Year Papers (If Available) | Rule: the papers are organized by year/exam; the right paper is findable | TC-SA-08-06-011 |
| 6.2 Previous Year Papers (If Available) | Rule: the access is per the access rules; the papers are available to the batch's learners, not others | TC-SA-08-06-012 |
| 6.2 Previous Year Papers (If Available) | Rule: the papers are checked for relevance (the current exam pattern); a mismatched paper is flagged or excluded | TC-SA-08-06-014 |
| 6.2 Previous Year Papers (If Available) | Rule: the absence of papers (an exam that does not publish them) is not an error; the feature is simply not offered | TC-SA-08-06-016 |
| 6.2 Previous Year Papers (If Available) | Rule: paper attachment is audit-logged with the assessment, papers, and timestamp | TC-SA-08-06-015 |

## 6.1 Schedule Batch Assessments for Institutes

### TC-SA-08-06-001 — Batch assessment scheduling: an assessment set for an institute's batch at a defined time; the batch takes it together
**Type:** Positive
**Covers:** 6.1 → Batch assessment scheduling: an assessment set for an institute's batch at a defined time; Rule: a batch assessment is an assessment scheduled for an institute's group at a defined time window; the batch takes it together
**Preconditions:** An institute has a batch (group); an assessment exists.
**Steps:**
1. Schedule a batch assessment: set the assessment for the institute's batch at a defined time.
2. Verify the batch takes it together (the assessment is available to the batch within the window).
**Expected Result:** The batch assessment is scheduled — the assessment is set for the institute's batch at a defined time; the batch takes it together.
**Priority:** Critical

### TC-SA-08-06-002 — Assessment selection: the assessment (from the assessment set) chosen for the batch
**Type:** Positive
**Covers:** 6.1 → Assessment selection: the assessment (from the assessment set) chosen for the batch
**Preconditions:** The assessment set contains multiple assessments.
**Steps:**
1. Select the assessment (from the assessment set) for the batch.
2. Verify the selected assessment is the one scheduled for the batch.
**Expected Result:** The assessment is selected from the assessment set — the chosen assessment is scheduled for the batch.
**Priority:** High

### TC-SA-08-06-003 — Time window: the start and the duration (the window the batch takes it); the assessment is taken within it
**Type:** Positive
**Covers:** 6.1 → Time window: the start and the duration (the window the batch takes it); Rule: the time window (start and duration) is set; the assessment is taken within it
**Preconditions:** A batch assessment is being scheduled.
**Steps:**
1. Set the time window: the start and the duration.
2. Verify the assessment is taken within the window (not before the start, not after the end).
**Expected Result:** The time window (start and duration) is set — the assessment is taken within it.
**Priority:** Critical

### TC-SA-08-06-004 — Batch selection: the institute's group the assessment is scheduled for
**Type:** Positive
**Covers:** 6.1 → Batch selection: the institute's group the assessment is scheduled for
**Preconditions:** An institute has multiple batches (groups).
**Steps:**
1. Select the batch (the institute's group) the assessment is scheduled for.
2. Verify the assessment is scheduled for the selected batch only.
**Expected Result:** The batch is selected — the assessment is scheduled for the institute's group.
**Priority:** High

### TC-SA-08-06-005 — Scheduling list: the batch assessments with their times, institutes, and groups; the calendar is visible
**Type:** Positive
**Covers:** 6.1 → Scheduling list: the batch assessments with their times, institutes, and groups; Rule: the scheduling list shows the batch assessments with their times, institutes, and groups; the calendar is visible
**Preconditions:** Multiple batch assessments are scheduled.
**Steps:**
1. Open the scheduling list.
2. Verify it shows the batch assessments with their times, institutes, and groups.
3. Verify the calendar is visible.
**Expected Result:** The scheduling list shows the batch assessments with their times, institutes, and groups — the calendar is visible.
**Priority:** High

### TC-SA-08-06-006 — Reminder: the batch notified of the upcoming assessment (per notification settings); a reschedule triggers a re-notification
**Type:** Positive
**Covers:** 6.1 → Reminder: the batch notified of the upcoming assessment (per notification settings); Rule: the batch is notified of the upcoming assessment per the notification settings; a reschedule triggers a re-notification
**Preconditions:** A batch assessment is scheduled; notification settings are configured.
**Steps:**
1. Verify the batch is notified of the upcoming assessment (per the notification settings).
2. Reschedule the assessment and verify a re-notification is triggered.
**Expected Result:** The batch is notified of the upcoming assessment (per the notification settings) — a reschedule triggers a re-notification.
**Priority:** High

### TC-SA-08-06-007 — Scheduling is audit-logged with the assessment, the institute, the batch, the window, and the timestamp
**Type:** Positive
**Covers:** 6.1 → Audit logging of batch assessment scheduling; Rule: scheduling is audit-logged with the assessment, institute, batch, window, and timestamp
**Preconditions:** A batch assessment has been scheduled.
**Steps:**
1. Open the audit trail and filter by "batch assessment".
2. Verify the entry shows the assessment, the institute, the batch, the window, and the timestamp.
**Expected Result:** The scheduling is audit-logged with the assessment, institute, batch, window, and timestamp.
**Priority:** Critical

### TC-SA-08-06-008 — A reschedule is recorded; the batch's prior attempts (if any) are handled per the reschedule's impact
**Type:** Edge
**Covers:** 6.1 → Rule: a reschedule is recorded; the batch's prior attempts (if any) are handled per the reschedule's impact
**Preconditions:** A batch assessment is rescheduled; some learners have prior attempts.
**Steps:**
1. Reschedule the batch assessment.
2. Verify the reschedule is recorded.
3. Verify the batch's prior attempts (if any) are handled per the reschedule's impact (e.g., invalidated or preserved, per the configuration).
**Expected Result:** The reschedule is recorded — the batch's prior attempts (if any) are handled per the reschedule's impact.
**Priority:** Critical

## 6.2 Previous Year Papers (If Available)

### TC-SA-08-06-009 — Previous year paper attachment: the past papers attached to the assessment context
**Type:** Positive
**Covers:** 6.2 → Previous year paper attachment: the past papers attached to the assessment context
**Preconditions:** Previous year papers are available for the assessment's exam.
**Steps:**
1. Attach the previous year papers to the assessment context.
2. Verify the papers are attached and accessible in the assessment context.
**Expected Result:** The previous year papers are attached to the assessment context.
**Priority:** High

### TC-SA-08-06-010 — Availability condition: the papers attached only where they are available and usable; the availability is a condition, not an assumption
**Type:** Negative
**Covers:** 6.2 → Availability condition: the papers attached only where they are available and usable; Rule: the previous year papers are attached only where they are available and usable; the availability is a condition, not an assumption
**Preconditions:** An exam does not publish previous year papers (unavailable).
**Steps:**
1. Attempt to attach previous year papers for the exam.
2. Verify the papers are attached only where they are available and usable.
3. Verify the absence is handled (the feature is simply not offered, not an error).
**Expected Result:** The papers are attached only where they are available and usable — the availability is a condition, not an assumption.
**Priority:** Critical

### TC-SA-08-06-011 — Paper organization: the papers organized by year/exam (where multiple); the right paper is findable
**Type:** Positive
**Covers:** 6.2 → Paper organization: the papers organized by year/exam (where multiple); Rule: the papers are organized by year/exam; the right paper is findable
**Preconditions:** Multiple previous year papers are attached (different years/exams).
**Steps:**
1. Organize the papers by year/exam.
2. Verify the right paper is findable (the learner can locate the paper for the year/exam they need).
**Expected Result:** The papers are organized by year/exam — the right paper is findable.
**Priority:** High

### TC-SA-08-06-012 — Access: the papers accessible to the learners in the batch (per the access rules); the papers are available to the batch's learners, not others
**Type:** Negative
**Covers:** 6.2 → Access: the papers accessible to the learners in the batch (per the access rules); Rule: the access is per the access rules; the papers are available to the batch's learners, not others
**Preconditions:** Previous year papers are attached to a batch assessment.
**Steps:**
1. As a learner in the batch, verify the papers are accessible.
2. As a learner outside the batch, verify the papers are not accessible.
**Expected Result:** The papers are accessible to the learners in the batch (per the access rules) — they are available to the batch's learners, not others.
**Priority:** Critical

### TC-SA-08-06-013 — Practice use: the papers used for preparation (the learners practice on them)
**Type:** Positive
**Covers:** 6.2 → Practice use: the papers used for preparation (the learners practice on them)
**Preconditions:** Previous year papers are attached to a batch assessment.
**Steps:**
1. As a learner in the batch, open a previous year paper.
2. Verify the learner can practice on it (use it for preparation).
**Expected Result:** The papers are used for preparation — the learners practice on them.
**Priority:** High

### TC-SA-08-06-014 — Paper review: the attached papers checked for relevance and usability; a mismatched paper is flagged or excluded
**Type:** Negative
**Covers:** 6.2 → Paper review: the attached papers checked for relevance and usability; Rule: the papers are checked for relevance (the current exam pattern); a mismatched paper is flagged or excluded
**Preconditions:** An attached paper is mismatched (it does not match the current exam pattern).
**Steps:**
1. Review the attached papers for relevance (the current exam pattern) and usability.
2. Identify the mismatched paper.
3. Verify it is flagged or excluded.
**Expected Result:** The papers are checked for relevance (the current exam pattern) and usability — the mismatched paper is flagged or excluded.
**Priority:** High

### TC-SA-08-06-015 — Paper attachment is audit-logged with the assessment, the papers, and the timestamp
**Type:** Positive
**Covers:** 6.2 → Audit logging of paper attachment; Rule: paper attachment is audit-logged with the assessment, papers, and timestamp
**Preconditions:** Previous year papers have been attached to an assessment.
**Steps:**
1. Open the audit trail and filter by "paper attachment".
2. Verify the entry shows the assessment, the papers, and the timestamp.
**Expected Result:** The paper attachment is audit-logged with the assessment, papers, and timestamp.
**Priority:** Critical

### TC-SA-08-06-016 — The absence of papers (an exam that does not publish them) is not an error; the feature is simply not offered
**Type:** Edge
**Covers:** 6.2 → Rule: the absence of papers (an exam that does not publish them) is not an error; the feature is simply not offered
**Preconditions:** An exam does not publish previous year papers.
**Steps:**
1. View the assessment context for the exam.
2. Verify the absence of papers is not an error (no error state).
3. Verify the feature is simply not offered (the section is absent or shows "not available").
**Expected Result:** The absence of papers is not an error — the feature is simply not offered.
**Priority:** Medium
