WatcherTest
|
100%
successful |
Tests
| Test | Duration | Result |
|---|---|---|
| a branch config committed under the pre-rename name is still read | 0.010s | passed |
| a branch entry overrides requirePullRequest from the default entry | 0.009s | passed |
| a branch requiring a pull request is only built when its head matches a pull-request head | 0.008s | passed |
| a branch's committed config is read from git again only after the branch moved | 0.009s | passed |
| a build definition committed on a branch fires for that branch, without any entry in the primary config | 0.012s | passed |
| a build definition committed on a branch never schedules another branch | 0.009s | passed |
| a commit-triggered build belongs to the default build definition | 0.008s | passed |
| a disabled pull-request gate builds gated branches on plain-git origins without querying pull-request refs | 0.009s | passed |
| a failing fast-forward does not abort the poll cycle | 0.007s | passed |
| a fetch failure is exposed in the state and only retried next cycle | 0.147s | passed |
| a lasting fetch failure is logged once, and so is the recovery | 0.012s | passed |
| a poll cycle completes while a build is running and still enqueues other branches | 0.014s | passed |
| a scheduled build definition fires for its selected branches under its own pool | 0.016s | passed |
| a scheduled build definition with activeWithin skips branches without recent commits | 0.011s | passed |
| an auto build requiring a pull request is skipped and its slot stays untriggered | 0.013s | passed |
| an auto-build slot stays untriggered while the branch is still building | 0.011s | passed |
| an edited primary config takes effect without the branch moving | 0.011s | passed |
| an onPush build definition builds the changed branches it selects | 0.013s | passed |
| an unreadable branch config falls back to the primary definitions instead of failing the poll | 0.011s | passed |
| auto builds rebuild the already built commit once per day and slot | 0.015s | passed |
| builds.default with onPush false disables the implicit on-push build | 0.007s | passed |
| poll does not re-enqueue a commit that was already built | 0.013s | passed |
| poll drops builds older than retentionMaxAge but keeps the branch's newest build | 0.010s | passed |
| poll enqueues changed local branches before recent new origin branches | 0.010s | passed |
| poll fast-forwards local branch refs only after the enqueue decision was made | 0.012s | passed |
| poll filters new origin branches by the configured newBranchMaxAge | 0.006s | passed |
| poll keeps the latest green build beyond retention unless keepLatestGreen is disabled | 0.022s | passed |
| poll leaves local branch refs alone when fastForwardLocalRefs is disabled | 0.006s | passed |
| poll prunes results, artifacts, and worktrees of branches gone from origin | 0.025s | passed |
| poll skips a branch whose build is already pending or running | 0.033s | passed |
| pull-request refs are not queried when no due branch requires a pull request | 0.009s | passed |
| start runs recovery plus an immediate first poll; stop halts the loop | 0.033s | passed |
| startup recovery closes out an orphaned PENDING build of a branch gone from origin | 0.012s | passed |
| startup recovery marks stale builds interrupted and re-enqueues them | 0.014s | passed |
| startup recovery re-enqueues an interrupted build under its recorded build definition | 0.010s | passed |
| startup recovery skips branches gone from origin and survives a failing fetch | 0.012s | passed |
| worktrees of queued or running builds are never pruned | 0.010s | passed |
Standard output
Creating nstance of class de.hoennig.werkator.watcher.WatcherTest 2026-09-03T09:36:14.041Z WARN 144 --- [e-886317720#460] de.hoennig.werkator.watcher.Watcher : fetching origin failed; retrying every cycle until it succeeds: origin unreachable 2026-09-03T09:36:14.052Z WARN 144 --- [e-886317720#461] de.hoennig.werkator.watcher.Watcher : fetching origin failed; retrying every cycle until it succeeds: origin unreachable 2026-09-03T09:36:14.055Z INFO 144 --- [e-886317720#461] de.hoennig.werkator.watcher.Watcher : fetching origin succeeded again 2026-09-03T09:36:14.058Z WARN 144 --- [e-886317720#461] de.hoennig.werkator.watcher.Watcher : fetching origin failed; retrying every cycle until it succeeds: host is down 2026-09-03T09:36:14.067Z INFO 144 --- [e-886317720#462] de.hoennig.werkator.watcher.Watcher : enqueueing build default of branch main at commit commit-main 2026-09-03T09:36:14.068Z INFO 144 --- [e-886317720#462] de.hoennig.werkator.watcher.Watcher : enqueueing build default of branch feature/new at commit commit-feature 2026-09-03T09:36:14.077Z INFO 144 --- [e-886317720#463] de.hoennig.werkator.watcher.Watcher : enqueueing build default of branch main at commit commit-main 2026-09-03T09:36:14.077Z INFO 144 --- [e-886317720#463] de.hoennig.werkator.watcher.Watcher : fast-forwarded local branch refs to origin: main 2026-09-03T09:36:14.088Z WARN 144 --- [e-886317720#464] de.hoennig.werkator.watcher.Watcher : fast-forwarding local branch refs failed: ref locked 2026-09-03T09:36:14.141Z INFO 144 --- [e-886317720#467] de.hoennig.werkator.watcher.Watcher : enqueueing build default of branch feature/other at commit commit-3 2026-09-03T09:36:14.155Z INFO 144 --- [e-886317720#468] de.hoennig.werkator.watcher.Watcher : enqueueing build default of branch main at commit commit-def 2026-09-03T09:36:14.171Z INFO 144 --- [e-886317720#470] de.hoennig.werkator.watcher.Watcher : enqueueing build default of branch feature/pr at commit commit-pr 2026-09-03T09:36:14.172Z INFO 144 --- [e-886317720#470] de.hoennig.werkator.watcher.Watcher : not enqueueing branch feature/no-pr: no pull request has head commit commit-solo 2026-09-03T09:36:14.180Z INFO 144 --- [e-886317720#471] de.hoennig.werkator.watcher.Watcher : enqueueing build default of branch feature/x at commit commit-x 2026-09-03T09:36:14.189Z INFO 144 --- [e-886317720#472] de.hoennig.werkator.watcher.Watcher : enqueueing build default of branch feature/no-pr at commit commit-solo 2026-09-03T09:36:14.199Z INFO 144 --- [e-886317720#473] de.hoennig.werkator.watcher.Watcher : enqueueing build default of branch main at commit commit-main 2026-09-03T09:36:14.209Z WARN 144 --- [e-886317720#474] de.hoennig.werkator.watcher.Watcher : branches.*.autoBuild is deprecated; define a build with atTimes in the builds section instead (branches: main) 2026-09-03T09:36:14.212Z INFO 144 --- [e-886317720#474] de.hoennig.werkator.watcher.Watcher : not enqueueing branch main: no pull request has head commit commit-abc 2026-09-03T09:36:14.223Z WARN 144 --- [e-886317720#475] de.hoennig.werkator.watcher.Watcher : branches.*.autoBuild is deprecated; define a build with atTimes in the builds section instead (branches: main) 2026-09-03T09:36:14.224Z INFO 144 --- [e-886317720#475] de.hoennig.werkator.watcher.Watcher : enqueueing build default of branch main at commit commit-abc 2026-09-03T09:36:14.240Z INFO 144 --- [e-886317720#476] de.hoennig.werkator.watcher.Watcher : enqueueing build pitest of branch main at commit commit-abc 2026-09-03T09:36:14.242Z INFO 144 --- [e-886317720#476] de.hoennig.werkator.watcher.Watcher : enqueueing build pitest of branch release/1.x at commit commit-rel 2026-09-03T09:36:14.254Z INFO 144 --- [e-886317720#477] de.hoennig.werkator.watcher.Watcher : enqueueing build pitest of branch active at commit commit-act 2026-09-03T09:36:14.266Z INFO 144 --- [e-886317720#478] de.hoennig.werkator.watcher.Watcher : enqueueing build default of branch main at commit commit-main 2026-09-03T09:36:14.267Z INFO 144 --- [e-886317720#478] de.hoennig.werkator.watcher.Watcher : enqueueing build lint of branch main at commit commit-main 2026-09-03T09:36:14.267Z INFO 144 --- [e-886317720#478] de.hoennig.werkator.watcher.Watcher : enqueueing build default of branch feature/x at commit commit-feat 2026-09-03T09:36:14.284Z INFO 144 --- [e-886317720#480] de.hoennig.werkator.watcher.Watcher : enqueueing build default of branch main at commit commit-main 2026-09-03T09:36:14.294Z INFO 144 --- [e-886317720#481] de.hoennig.werkator.watcher.Watcher : enqueueing build pitest of branch experiment at commit commit-exp 2026-09-03T09:36:14.307Z INFO 144 --- [e-886317720#482] de.hoennig.werkator.watcher.Watcher : enqueueing build pitest of branch experiment at commit commit-exp 2026-09-03T09:36:14.337Z INFO 144 --- [e-886317720#485] de.hoennig.werkator.watcher.Watcher : enqueueing build nightly of branch main at commit commit-1 2026-09-03T09:36:14.349Z WARN 144 --- [e-886317720#486] de.hoennig.werkator.watcher.Watcher : ignoring the committed .werkator.yml of branch main at commit-main: mapping problem 2026-09-03T09:36:14.349Z INFO 144 --- [e-886317720#486] de.hoennig.werkator.watcher.Watcher : enqueueing build default of branch main at commit commit-main 2026-09-03T09:36:14.360Z WARN 144 --- [e-886317720#487] de.hoennig.werkator.watcher.Watcher : branches.*.autoBuild is deprecated; define a build with atTimes in the builds section instead (branches: main) 2026-09-03T09:36:14.375Z INFO 144 --- [e-886317720#488] de.hoennig.werkator.watcher.Watcher : marked stale build of branch main as interrupted 2026-09-03T09:36:14.376Z INFO 144 --- [e-886317720#488] de.hoennig.werkator.watcher.Watcher : restarting unfinished build default of branch queued 2026-09-03T09:36:14.376Z INFO 144 --- [e-886317720#488] de.hoennig.werkator.watcher.Watcher : restarting unfinished build default of branch feature/a 2026-09-03T09:36:14.377Z INFO 144 --- [e-886317720#488] de.hoennig.werkator.watcher.Watcher : restarting unfinished build default of branch main 2026-09-03T09:36:14.389Z WARN 144 --- [e-886317720#489] de.hoennig.werkator.watcher.Watcher : startup fetch failed; recovering from the last known origin state: origin unreachable 2026-09-03T09:36:14.390Z INFO 144 --- [e-886317720#489] de.hoennig.werkator.watcher.Watcher : restarting unfinished build default of branch main 2026-09-03T09:36:14.390Z INFO 144 --- [e-886317720#489] de.hoennig.werkator.watcher.Watcher : not restarting build of branch gone: branch is gone from origin 2026-09-03T09:36:14.400Z INFO 144 --- [e-886317720#490] de.hoennig.werkator.watcher.Watcher : restarting unfinished build pitest of branch main 2026-09-03T09:36:14.413Z INFO 144 --- [e-886317720#491] de.hoennig.werkator.watcher.Watcher : not restarting build of branch gone: branch is gone from origin 2026-09-03T09:36:14.429Z INFO 144 --- [e-886317720#492] de.hoennig.werkator.watcher.Watcher : removing worktree of branch gone from origin: gone-283bb9deef02