add test batches

This commit is contained in:
root
2026-06-08 23:45:55 -04:00
parent c792b8be05
commit 8d4d610b82
1480 changed files with 22587 additions and 10762 deletions
@@ -28,7 +28,8 @@ class PromotionEnrollmentService
public function __construct(
private PromotionStatusService $statusService,
private PromotionAuditService $audit
) {}
) {
}
/**
* Lists actionable promotion records for a parent (the parent
@@ -53,9 +54,9 @@ class PromotionEnrollmentService
$studentIds = $records->pluck('student_id')->unique()->all();
/** @var EloquentCollection<int,Student> $studentsCollection */
$studentsCollection = ! empty($studentIds)
$studentsCollection = !empty($studentIds)
? Student::query()->whereIn('id', $studentIds)->get()
: new EloquentCollection;
: new EloquentCollection();
$studentsById = $studentsCollection->keyBy('id');
$payload = $records->map(function (StudentPromotionRecord $record) use ($studentsById) {
@@ -79,7 +80,7 @@ class PromotionEnrollmentService
$this->assertActionable($record);
return DB::transaction(function () use ($record, $parentId, $userId) {
if (! $record->enrollment_started_at) {
if (!$record->enrollment_started_at) {
$record->enrollment_started_at = now();
}
$record->enrollment_status = StudentPromotionRecord::ENROLLMENT_IN_PROGRESS;
@@ -116,7 +117,7 @@ class PromotionEnrollmentService
$sanitized = [];
foreach ($steps as $field => $value) {
if (! in_array($field, self::ALLOWED_STEPS, true)) {
if (!in_array($field, self::ALLOWED_STEPS, true)) {
continue;
}
$sanitized[$field] = (bool) $value;
@@ -138,7 +139,7 @@ class PromotionEnrollmentService
return $record;
}
if (! $record->enrollment_started_at) {
if (!$record->enrollment_started_at) {
$record->enrollment_started_at = now();
}
$record->enrollment_status = StudentPromotionRecord::ENROLLMENT_IN_PROGRESS;
@@ -184,7 +185,7 @@ class PromotionEnrollmentService
$this->assertParentOwns($record, $parentId);
$this->assertActionable($record);
if (! $record->enrollmentChecklistComplete()) {
if (!$record->enrollmentChecklistComplete()) {
throw new RuntimeException('Enrollment checklist is incomplete.');
}
@@ -293,12 +294,10 @@ class PromotionEnrollmentService
if ($existing) {
$existing->fill($payload);
$existing->save();
return (int) $existing->getKey();
}
$created = Enrollment::query()->create($payload);
return $created ? (int) $created->getKey() : null;
}
@@ -308,7 +307,7 @@ class PromotionEnrollmentService
'promotion_id' => (int) $record->getKey(),
'student_id' => (int) $record->student_id,
'student_name' => $student
? trim((string) $student->firstname.' '.(string) $student->lastname)
? trim((string) $student->firstname . ' ' . (string) $student->lastname)
: null,
'current_level' => $record->current_level_name,
'promoted_level' => $record->promoted_level_name,
@@ -344,13 +343,12 @@ class PromotionEnrollmentService
true
);
});
if (! $actionable) {
if (!$actionable) {
return null;
}
$level = $actionable->promoted_level_name ?: 'the next level';
$deadline = $actionable->enrollment_deadline?->toDateString();
$deadlineText = $deadline ? 'by '.$deadline : 'as soon as possible';
$deadlineText = $deadline ? 'by ' . $deadline : 'as soon as possible';
return sprintf(
'Your child is eligible for promotion to %s. Please complete enrollment for the new school year %s.',
$level,
@@ -374,7 +372,7 @@ class PromotionEnrollmentService
private function assertActionable(StudentPromotionRecord $record): void
{
$actionable = StudentPromotionRecord::parentActionableStatuses();
if (! in_array($record->promotion_status, $actionable, true)) {
if (!in_array($record->promotion_status, $actionable, true)) {
throw new RuntimeException(sprintf(
'Promotion record is not actionable in status "%s".',
$record->promotion_status
@@ -385,10 +383,9 @@ class PromotionEnrollmentService
private function guessNextSchoolYear(): ?string
{
$current = (string) (Configuration::getConfigValueByKey('school_year') ?? '');
if (! preg_match('/^(\d{4})-(\d{4})$/', $current, $m)) {
if (!preg_match('/^(\d{4})-(\d{4})$/', $current, $m)) {
return null;
}
return ((int) $m[1] + 1).'-'.((int) $m[2] + 1);
return ((int) $m[1] + 1) . '-' . ((int) $m[2] + 1);
}
}