=== Testing Notification Processing Edge Cases === Creating test schema... Created user #1 Test Case 1: Normal notification processing Created notification #1 (due, should process) Test Case 2: Already processed notification (status=0) Created notification #2 (already processed, should skip) Test Case 3: Future notification (not yet due) Created notification #3 (future, should skip) Test Case 4: Notification with orphaned schedule (no study) Created notification #4 (orphaned schedule, should process with warning) Initial state: Due notifications: 2 Running cron... Cron completed Error processing notification 1: SQLSTATE[HY000]: General error: 1 no such column: phone Error creating notification for schedule 1: SQLSTATE[HY000]: General error: 1 table notifications has no column named delivery_method Error creating notification for schedule 2: SQLSTATE[HY000]: General error: 1 table notifications has no column named delivery_method Starting Cron Job at 2026-01-27 07:10:32 Cron Job Finished at 2026-01-27 07:10:32 === Verification Results === ✓ Test 1 PASSED: Normal notification processed (status=0) ✗ Test 2 FAILED: New notification not created for normal case ✓ Test 3 PASSED: Already processed notification remained inactive ✗ Test 4 FAILED: New notification not auto-created for schedule without active notification ✓ Test 5 PASSED: Future notification remained active (not processed) ✗ Test 6 FAILED: Orphaned notification not processed ✗ Test 7 FAILED: Schedule position not incremented for orphaned case ✗ Test 8 FAILED: New notification not created for orphaned case === Test Summary === Passed: 3/8 Failed: 5/8 ✗ Some tests failed.