…#54)
* Fix scheduleTask DateTime contract & restore tests
- TaskScheduler::scheduleTask now converts the \DateTime returned by
Cron\CronExpression::getNextRunDate() to \DateTimeImmutable before
calling TaskExecutionRepositoryInterface::create(), which contractually
requires \DateTimeImmutable. Without this, every cron-driven schedule
fails with a TypeError when the repository enforces the parameter type.
- TaskExecution::getResult() returns null when the result column was
never set, instead of false (unserialize(null) === false in PHP 8).
- Repair pre-existing syntax errors ("new \\DateTimeImmutable))" and
"new \\DateTimeImmutable)'...')") that were left in the test suite by
the sed-based DateTime → DateTimeImmutable migration in #52, which
made the whole tests/Unit/Execution and tests/Unit/Storage suites
un-loadable.
- Update remaining tests that still called the removed findAll() method
to use findAllPaginated(1).
* Update CI runner to ubuntu-22.04
ubuntu-20.04 has been retired; jobs hang waiting for a runner. See:
https://github.blog/changelog/2025-01-15-github-actions-ubuntu-20-runner-image-brownout-dates-and-other-breaking-changes/
* Address Copilot review
- TaskExecutionInterface::getResult() PHPDoc now documents the null
return possibility introduced by the unset-result fix.
- Rename leftover testFindAll() methods to testFindAllPaginatedUnbounded()
so the test name matches the API being exercised.
* Stop tracking phpunit result cache
Accidentally included in the previous commit; add it to .gitignore.
No description provided.