
   FAIL  Tests\Unit\ApiDocsServiceTest
  Γ¿» public bootstrap matches ci public flags                                                                     0.04s  
  Γ¿» full bootstrap enables try and welcome                                                                       0.02s  

   PASS  Tests\Unit\ApiLoginSecurityServiceTest
  Γ£ô roles object map preserves role names                                                                        0.03s  
  Γ£ô build login response includes teacher class context                                                          0.02s  
  Γ£ô build login response includes teacher assistant class context

   PASS  Tests\Unit\AuthSessionServiceTest
  Γ£ô sanitize redirect relative
  Γ£ô sanitize redirect empty
  Γ£ô sanitize rejects protocol relative

   PASS  Tests\Unit\Http\Controllers\Api\AttendanceCommentTemplateControllerTest
  Γ£ô index returns success json                                                                                   0.19s  
  Γ£ô index passes active only true                                                                                0.02s  
  Γ£ô show returns template                                                                                        0.02s  
  Γ£ô store returns created response                                                                               0.03s  
  Γ£ô update returns success response                                                                              0.02s  
  Γ£ô destroy returns success response                                                                             0.02s  
  Γ£ô list data returns templates key                                                                              0.02s  

   PASS  Tests\Unit\Grading\ScoreValueValidatorTest
  Γ£ô blank score remains null
  Γ£ô score must be inside range
  Γ£ô status inference preserves legacy pending behavior

   PASS  Tests\Unit\Listeners\DeleteUnverifiedUserListenerTest
  Γ£ô listener invokes service                                                                                     0.02s  

   FAIL  Tests\Unit\AdditionalChargeTest
  Γ¿» scope by parent term filters status and orders desc
  Γ¿» mark applied updates status and invoice
  Γ¿» list all for term falls back to year
  Γ¿» list all for term filters by search query

   FAIL  Tests\Unit\AdminNotificationSubjectModelTest
  Γ¿» admin relationship returns user
  Γ¿» timestamps are set on create

   FAIL  Tests\Unit\AttendanceCommentTemplateModelTest
  Γ¿» get active templates filters and orders

   FAIL  Tests\Unit\AttendanceDataTest
  Γ¿» get attendance by class and get attendance
  Γ¿» unreported term rows filters unreported
  Γ¿» get unreported absences and lates groups rows
  Γ¿» mark reported and notified updates flags

   FAIL  Tests\Unit\AttendanceDayTest
  Γ¿» get or create draft creates once and reuses
  Γ¿» find by section date returns model or null
  Γ¿» submit sets submitted fields
  Γ¿» finalize is alias to submit
  Γ¿» publish sets published fields
  Γ¿» reopen sets reopen fields and status
  Γ¿» reopen rejects invalid status
  Γ¿» is finalized true for published or legacy finalized

   FAIL  Tests\Unit\Models\AttendanceEmailTemplateTest
  Γ¿» get template returns exact active variant when available
  Γ¿» get template falls back to default when requested variant missing
  Γ¿» get template ignores inactive exact variant and uses active default
  Γ¿» get template returns null when no active template exists

   PASS  Tests\Unit\Models\AttendanceRecordTest
  Γ£ô model metadata is converted                                                                                  0.08s  
  Γ£ô model class loads

   PASS  Tests\Unit\Models\AttendanceTrackingTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\AuthorizedUserTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\BadgePrintLogTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\CalendarTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   FAIL  Tests\Unit\Models\ClassPrepAdjustmentTest
  Γ¿» model metadata is converted
  Γ£ô model class loads

   FAIL  Tests\Unit\Models\ClassPreparationLogTest
  Γ¿» model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\ClassProgressAttachmentTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\ClassProgressReportTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\ClassSectionTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\ClassTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   FAIL  Tests\Unit\Models\CommunicationLogTest
  Γ¿» model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\CompetitionClassWinnerTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\CompetitionScoreTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\CompetitionTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\CompetitionWinnerTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\ConfigurationTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\ContactUsTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\CurrentFlagTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\DiscountUsageTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\DiscountVoucherTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\EarlyDismissalSignatureTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   FAIL  Tests\Unit\EmailTemplateTest
  Γ¿» get template returns exact variant when active
  Γ¿» get template falls back to default variant
  Γ¿» get template ignores inactive templates and can return null
  Γ¿» get template prefers exact variant over default

   PASS  Tests\Unit\Models\EmergencyContactTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\EnrollmentTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   FAIL  Tests\Unit\Models\EventChargesTest
  Γ¿» model metadata is converted                                                                                  0.01s  
  Γ£ô model class loads

   PASS  Tests\Unit\Models\EventTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\ExamDraftTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   FAIL  Tests\Unit\Models\ExamTest
  Γ¿» model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\ExpenseTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\FamilyCommPrefTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\FamilyGuardianTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\FamilyStudentTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\FamilyTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   FAIL  Tests\Unit\Models\FinalExamTest
  Γ¿» model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\FinalScoreTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\GradingLockTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   FAIL  Tests\Unit\Models\HomeworkTest
  Γ¿» model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\IncidentTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\InventoryCategoryTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\InventoryItemTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\InventoryMovementTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\InvoiceEventTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\InvoiceStudentListTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   FAIL  Tests\Unit\Models\InvoiceTest
  Γ¿» model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\IpAttemptTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\LateSlipLogTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\LoginActivityTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\ManualPaymentTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\MessageTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   FAIL  Tests\Unit\Models\MidtermExamTest
  Γ¿» model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\MissingScoreOverrideTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\NavItemTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\NotificationTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\ParentAttendanceReportTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\ParentMeetingScheduleTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\ParentNotificationTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\ParentTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   FAIL  Tests\Unit\Models\ParticipationTest
  Γ¿» model metadata is converted
  Γ£ô model class loads

   FAIL  Tests\Unit\Models\PasswordResetRequestTest
  Γ¿» model metadata is converted
  Γ£ô model class loads

   FAIL  Tests\Unit\Models\PasswordResetTest
  Γ¿» model metadata is converted
  Γ£ô model class loads

   FAIL  Tests\Unit\Models\PayPalPaymentTest
  Γ¿» model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\PaymentErrorTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\PaymentNotificationLogTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   FAIL  Tests\Unit\Models\PaymentTest
  Γ¿» model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\PaymentTransactionTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\PaypalTransactionTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\PermissionTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\PlacementBatchTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\PlacementLevelTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\PlacementScoreTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\PreferencesTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\PrintRequestTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\ProjectTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\PromotionQueueTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\PurchaseOrderItemTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\PurchaseOrderTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   FAIL  Tests\Unit\Models\QuizTest
  Γ¿» model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\RefundTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\ReimbursementBatchAdminFileTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\ReimbursementBatchItemTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\ReimbursementBatchTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\ReimbursementTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\RoleNavItemTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\RolePermissionTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\RoleTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   FAIL  Tests\Unit\Models\ScoreCommentTest
  Γ¿» model metadata is converted
  Γ£ô model class loads

   FAIL  Tests\Unit\Models\SectionTest
  Γ¿» model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\SemesterScoreTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\SettingsTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\StaffAttendanceTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   FAIL  Tests\Unit\Models\StaffTest
  Γ¿» model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\StatsTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\StudentAllergyTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\StudentClassTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\StudentMedicalConditionTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\StudentTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\SubjectCurriculumTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\TeacherClassTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\TeacherSubmissionNotificationHistoryTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   FAIL  Tests\Unit\Models\TeacherTest
  Γ¿» model metadata is converted                                                                                  0.01s  
  Γ£ô model class loads

   PASS  Tests\Unit\Models\UserNotificationTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\UserRoleTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   FAIL  Tests\Unit\Models\UserTest
  Γ¿» model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\WhatsappGroupLinkTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\WhatsappGroupMembershipTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Models\WhatsappInviteLogTest
  Γ£ô model metadata is converted
  Γ£ô model class loads

   PASS  Tests\Unit\Http\Requests\AttendanceCommentTemplate\StoreAttendanceCommentTemplateRequestTest
  Γ£ô rules pass with valid data                                                                                   0.03s  
  Γ£ô rules fail when required fields missing                                                                      0.03s  
  Γ£ô rules fail when max score less than min score                                                                0.02s  
  Γ£ô rules fail when score out of range                                                                           0.03s  

   PASS  Tests\Unit\Http\Requests\AttendanceCommentTemplate\UpdateAttendanceCommentTemplateRequestTest
  Γ£ô rules pass with partial valid data                                                                           0.03s  
  Γ£ô rules pass when both scores valid                                                                            0.02s  
  Γ£ô rules fail when both scores invalid relation                                                                 0.03s  
  Γ£ô rules fail on invalid boolean                                                                                0.02s  

   FAIL  Tests\Unit\Resources\ClassProgress\ClassProgressReportResourceTest
  Γ¿» resource has expected keys

   PASS  Tests\Unit\Resources\Frontend\FrontendPageResourceTest
  Γ£ô resource returns page                                                                                        0.03s  

   PASS  Tests\Unit\Resources\Frontend\PageContentResourceTest
  Γ£ô resource returns content                                                                                     0.02s  

   FAIL  Tests\Unit\Resources\Messaging\MessageResourceTest
  Γ¿» resource returns expected shape                                                                              8.27s  

   PASS  Tests\Unit\Resources\Messaging\RecipientResourceTest
  Γ£ô resource returns expected shape                                                                              0.03s  

   PASS  Tests\Unit\Resources\Notifications\NotificationResourceTest
  Γ£ô resource returns expected shape                                                                              0.03s  

   PASS  Tests\Unit\Resources\Notifications\UserNotificationResourceTest
  Γ£ô resource returns expected shape                                                                              0.03s  

   PASS  Tests\Unit\Resources\Roles\PermissionResourceTest
  Γ£ô resource shape                                                                                               0.03s  

   PASS  Tests\Unit\Resources\Roles\RolePermissionResourceTest
  Γ£ô resource shape                                                                                               0.03s  

   PASS  Tests\Unit\Resources\Roles\RoleResourceTest
  Γ£ô resource shape                                                                                               0.03s  

   PASS  Tests\Unit\Resources\Roles\UserWithRolesResourceTest
  Γ£ô resource shape                                                                                               0.03s  

   PASS  Tests\Unit\Resources\Settings\SchoolCalendarEventResourceTest
  Γ£ô resource returns expected shape                                                                              0.03s  

   PASS  Tests\Unit\Resources\Settings\SettingsResourceTest
  Γ£ô resource returns expected shape                                                                              0.02s  

   FAIL  Tests\Unit\Resources\Staff\StaffResourceTest
  Γ¿» resource returns expected shape                                                                              0.03s  

   PASS  Tests\Unit\Resources\Support\ContactMessageResourceTest
  Γ£ô resource returns expected shape                                                                              0.03s  

   FAIL  Tests\Unit\Resources\Support\SupportRequestResourceTest
  Γ¿» resource returns expected shape                                                                              0.03s  

   PASS  Tests\Unit\Resources\Ui\UiStyleResourceTest
  Γ£ô resource returns expected shape                                                                              0.03s  

   FAIL  Tests\Unit\Services\Administrator\AdminNotificationSubjectServiceTest
  Γ¿» alerts data includes admins

   FAIL  Tests\Unit\Services\Administrator\AdminNotificationUserServiceTest
  Γ¿» fetch admin notification users excludes parents

   FAIL  Tests\Unit\Services\Administrator\AdminPrintRecipientServiceTest
  Γ¿» data returns admins and assigned

   FAIL  Tests\Unit\Services\Administrator\AdministratorAbsenceServiceTest
  Γ¿» submit requires reason

   FAIL  Tests\Unit\Services\Administrator\AdministratorDashboardServiceTest
  Γ¿» delegates to metrics and search

   FAIL  Tests\Unit\Services\Administrator\AdministratorEnrollmentEventServiceTest
  Γ¿» dispatch grouped events with empty groups

   FAIL  Tests\Unit\Services\Administrator\AdministratorEnrollmentQueryServiceTest
  Γ¿» enrollment withdrawal data returns structure

   FAIL  Tests\Unit\Services\Administrator\AdministratorEnrollmentRefundServiceTest
  Γ¿» process refunds reports missing invoice

   FAIL  Tests\Unit\Services\Administrator\AdministratorEnrollmentServiceTest
  Γ¿» delegates to query and status services

   FAIL  Tests\Unit\Services\Administrator\AdministratorEnrollmentStatusServiceTest
  Γ¿» update statuses requires payload

   FAIL  Tests\Unit\Services\Administrator\AdministratorMetricsServiceTest
  Γ¿» metrics returns counts

   FAIL  Tests\Unit\Services\Administrator\AdministratorNotificationServiceTest
  Γ¿» delegates to subject and print services

   FAIL  Tests\Unit\Services\Administrator\AdministratorSharedServiceTest
  Γ¿» get previous school year

   FAIL  Tests\Unit\Services\Administrator\AdministratorTeacherSubmissionServiceTest
  Γ¿» delegates to report and notification

   FAIL  Tests\Unit\Services\Administrator\AdministratorUserSearchServiceTest
  Γ¿» empty query returns no results

   FAIL  Tests\Unit\Services\Administrator\TeacherSubmissionNotificationServiceTest
  Γ¿» send requires targets

   FAIL  Tests\Unit\Services\Administrator\TeacherSubmissionReportServiceTest
  Γ¿» report returns summary

   FAIL  Tests\Unit\Services\Administrator\TeacherSubmissionSupportServiceTest
  Γ¿» submission status labels
  Γ¿» build missing items

   FAIL  Tests\Unit\Services\AssignmentServiceTest
  Γ¿» get current semester returns config value
  Γ¿» get current school year returns config value
  Γ¿» get assignments overview returns grouped sections
  Γ¿» get assignments overview uses fallback config values when metadata missing
  Γ¿» get assignments overview excludes inactive students
  Γ¿» get assignments overview sorts sections by name
  Γ¿» get assignments overview collects school years descending
  Γ¿» store assignment creates new row
  Γ¿» store assignment updates existing row
  Γ¿» get class assignment data returns all sections
  Γ¿» get class assignment data deduplicates teacher names

   FAIL  Tests\Unit\Services\Assignment\AssignmentContextServiceTest
  Γ¿» get current term values

   FAIL  Tests\Unit\Services\Assignment\AssignmentDataLoaderServiceTest
  Γ¿» load teacher classes includes teacher name
  Γ¿» load student classes filters inactive

   FAIL  Tests\Unit\Services\Assignment\AssignmentMetaServiceTest
  Γ¿» get school years uses fallback
  Γ¿» get school years returns distinct sorted
  Γ¿» first non empty returns first value

   FAIL  Tests\Unit\Services\Assignment\AssignmentSectionServiceTest
  Γ¿» get section names map

   FAIL  Tests\Unit\Services\AttendanceManagement\AttendanceManagementServiceTest
  Γ¿» badge scan persists school year and semester for the event date
  Γ¿» dashboard derives academic context for legacy rows and applies filters

   FAIL  Tests\Unit\Services\AttendanceTracking\AttendanceCaseQueryServiceTest
  Γ¿» returns not found when student missing

   FAIL  Tests\Unit\Services\AttendanceTracking\AttendanceCommunicationSupportServiceTest
  Γ¿» compose requires student id
  Γ¿» get violation dates for student

   FAIL  Tests\Unit\Services\AttendanceTracking\AttendanceEmailComposerServiceTest
  Γ¿» render template replaces tokens
  Γ¿» pick variant fallback

   FAIL  Tests\Unit\Services\AttendanceTracking\AttendanceNotificationLogServiceTest
  Γ¿» log notification creates and updates

   FAIL  Tests\Unit\Services\AttendanceTracking\AttendanceNotificationWorkflowServiceTest
  Γ¿» record requires parent email

   FAIL  Tests\Unit\Services\AttendanceTracking\AttendanceParentLookupServiceTest
  Γ¿» get primary parent for student
  Γ¿» get secondary parent falls back to parent row

   FAIL  Tests\Unit\Services\AttendanceTracking\AttendancePendingViolationServiceTest
  Γ¿» returns error when no students

   FAIL  Tests\Unit\Services\AttendanceTracking\AttendanceTrackingServiceTest
  Γ¿» service instantiates

   FAIL  Tests\Unit\Services\AttendanceTracking\AttendanceViolationStudentResolverServiceTest
  Γ¿» resolve for school year returns students

   FAIL  Tests\Unit\Services\AttendanceTracking\ViolationRuleEngineServiceTest
  Γ¿» school year helpers
  Γ¿» window weeks for violation code

   FAIL  Tests\Feature\Api\Attendance\AdminAttendanceApiControllerTest
  Γ¿» daily data returns success

   FAIL  Tests\Unit\Services\Attendance\AttendanceAutoPublishJobServiceTest
  Γ¿» run publishes due records

   PASS  Tests\Unit\Services\Attendance\AttendanceAutoPublishServiceTest
  Γ£ô second sunday after end of day                                                                               0.04s  
  Γ£ô second sunday backward date                                                                                  0.04s  

   FAIL  Tests\Unit\Services\Attendance\AttendanceCommentServiceTest
  Γ¿» comment from score uses template and name
  Γ¿» comment from score falls back to this student

   FAIL  Tests\Unit\Services\Attendance\AttendanceConsequenceServiceTest
  Γ¿» send follow up requires parent email
  Γ¿» send follow up marks tracking and notifies

   FAIL  Tests\Unit\Services\Attendance\AttendanceDailySummaryServiceTest
  Γ¿» send absentees summary notifies parent

   FAIL  Tests\Unit\Services\Attendance\AttendancePolicyServiceTest
  Γ¿» teacher can edit draft
  Γ¿» teacher cannot edit finalized
  Γ¿» admin like by permission
  Γ¿» can manage early dismissals for teacher

   FAIL  Tests\Unit\Services\Attendance\AttendanceQueryServiceTest
  Γ¿» teacher grid returns section labels and grid

   FAIL  Tests\Unit\Services\Attendance\AttendanceRecordSyncServiceTest
  Γ¿» update attendance record adjusts totals
  Γ¿» add new attendance record creates row

   FAIL  Tests\Unit\Services\Attendance\AttendanceSemesterRangeServiceTest
  Γ¿» get semester range
  Γ¿» build sunday list returns sundays

   FAIL  Tests\Unit\Services\Attendance\AttendanceServiceTest
  Γ¿» update attendance management throws when locked
  Γ¿» update attendance management saves row

   FAIL  Tests\Unit\Services\Attendance\AttendanceSummaryRebuildServiceTest
  Γ¿» rebuild inserts summary rows

   FAIL  Tests\Unit\Services\Attendance\LateSlipLogCommandServiceTest
  Γ¿» delete removes log

   FAIL  Tests\Unit\Services\Attendance\LateSlipLogQueryServiceTest
  Γ¿» paginate filters by date

   FAIL  Tests\Unit\Services\Attendance\SemesterRangeServiceTest
  Γ£ô normalize semester
  Γ¿» get school year range
  Γ£ô build sunday list

   FAIL  Tests\Feature\Api\Attendance\StaffAttendanceApiControllerTest
  Γ¿» month data returns success
  Γ¿» admins data returns success

   FAIL  Tests\Unit\Services\Attendance\StaffAttendanceServiceTest
  Γ¿» month data returns sections and days

   FAIL  Tests\Unit\Services\Attendance\StudentAttendanceWriterServiceTest
  Γ¿» resolve student school id from student
  Γ¿» save or update updates existing and syncs record

   FAIL  Tests\Feature\Api\Attendance\TeacherAttendanceApiControllerTest
  Γ¿» teacher grid endpoint returns success
  Γ¿» teacher form endpoint returns success or validation message

   FAIL  Tests\Unit\Services\Attendance\TeacherAttendanceSubmissionServiceTest
  Γ¿» submit requires attendance data

   FAIL  Tests\Unit\Services\Auth\PasswordResetCleanupServiceTest
  Γ¿» cleanup removes old requests

   FAIL  Tests\Unit\Services\Auth\PermissionCheckServiceTest
  Γ¿» has permission returns true when assigned

   FAIL  Tests\Unit\Services\Auth\RegistrationCaptchaServiceTest
  Γ¿» generate sets cache value
  Γ¿» verify and clear

   FAIL  Tests\Unit\Services\Auth\RegistrationFormatterServiceTest
  Γ¿» format normalizes parent fields
  Γ¿» format includes second parent when present

   FAIL  Tests\Unit\Services\Auth\RegistrationServiceTest
  Γ¿» register creates parent user
  Γ¿» register rejects pending activation

   FAIL  Tests\Unit\Services\Auth\UserRoleServiceTest
  Γ¿» has permission for crud checks roles

   FAIL  Tests\Unit\Services\Badges\BadgeFormDataServiceTest
  Γ¿» build formats users and assigns latest class for teacherish roles                                            0.04s  
  Γ¿» build defaults invalid active role to teacher                                                                0.02s  

   FAIL  Tests\Unit\Services\Badges\BadgePdfServiceTest
  Γ¿» generate returns pdf response and logs prints                                                                0.04s  
  Γ¿» generate returns empty state pdf when no valid users found                                                   0.02s  
  Γ¿» generate deduplicates same badge content                                                                     0.02s  

   PASS  Tests\Unit\Services\Badges\BadgePrintLogServiceTest
  Γ£ô get status normalizes ids before calling model                                                               0.04s  
  Γ£ô log normalizes ids and returns inserted count                                                                0.03s  
  Γ£ô log safely swallows exceptions and logs error                                                                0.04s  

   PASS  Tests\Unit\Services\Badges\BadgeTextFormatterTest
  Γ£ô normalize ids filters and deduplicates                                                                       0.04s  
  Γ£ô norm removes extra spaces and control chars                                                                  0.02s  
  Γ£ô format role handles special words and acronyms                                                               0.02s  
  Γ£ô format roles csv formats each role                                                                           0.02s  
  Γ£ô format class normalizes known values                                                                         0.03s  
  Γ£ô resolve role prefers first available candidate                                                               0.02s  
  Γ£ô to pdf returns string                                                                                        0.03s  
  Γ£ô fit text returns size within bounds                                                                          0.04s  

   FAIL  Tests\Unit\Services\Billing\BalanceCalculationServiceTest
  Γ¿» calculate family account applies balance formula
  Γ¿» overpayment records account credit
  Γ¿» student rows include event charges

   FAIL  Tests\Unit\Services\Billing\BillingTotalsServiceTest
  Γ¿» event and additional subtotals
  Γ¿» additional subtotal by parent sums applied charges
  Γ¿» event subtotals by student groups amounts

   FAIL  Tests\Unit\Services\Billing\ChargeServiceTest
  Γ¿» create extra charge blocks duplicate
  Γ¿» create event charge blocks duplicate
  Γ¿» create event charge succeeds
  Γ¿» cancel event charge zeros charge and creates credit
  Γ¿» apply extra charge marks applied
  Γ¿» list for parent returns both charge types

   PASS  Tests\Unit\Services\BroadcastEmail\BroadcastEmailComposerServiceTest
  Γ£ô sanitize removes script and events                                                                           0.03s  
  Γ£ô compose replaces name when personalized                                                                      0.02s  

   FAIL  Tests\Unit\Services\BroadcastEmail\BroadcastEmailRecipientServiceTest
  Γ¿» parents with emails filters missing email
  Γ¿» recipients by ids returns names

   PASS  Tests\Unit\Services\BroadcastEmail\BroadcastEmailSenderOptionsServiceTest
  Γ£ô list options from env                                                                                        0.03s  

   FAIL  Tests\Unit\Services\CertificateAdminServiceTest
  Γ¿» dashboard groups students and uses saved decisions as source of truth
  Γ¿» issue certificates reuses existing record and creates new one for unissued pass students
  Γ¿» audit log returns year summary and filtered records

   FAIL  Tests\Unit\Services\ClassPrep\ClassRosterServiceTest
  Γ¿» list students by class

   FAIL  Tests\Unit\Services\ClassPrep\StickerCountServiceTest
  Γ¿» list all returns totals excluding youth
  Γ¿» list for class limits results

   FAIL  Tests\Unit\Services\ClassPreparation\ClassPreparationAdjustmentServiceTest
  Γ¿» apply adjustments updates counts

   FAIL  Tests\Unit\Services\ClassPreparation\ClassPreparationAdjustmentWriterServiceTest
  Γ¿» save adjustments persists allowed items

   FAIL  Tests\Unit\Services\ClassPreparation\ClassPreparationCalculatorServiceTest
  Γ¿» get class level by section
  Γ¿» calculate prep items for lower grades

   FAIL  Tests\Unit\Services\ClassPreparation\ClassPreparationContextServiceTest
  Γ¿» has roster for semester

   FAIL  Tests\Unit\Services\ClassPreparation\ClassPreparationInventoryServiceTest
  Γ¿» build availability uses max value

   FAIL  Tests\Unit\Services\ClassPreparation\ClassPreparationLogServiceTest
  Γ¿» has prep changed detects diff
  Γ¿» create log and get latest

   FAIL  Tests\Unit\Services\ClassPreparation\ClassPreparationPrintServiceTest
  Γ¿» print prep creates log
  Γ¿» print prep handles log failure

   FAIL  Tests\Unit\Services\ClassPreparation\ClassPreparationRosterServiceTest
  Γ¿» get class section student counts
  Γ¿» get student count for section

   FAIL  Tests\Unit\Services\ClassPreparation\ClassPreparationServiceTest
  Γ¿» list prep returns sections and totals
  Γ¿» mark printed creates logs

   FAIL  Tests\Unit\Services\ClassProgress\ClassProgressAttachmentServiceTest
  Γ¿» store attachments persists records

   PASS  Tests\Unit\Services\ClassProgress\ClassProgressMetaServiceTest
  Γ£ô subject sections return configured values                                                                    0.03s  

   FAIL  Tests\Unit\Services\ClassProgress\ClassProgressMutationServiceTest
  Γ¿» create reports persists multiple subjects
  Γ¿» update report changes status
  Γ¿» delete report removes record

   FAIL  Tests\Unit\Services\ClassProgress\ClassProgressQueryServiceTest
  Γ¿» list reports filters by class section

   PASS  Tests\Unit\Services\ClassProgress\ClassProgressRuleServiceTest
  Γ£ô build unit chapter summary limits length
  Γ£ô ensure week end defaults to six days

   FAIL  Tests\Unit\Services\ClassSections\ClassAttendanceServiceTest
  Γ¿» get attendance payload includes students

   FAIL  Tests\Unit\Services\ClassSections\ClassSectionCommandServiceTest
  Γ¿» create update delete

   FAIL  Tests\Unit\Services\ClassSections\ClassSectionQueryServiceTest
  Γ¿» list filters by search

   FAIL  Tests\Unit\Services\ClassSections\ClassSectionSeedServiceTest
  Γ¿» seed defaults creates rows

   FAIL  Tests\Unit\Services\Communication\CommunicationTemplateServiceTest
  Γ¿» list active templates maps columns

   FAIL  Tests\Unit\Services\CompetitionScores\CompetitionScoresSaveServiceTest
  Γ¿» filter scores rejects non integers
  Γ¿» save scores upserts

   FAIL  Tests\Unit\Services\Dashboard\DashboardRouteServiceTest
  Γ¿» resolve returns fallback when no roles
  Γ¿» resolve returns dashboard route for role

   FAIL  Tests\Unit\Services\Discounts\DiscountApplyServiceTest
  Γ¿» apply voucher returns error when no remaining uses

   FAIL  Tests\Unit\Services\Email\EmailExtractorServiceTest
  Γ¿» list and compare emails

   PASS  Tests\Unit\Services\Email\EmailProfileServiceTest
  Γ£ô resolve profile maps aliases                                                                                 0.04s  
  Γ£ô env key from profile                                                                                         0.02s  
  Γ£ô sanitize reply to name                                                                                       0.02s  

   FAIL  Tests\Unit\Services\EmergencyContacts\EmergencyContactDirectoryServiceTest
  Γ¿» groups include parent students contacts and phones

   PASS  Tests\Unit\Services\Events\EventCategoryServiceTest
  Γ£ô categories returns list                                                                                      0.03s  

   FAIL  Tests\Unit\Services\Events\EventChargeQueryServiceTest
  Γ¿» list returns paginated charges

   FAIL  Tests\Unit\Services\Events\EventChargeServiceTest
  Γ¿» seed charges creates event charges

   FAIL  Tests\Unit\Services\Events\EventListServiceTest
  Γ¿» list filters active events

   FAIL  Tests\Unit\Services\Events\EventManagementServiceTest
  Γ¿» update returns not found

   FAIL  Tests\Unit\Services\Events\EventStudentChargeServiceTest
  Γ¿» list students with charges

   FAIL  Tests\Unit\Services\Exams\ExamDraftTeacherServiceTest
  Γ¿» store creates draft

   FAIL  Tests\Unit\Services\Expenses\ExpenseReceiptServiceTest
  Γ¿» store receipt returns filename and url

   FAIL  Tests\Unit\Services\Expenses\ExpenseStaffServiceTest
  Γ¿» list staff users excludes parents

   FAIL  Tests\Unit\Services\ExtraCharges\ExtraChargesMetaServiceTest
  Γ¿» get school years uses fallback
  Γ¿» get school years merges sources

   FAIL  Tests\Unit\Services\Families\FamilyFinanceServiceTest
  Γ¿» load financials for parents returns summary

   FAIL  Tests\Unit\Services\Families\FamilyMutationServiceTest
  Γ¿» bootstrap creates family
  Γ¿» attach second by email creates guardian
  Γ¿» set primary home updates flag

   FAIL  Tests\Unit\Services\Families\FamilyNotificationServiceTest
  Γ¿» send compose email delegates to dispatcher

   FAIL  Tests\Unit\Services\Families\FamilyQueryServiceTest
  Γ¿» admin index returns families
  Γ¿» search suggestions returns items
  Γ¿» family card returns payload

   PASS  Tests\Unit\Services\FeeCalculationServiceTest
  Γ£ô calculate refund returns calculator amount                                                                   0.04s  

   PASS  Tests\Unit\Services\Fees\FeeGradeServiceTest
  Γ£ô grade level parsing                                                                                          0.04s  
  Γ£ô compare grades orders numeric then suffix                                                                    0.02s  

   FAIL  Tests\Unit\Services\Fees\FeeRefundCalculatorServiceTest
  Γ¿» calculate refund caps at total paid
  Γ¿» returns zero when parent has no payments
  Γ¿» returns zero when no withdrawn students
  Γ¿» withdrawn student breakdown carries assigned tuition fee
  Γ¿» multi student family only refunds withdrawn students
  Γ¿» withdrawal after deadline is not eligible
  Γ¿» missing withdrawal date is skipped with reason

   FAIL  Tests\Unit\Services\Fees\FeeRefundDetailServiceTest
  Γ¿» calculate refund details returns amount

   FAIL  Tests\Unit\Services\Fees\FeeStudentFeeServiceTest
  Γ¿» total tuition fee applies tiers and youth fee
  Γ¿» assign fees stores tuition fee and fee category on each student
  Γ¿» calculate breakdown includes billable and non billable students
  Γ¿» is billable and is withdrawn classifiers

   FAIL  Tests\Unit\Services\Fees\TuitionCalculationServiceTest
  Γ¿» calculate returns family total and per student breakdown
  Γ¿» calculate excludes non billable students from family total
  Γ¿» calculate applies per student discount
  Γ¿» family total helper

   FAIL  Tests\Unit\Services\Files\ExamDraftDownloadNameServiceTest
  Γ¿» build returns slugified name

   FAIL  Tests\Unit\Services\Files\FileServeServiceTest
  Γ¿» meta returns file metadata
  Γ¿» serve inline returns 304 when etag matches
  Γ¿» serve inline rejects invalid extension

   FAIL  Tests\Unit\Services\Finance\FinancialChartServiceTest
  Γ¿» generate charts returns null in tests

   FAIL  Tests\Unit\Services\Finance\FinancialPaymentServiceTest
  Γ¿» payment aggregates exclude void statuses

   FAIL  Tests\Unit\Services\Finance\FinancialPdfReportServiceTest
  Γ¿» build pdf returns bytes

   FAIL  Tests\Unit\Services\Finance\FinancialReportServiceTest
  Γ¿» report returns grouped data

   FAIL  Tests\Unit\Services\Finance\FinancialSchoolYearServiceTest
  Γ¿» list years returns distinct sorted years

   FAIL  Tests\Unit\Services\Finance\FinancialSummaryServiceTest
  Γ¿» summary calculates totals

   FAIL  Tests\Unit\Services\Finance\FinancialUnpaidParentsServiceTest
  Γ¿» unpaid parents returns installment data

   FAIL  Tests\Unit\Services\Frontend\ContactSubmissionServiceTest
  Γ¿» submit creates contact record

   PASS  Tests\Unit\Services\Frontend\FrontendPageServiceTest
  Γ£ô page returns payload                                                                                         0.03s  

   FAIL  Tests\Unit\Services\Frontend\LandingPageContextServiceTest
  Γ¿» context returns config values

   FAIL  Tests\Unit\Services\Frontend\LandingPageParentDashboardServiceTest
  Γ¿» summary returns parent payload

   FAIL  Tests\Unit\Services\Frontend\LandingPageRoleServiceTest
  Γ¿» resolve role returns guest when missing
  Γ¿» resolve role returns first role

   FAIL  Tests\Unit\Services\Frontend\LandingPageServiceTest
  Γ¿» dashboard for user returns guest
  Γ¿» dashboard for user returns admin

   FAIL  Tests\Unit\Services\Frontend\LandingPageTeacherSummaryServiceTest
  Γ¿» summary returns dashboard payload

   FAIL  Tests\Unit\Services\Frontend\ProfileIconServiceTest
  Γ¿» build for user returns initials

   PASS  Tests\Unit\Services\Frontend\StaticPageServiceTest
  Γ£ô load returns content                                                                                         0.04s  
  Γ£ô load missing returns error                                                                                   0.03s  

   FAIL  Tests\Unit\Services\Grading\BelowSixtyEmailServiceTest
  Γ¿» send requires student id
  Γ¿» send delivers to guardians

   FAIL  Tests\Unit\Services\Grading\GradingBelowSixtyServiceTest
  Γ¿» list rows returns students below sixty

   FAIL  Tests\Unit\Services\Grading\GradingLockServiceTest
  Γ¿» toggle creates lock
  Γ¿» lock all locks sections

   FAIL  Tests\Unit\Services\Grading\HomeworkTrackingServiceTest
  Γ¿» report returns teacher rows

   FAIL  Tests\Unit\Services\Incidents\IncidentAnalysisServiceTest
  Γ¿» analyze groups incidents by student

   FAIL  Tests\Unit\Services\Incidents\IncidentHistoryServiceTest
  Γ¿» processed enriches grade and updater names

   FAIL  Tests\Unit\Services\Incidents\IncidentLookupServiceTest
  Γ¿» grade options with active students
  Γ¿» updater name map

   FAIL  Tests\Unit\Services\Inventory\InventoryCategoryServiceTest
  Γ¿» create category
  Γ¿» update category

   FAIL  Tests\Unit\Services\Inventory\InventoryItemServiceTest
  Γ¿» create creates item and movement
  Γ¿» update updates item

   FAIL  Tests\Unit\Services\Inventory\InventoryMovementServiceTest
  Γ¿» create movement

   FAIL  Tests\Unit\Services\Inventory\InventorySummaryServiceTest
  Γ¿» summary returns items

   FAIL  Tests\Unit\Services\Inventory\InventoryTeacherDistributionServiceTest
  Γ¿» form data requires teacher role
  Γ¿» distribute success

   FAIL  Tests\Unit\Services\Inventory\SupplierServiceTest
  Γ¿» create supplier
  Γ¿» update supplier

   FAIL  Tests\Unit\Services\Inventory\SupplyCategoryServiceTest
  Γ¿» create category
  Γ¿» update category

   FAIL  Tests\Unit\Services\Invoices\InvoiceConfigServiceTest
  Γ¿» config service reads values

   FAIL  Tests\Unit\Services\Invoices\InvoiceGenerationServiceTest
  Γ¿» generate invoice creates new invoice

   FAIL  Tests\Unit\Services\Invoices\InvoiceGradeServiceTest
  Γ¿» grade parsing handles common cases
  Γ¿» compare grades orders numeric then suffix

   FAIL  Tests\Unit\Services\Invoices\InvoiceManagementServiceTest
  Γ¿» management data returns parent invoice summary

   FAIL  Tests\Unit\Services\Invoices\InvoicePaymentServiceTest
  Γ¿» parent invoice summary includes refunds and last payment

   FAIL  Tests\Unit\Services\Invoices\InvoicePdfServiceTest
  Γ¿» build pdf returns bytes

   FAIL  Tests\Unit\Services\Invoices\InvoiceServiceTest
  Γ¿» has class assignment returns true

   FAIL  Tests\Unit\Services\Invoices\InvoiceTuitionServiceTest
  Γ¿» calculate tuition fee counts regular and youth
  Γ¿» refund deadline includes withdrawn when passed

   FAIL  Tests\Unit\Services\Messaging\MessageCommandServiceTest
  Γ¿» create sends message
  Γ¿» create rejects invalid role

   FAIL  Tests\Unit\Services\Messaging\MessageQueryServiceTest
  Γ¿» inbox filters messages

   FAIL  Tests\Unit\Services\Messaging\MessageRecipientServiceTest
  Γ¿» teachers returns list
  Γ¿» parents returns list

   FAIL  Tests\Unit\Services\Navigation\NavBuilderServiceTest
  Γ¿» save creates nav item and roles
  Γ¿» reorder updates sort order

   FAIL  Tests\Unit\Services\Navigation\NavbarServiceTest
  Γ¿» get menu for roles builds tree

   FAIL  Tests\Unit\Services\Notifications\NotificationActiveServiceTest
  Γ¿» list filters by target group

   FAIL  Tests\Unit\Services\Notifications\NotificationCleanupServiceTest
  Γ¿» cleanup expired soft deletes rows

   FAIL  Tests\Unit\Services\Notifications\NotificationDeletedServiceTest
  Γ¿» list returns deleted notifications

   PASS  Tests\Unit\Services\Notifications\NotificationDispatchServiceTest
  Γ£ô dispatch logs email and sms                                                                                  0.58s  

   FAIL  Tests\Unit\Services\Notifications\NotificationManagementServiceTest
  Γ¿» update modifies notification
  Γ¿» update returns false when missing
  Γ¿» delete and restore notification

   FAIL  Tests\Unit\Services\Notifications\NotificationReadServiceTest
  Γ¿» mark read updates row
  Γ¿» mark read returns false when missing

   FAIL  Tests\Unit\Services\Notifications\NotificationRecipientServiceTest
  Γ¿» get recipients by role

   FAIL  Tests\Unit\Services\Notifications\NotificationSendServiceTest
  Γ¿» send creates notification and user notifications

   FAIL  Tests\Unit\Services\Notifications\NotificationShowServiceTest
  Γ¿» get for user returns notification
  Γ¿» get for user returns null when missing

   PASS  Tests\Unit\Services\Notifications\NotificationTriggerServiceTest
  Γ£ô trigger dispatches event                                                                                     0.04s  
  Γ£ô to user dispatches event                                                                                     0.02s  

   FAIL  Tests\Unit\Services\Notifications\NotificationUserListServiceTest
  Γ¿» list filters by read status

   FAIL  Tests\Unit\Services\Notifications\UserNotificationDispatchServiceTest
  Γ¿» notify user creates notification
  Γ¿» notify user rejects invalid user

   FAIL  Tests\Unit\Services\Parents\ParentAttendanceReportServiceTest
  Γ¿» form data returns students

   FAIL  Tests\Unit\Services\Parents\ParentAttendanceServiceTest
  Γ¿» list attendance returns rows

   FAIL  Tests\Unit\Services\Parents\ParentConfigServiceTest
  Γ¿» context returns config values

   FAIL  Tests\Unit\Services\Parents\ParentEmergencyContactServiceTest
  Γ¿» store creates contact

   FAIL  Tests\Unit\Services\Parents\ParentEnrollmentServiceTest
  Γ¿» overview returns students

   FAIL  Tests\Unit\Services\Parents\ParentInvoiceServiceTest
  Γ¿» list invoices filters by parent

   FAIL  Tests\Unit\Services\Parents\ParentRegistrationServiceTest
  Γ¿» register creates student and contact

   FAIL  Tests\Unit\Services\Payments\PaymentBalanceServiceTest
  Γ¿» update balance adjusts payment totals

   FAIL  Tests\Unit\Services\Payments\PaymentEnrollmentEventServiceTest
  Γ¿» build event data requires parent
  Γ¿» build event data returns parent payload when no students

   FAIL  Tests\Unit\Services\Payments\PaymentEventChargesServiceTest
  Γ¿» get enrolled students returns grade

   FAIL  Tests\Unit\Services\Payments\PaymentLookupServiceTest
  Γ¿» get by parent filters school year

   FAIL  Tests\Unit\Services\Payments\PaymentManualServiceTest
  Γ¿» record payment rejects invalid method
  Γ¿» suggest returns matches

   FAIL  Tests\Unit\Services\Payments\PaymentMissedCheckServiceTest
  Γ¿» find users with missed payments
  Γ¿» send reminders sends email and notification

   FAIL  Tests\Unit\Services\Payments\PaymentNotificationDispatchServiceTest
  Γ¿» notify user creates notification records

   FAIL  Tests\Unit\Services\Payments\PaymentNotificationServiceTest
  Γ¿» send records log and returns sent count
  Γ¿» list logs filters by type

   FAIL  Tests\Unit\Services\Payments\PaymentPlanServiceTest
  Γ¿» create plan uses defaults when missing

   FAIL  Tests\Unit\Services\Payments\PaymentTestNotificationServiceTest
  Γ¿» send logs and sends email

   FAIL  Tests\Unit\Services\Payments\PaymentTransactionServiceTest
  Γ¿» create and update transaction

   FAIL  Tests\Unit\Services\Payments\PaypalPaymentServiceTest
  Γ¿» create payment falls back to hosted when sdk missing
  Γ¿» execute payment throws when sdk missing

   FAIL  Tests\Unit\Services\Payments\PaypalPaymentSyncServiceTest
  Γ¿» sync applies payment and marks synced

   FAIL  Tests\Unit\Services\Payments\PaypalTransactionsServiceTest
  Γ¿» list all filters by keyword

   FAIL  Tests\Unit\Services\Phone\PhoneFormatterServiceTest
  Γ¿» format returns null for invalid
  Γ¿» format formats digits

   FAIL  Tests\Unit\Services\Policy\PolicyContentServiceTest
  Γ¿» get policy returns content

   FAIL  Tests\Unit\Services\Preferences\PreferencesCommandServiceTest
  Γ¿» upsert creates record

   FAIL  Tests\Unit\Services\Preferences\PreferencesOptionsServiceTest
  Γ¿» defaults include expected keys

   FAIL  Tests\Unit\Services\Preferences\PreferencesQueryServiceTest
  Γ¿» get for user returns defaults when missing
  Γ¿» paginate filters by user id

   FAIL  Tests\Unit\Services\Promotions\LevelProgressionServiceTest
  Γ¿» seed defaults creates baseline levels
  Γ¿» resolve by class id uses mapping when present
  Γ¿» resolve falls back to class id plus one when no mapping
  Γ¿» upsert mapping updates existing row

   FAIL  Tests\Unit\Services\Promotions\PromotionEligibilityServiceTest
  Γ¿» passing student becomes awaiting parent enrollment
  Γ¿» failing student becomes repeated
  Γ¿» missing scores marks on hold
  Γ¿» terminal level is graduated
  Γ¿» audit log records status changes

   FAIL  Tests\Unit\Services\Promotions\PromotionEnrollmentServiceTest
  Γ¿» completing checklist finalises promotion and creates enrollment
  Γ¿» partial checklist keeps status in progress
  Γ¿» submit requires complete checklist
  Γ¿» other parent cannot act on record
  Γ¿» expired records become not enrolled

   FAIL  Tests\Unit\Services\Promotions\PromotionStatusServiceTest
  Γ¿» allowed transition updates status and audit log
  Γ¿» disallowed transition throws
  Γ¿» force status bypasses transition map
  Γ¿» no op transition returns record unchanged

   FAIL  Tests\Unit\Services\PurchaseOrders\PurchaseOrderCreateServiceTest
  Γ¿» create persists purchase order and items

   FAIL  Tests\Unit\Services\PurchaseOrders\PurchaseOrderReceiveServiceTest
  Γ¿» receive updates items and inventory

   FAIL  Tests\Unit\Services\PurchaseOrders\PurchaseOrderStatusServiceTest
  Γ¿» cancel marks purchase order canceled

   FAIL  Tests\Unit\Services\Refunds\RefundDecisionServiceTest
  Γ¿» approve updates refund status

   FAIL  Tests\Unit\Services\Refunds\RefundInvoiceAdjustmentServiceTest
  Γ¿» apply book charge inserts additional charge

   FAIL  Tests\Unit\Services\Refunds\RefundNotificationServiceTest
  Γ¿» notify pending logs event

   FAIL  Tests\Unit\Services\Refunds\RefundOverpaymentServiceTest
  Γ¿» recalculate creates overpayment refund

   FAIL  Tests\Unit\Services\Refunds\RefundPayoutServiceTest
  Γ¿» record payment marks partial

   FAIL  Tests\Unit\Services\Refunds\RefundPolicyServiceTest
  Γ¿» process withdrawal refund creates refund

   FAIL  Tests\Unit\Services\Refunds\RefundQueryServiceTest
  Γ¿» list filters by status

   FAIL  Tests\Unit\Services\Refunds\RefundRequestServiceTest
  Γ¿» request overpayment creates refund

   FAIL  Tests\Unit\Services\Refunds\RefundSummaryServiceTest
  Γ¿» summary calculates unapplied balance

   FAIL  Tests\Unit\Services\Reimbursements\ReimbursementBatchAssignmentServiceTest
  Γ¿» assign and unassign batch item

   FAIL  Tests\Unit\Services\Reimbursements\ReimbursementBatchServiceTest
  Γ¿» create batch assigns sequence and title

   FAIL  Tests\Unit\Services\Reimbursements\ReimbursementDonationServiceTest
  Γ¿» mark donation updates expense and unassigns

   FAIL  Tests\Unit\Services\Reimbursements\ReimbursementRecipientServiceTest
  Γ¿» recipient options include staff and specials

   FAIL  Tests\Unit\Services\Reports\ReportCards\ReportCardServiceTest
  Γ¿» meta returns data sets
  Γ¿» completeness returns summary
  Γ¿» acknowledgement returns signed data
  Γ¿» generate single report returns pdf
  Γ¿» generate single report handles missing scores

   PASS  Tests\Unit\Services\Reports\SlipPrinterFormatterServiceTest
  Γ£ô to db date parses us format                                                                                  0.04s  
  Γ£ô to db time parses string                                                                                     0.02s  

   PASS  Tests\Unit\Services\Reports\Stickers\StickerPresetServiceTest
  Γ£ô presets include alias fields                                                                                 0.03s  

   FAIL  Tests\Unit\Services\Reports\Stickers\StickerPrintServiceTest
  Γ¿» generate returns pdf content
  Γ¿» generate returns error when no students

   FAIL  Tests\Unit\Services\Reports\Stickers\StickerQueryServiceTest
  Γ¿» list students by class returns rows
  Γ¿» list students for print all excludes youth and kg

   FAIL  Tests\Unit\Services\Roles\PermissionCrudServiceTest
  Γ¿» create and update permission

   FAIL  Tests\Unit\Services\Roles\RoleAssignmentServiceTest
  Γ¿» assign roles creates user roles and staff

   FAIL  Tests\Unit\Services\Roles\RoleCrudServiceTest
  Γ¿» create and update role

   FAIL  Tests\Unit\Services\Roles\RoleDashboardServiceTest
  Γ¿» best dashboard route for returns route

   FAIL  Tests\Unit\Services\Roles\RolePermissionServiceTest
  Γ¿» save role permissions persists rows

   FAIL  Tests\Unit\Services\Roles\RoleQueryServiceTest
  Γ¿» list roles returns paginator
  Γ¿» list users with roles returns roles

   FAIL  Tests\Unit\Services\Roles\RoleSwitchServiceTest
  Γ¿» get user role names returns roles

   FAIL  Tests\Unit\Services\SchoolIds\SchoolIdAssignmentServiceTest
  Γ¿» assigns school id when missing
  Γ¿» assign returns existing school id

   FAIL  Tests\Unit\Services\SchoolIds\SchoolIdGenerationServiceTest
  Γ¿» generates student school id with prefix
  Γ¿» generates user school id with prefix

   FAIL  Tests\Unit\Services\School\AccountEventServiceTest
  Γ¿» new account added creates family links
  Γ¿» delete unverified user handles missing admin emails

   FAIL  Tests\Unit\Services\School\EnrollmentEventServiceTest
  Γ¿» admission under review sends email                                                                           0.05s  
  Γ¿» admission under review requires email                                                                        0.02s  

   FAIL  Tests\Unit\Services\School\PaymentEventServiceTest
  Γ¿» payment received sends email                                                                                 0.03s  
  Γ¿» extra charge requires email                                                                                  0.04s  

   FAIL  Tests\Unit\Services\School\SemesterSelectionServiceTest
  Γ¿» selected teacher semester prefers session value
  Γ¿» selected teacher semester falls back to config

   FAIL  Tests\Unit\Services\Scores\AttendanceCalculatorTest
  Γ¿» calculate uses configured days

   FAIL  Tests\Unit\Services\Scores\ExamScoreServiceTest
  Γ¿» list returns latest exam score
  Γ¿» update creates exam score and missing override

   FAIL  Tests\Unit\Services\Scores\HomeworkCalculatorTest
  Γ¿» calculate returns average score

   FAIL  Tests\Unit\Services\Scores\HomeworkScoreServiceTest
  Γ¿» list includes semester variants
  Γ¿» add column inserts next index

   FAIL  Tests\Unit\Services\Scores\ParticipationScoreServiceTest
  Γ¿» list returns participation scores
  Γ¿» update updates existing scores

   FAIL  Tests\Unit\Services\Scores\ProjectCalculatorTest
  Γ¿» calculate returns average score

   FAIL  Tests\Unit\Services\Scores\ProjectScoreServiceTest
  Γ¿» list returns headers and scores
  Γ¿» update creates scores and missing overrides
  Γ¿» add column inserts next index

   FAIL  Tests\Unit\Services\Scores\QuizCalculatorTest
  Γ¿» calculate returns average score

   FAIL  Tests\Unit\Services\Scores\QuizScoreServiceTest
  Γ¿» list returns headers and scores
  Γ¿» update creates scores and missing overrides
  Γ¿» add column inserts next index

   FAIL  Tests\Unit\Services\Scores\ScoreCommentServiceTest
  Γ¿» list returns comments for students
  Γ¿» save returns validation errors for short comment

   FAIL  Tests\Unit\Services\Scores\ScoreDashboardServiceTest
  Γ¿» overview returns students and scores
  Γ¿» view student scores groups by year and semester

   FAIL  Tests\Unit\Services\Scores\ScorePredictorServiceTest
  Γ¿» report builds predictions

   FAIL  Tests\Unit\Services\Scores\ScoreTermServiceTest
  Γ¿» semester and school year fallback to configuration
  Γ¿» normalize and variants

   FAIL  Tests\Unit\Services\Scores\SemesterScoreServiceTest
  Γ¿» update student scores upserts semester scores
