mirror of
https://github.com/Tria-plc/emaui.git
synced 2026-09-06 21:45:04 +00:00
refactor(exam): drop the last trace of "Eligible to Register"
The label was reverted to "Exam Paid" but the name survived as the internal stage key, so the concept was still in the codebase to be reintroduced by accident. The stage is named after the status it derives from now.
This commit is contained in:
@@ -114,7 +114,7 @@ const STATUS_COLOR: Record<string, string> = {
|
||||
* keys because this page states its statuses the same way.
|
||||
*/
|
||||
const EXAM_STAGE_LABELS: Record<string, string> = {
|
||||
ELIGIBLE_TO_REGISTER: 'Eligible — Register for a Sitting',
|
||||
EXAM_PAID: 'Exam Paid',
|
||||
REGISTERED: 'Exam Scheduled',
|
||||
ATTENDANCE_CONFIRMED: 'Exam Attendance Confirmed',
|
||||
SITTING: 'Exam In Progress',
|
||||
|
||||
@@ -29,8 +29,8 @@ describe('examStageFor', () => {
|
||||
expect(examStageFor({ status: 'CERTIFICATE_ISSUED' })).toBeNull();
|
||||
});
|
||||
|
||||
it('reads a paid application as eligible to register, not as waiting', () => {
|
||||
expect(examStageFor({ status: 'EXAM_PAID' })).toBe('ELIGIBLE_TO_REGISTER');
|
||||
it('reads a paid application as Exam Paid, not as awaiting a date', () => {
|
||||
expect(examStageFor({ status: 'EXAM_PAID' })).toBe('EXAM_PAID');
|
||||
});
|
||||
|
||||
it('reports a registration whose attendance has not been taken', () => {
|
||||
|
||||
@@ -16,7 +16,7 @@ import type { MyRegistration } from '../exams/pages/ExamsPage';
|
||||
* already recorded — this only names what the records add up to.
|
||||
*/
|
||||
export type ExamStage =
|
||||
| 'ELIGIBLE_TO_REGISTER'
|
||||
| 'EXAM_PAID'
|
||||
| 'REGISTERED'
|
||||
| 'ATTENDANCE_CONFIRMED'
|
||||
| 'SITTING'
|
||||
@@ -41,9 +41,11 @@ export function examStageFor(
|
||||
if (app.status === 'EXAM_PASSED') return 'PASSED';
|
||||
if (app.status === 'EXAM_FAILED') return 'FAILED';
|
||||
|
||||
// EXAM_PAID is "prerequisites done, sitting not yet chosen": the fee has
|
||||
// cleared and nothing is left but for the candidate to pick a session.
|
||||
if (app.status === 'EXAM_PAID') return 'ELIGIBLE_TO_REGISTER';
|
||||
// The fee has cleared and nothing is left but for the candidate to pick a
|
||||
// session. Named after the status rather than after what the candidate
|
||||
// should do next: "Eligible to Register" read as a status of its own and
|
||||
// said less than the plain one.
|
||||
if (app.status === 'EXAM_PAID') return 'EXAM_PAID';
|
||||
|
||||
if (app.status !== 'EXAM_SCHEDULED') return null;
|
||||
|
||||
|
||||
@@ -244,7 +244,7 @@ export const am: Translations = {
|
||||
empty: 'እስካሁን ምንም ፍቃድ አልተሰጥዎትም። ማመልከቻ ከተፈቀደና ከተከፈለ በኋላ እዚህ ይታያል።',
|
||||
},
|
||||
examStage: {
|
||||
ELIGIBLE_TO_REGISTER: "ብቁ ነዎት — ለፈተና ይመዝገቡ",
|
||||
EXAM_PAID: "የፈተና ክፍያ ተከፍሏል",
|
||||
REGISTERED: "የፈተና ቀን፦ {{date}}",
|
||||
ATTENDANCE_CONFIRMED: "መገኘት ተረጋግጧል",
|
||||
SITTING: "ፈተና በመካሄድ ላይ",
|
||||
|
||||
@@ -249,7 +249,7 @@ export const en = {
|
||||
* from the application status alone — see exam-stage.ts.
|
||||
*/
|
||||
examStage: {
|
||||
ELIGIBLE_TO_REGISTER: 'Eligible — register for a sitting',
|
||||
EXAM_PAID: 'Exam Paid',
|
||||
REGISTERED: 'Exam scheduled: {{date}}',
|
||||
ATTENDANCE_CONFIRMED: 'Attendance confirmed',
|
||||
SITTING: 'Exam in progress',
|
||||
|
||||
Reference in New Issue
Block a user