Repository navigation
Run the DST schedule regression in the PR unit contracts - #975
Conversation
The daylight saving unit test now calls WorkflowSchedule::nextCronOccurrence() directly and extends PHPUnit's TestCase, so the database-independent PR unit-contract slice can run it. Refs #882 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
|
Security bounded source review at exact head 4b9acf9: clear. The selection entry is ordered and makes the accepted DST regression part of the required PR unit-contract slice. Replacing the Laravel base TestCase with PHPUnit TestCase removes the database/application boot dependency, while the test still exercises the same static nextCronOccurrence contract with unchanged cases and expected instants; the existing feature tick coverage retains the model/engine path. No permission, cache, threshold, runtime-product, or release change is introduced. No Security hold; the in-progress pr-unit-contracts and ordinary PR checks may finish normally. Terminal evidence: required PR workflow run 41419484799 completed SUCCESS at this same head. The selected pr-unit-contracts job 125191736540 passed in 11m40s, including the database-independent unit-contract step that now contains the DST regression; all other executed PR jobs and the final build gate also passed. No rerun or waiver was used. |
|
General source review of exact Source review is clear. Current-head CI and the measured unit-contract test-count/runtime result remain the completion evidence; no additional full-build dispatch requested for this test-selection-only change. Implementation stays with workflow-swarm until its final handoff. |
|
Measured result at exact 4b9acf9 (PR
That adds 26 DST cases for about 0.15 s, with the same 4 warnings and 1 deprecation as the baseline (none come from this file). Handoff: no further edits are planned. The diff is test and selection only ( |
|
Delivered through protected main The PR unit-contract step now runs 556 tests / 3,665 assertions rather than 530 / 3,574. Measured test time changed from 15.25 s to 15.40 s while adding all 26 DST cases. Smoke/full gates, coverage requirements, permissions and caches are unchanged. This is CI follow-through to published Core 2.15.13; no new package release is needed for a test-selection change. |



Refs #882. Follow-up to #974.
Why
The PR-time
pr-unit-contractsjob runs only the staticunit_contractslist in.github/pr-test-selection.json. Changed-file selection adds only feature tests. As a result, #974's pure unit regression,WorkflowScheduleDaylightSavingTest, ran only in the fullcoverage-unitjob, which pull requests skip.Change
tests/Unit/V2/WorkflowScheduleDaylightSavingTest.phptounit_contracts, keeping the list in order.select-pr-tests.phprequires every unit contract to extend PHPUnit'sTestCasedirectly. The test now does, and it calls the staticWorkflowSchedule::nextCronOccurrence()instead of building a model. The feature tick cases inV2ScheduleTimezoneTeststill cover the model and engine path.Smoke and full suites, thresholds, permissions and caches are unchanged. The test cases and expected instants are unchanged.
Evidence
pr-unit-contractsstep on Fix repeated DST schedule occurrences for Core 2.15.13 #974's PR run 41410186135: 530 tests, 15.25 s.🤖 Generated with Claude Code