WatcherTest
|
100%
successful |
Tests
| Test | Duration | Result |
|---|---|---|
| a branch config committed under the pre-rename name is still read | 0.018s | passed |
| a branch entry overrides requirePullRequest from the default entry | 0.017s | passed |
| a branch requiring a pull request is only built when its head matches a pull-request head | 0.017s | passed |
| a branch's committed config is read from git again only after the branch moved | 0.026s | passed |
| a build definition committed on a branch fires for that branch, without any entry in the primary config | 0.023s | passed |
| a build definition committed on a branch never schedules another branch | 0.014s | passed |
| a commit-triggered build belongs to the default build definition | 0.017s | passed |
| a disabled pull-request gate builds gated branches on plain-git origins without querying pull-request refs | 0.017s | passed |
| a failing fast-forward does not abort the poll cycle | 0.021s | passed |
| a fetch failure is exposed in the state and only retried next cycle | 0.320s | passed |
| a lasting fetch failure is logged once, and so is the recovery | 0.027s | passed |
| a poll cycle completes while a build is running and still enqueues other branches | 0.038s | passed |
| a scheduled build definition fires for its selected branches under its own pool | 0.051s | passed |
| a scheduled build definition with activeWithin skips branches without recent commits | 0.041s | passed |
| an auto build requiring a pull request is skipped and its slot stays untriggered | 0.015s | passed |
| an auto-build slot stays untriggered while the branch is still building | 0.022s | passed |
| an edited primary config takes effect without the branch moving | 0.028s | passed |
| an onPush build definition builds the changed branches it selects | 0.016s | passed |
| an unreadable branch config falls back to the primary definitions instead of failing the poll | 0.025s | passed |
| auto builds rebuild the already built commit once per day and slot | 0.037s | passed |
| builds.default with onPush false disables the implicit on-push build | 0.015s | passed |
| poll does not re-enqueue a commit that was already built | 0.021s | passed |
| poll drops builds older than retentionMaxAge but keeps the branch's newest build | 0.019s | passed |
| poll enqueues changed local branches before recent new origin branches | 0.035s | passed |
| poll fast-forwards local branch refs only after the enqueue decision was made | 0.049s | passed |
| poll filters new origin branches by the configured newBranchMaxAge | 0.012s | passed |
| poll keeps the latest green build beyond retention unless keepLatestGreen is disabled | 0.039s | passed |
| poll leaves local branch refs alone when fastForwardLocalRefs is disabled | 0.017s | passed |
| poll prunes results, artifacts, and worktrees of branches gone from origin | 0.027s | passed |
| poll skips a branch whose build is already pending or running | 0.055s | passed |
| pull-request refs are not queried when no due branch requires a pull request | 0.015s | passed |
| start runs recovery plus an immediate first poll; stop halts the loop | 0.094s | passed |
| startup recovery closes out an orphaned PENDING build of a branch gone from origin | 0.022s | passed |
| startup recovery marks stale builds interrupted and re-enqueues them | 0.028s | passed |
| startup recovery re-enqueues an interrupted build under its recorded build definition | 0.020s | passed |
| startup recovery skips branches gone from origin and survives a failing fetch | 0.024s | passed |
| worktrees of queued or running builds are never pruned | 0.019s | passed |
Standard output
Creating nstance of class de.hoennig.werkator.watcher.WatcherTest 2026-09-03T10:11:35.992Z WARN 144 --- [-1870760463#478] de.hoennig.werkator.watcher.Watcher : fetching origin failed; retrying every cycle until it succeeds: origin unreachable 2026-09-03T10:11:36.036Z WARN 144 --- [-1870760463#479] de.hoennig.werkator.watcher.Watcher : fetching origin failed; retrying every cycle until it succeeds: origin unreachable 2026-09-03T10:11:36.041Z INFO 144 --- [-1870760463#479] de.hoennig.werkator.watcher.Watcher : fetching origin succeeded again 2026-09-03T10:11:36.047Z WARN 144 --- [-1870760463#479] de.hoennig.werkator.watcher.Watcher : fetching origin failed; retrying every cycle until it succeeds: host is down 2026-09-03T10:11:36.073Z INFO 144 --- [-1870760463#480] de.hoennig.werkator.watcher.Watcher : enqueueing build default of branch main at commit commit-main 2026-09-03T10:11:36.074Z INFO 144 --- [-1870760463#480] de.hoennig.werkator.watcher.Watcher : enqueueing build default of branch feature/new at commit commit-feature 2026-09-03T10:11:36.125Z INFO 144 --- [-1870760463#481] de.hoennig.werkator.watcher.Watcher : enqueueing build default of branch main at commit commit-main 2026-09-03T10:11:36.126Z INFO 144 --- [-1870760463#481] de.hoennig.werkator.watcher.Watcher : fast-forwarded local branch refs to origin: main 2026-09-03T10:11:36.150Z WARN 144 --- [-1870760463#482] de.hoennig.werkator.watcher.Watcher : fast-forwarding local branch refs failed: ref locked 2026-09-03T10:11:36.277Z INFO 144 --- [-1870760463#485] de.hoennig.werkator.watcher.Watcher : enqueueing build default of branch feature/other at commit commit-3 2026-09-03T10:11:36.304Z INFO 144 --- [-1870760463#486] de.hoennig.werkator.watcher.Watcher : enqueueing build default of branch main at commit commit-def 2026-09-03T10:11:36.343Z INFO 144 --- [-1870760463#488] de.hoennig.werkator.watcher.Watcher : enqueueing build default of branch feature/pr at commit commit-pr 2026-09-03T10:11:36.343Z INFO 144 --- [-1870760463#488] de.hoennig.werkator.watcher.Watcher : not enqueueing branch feature/no-pr: no pull request has head commit commit-solo 2026-09-03T10:11:36.354Z INFO 144 --- [-1870760463#489] de.hoennig.werkator.watcher.Watcher : enqueueing build default of branch feature/x at commit commit-x 2026-09-03T10:11:36.372Z INFO 144 --- [-1870760463#490] de.hoennig.werkator.watcher.Watcher : enqueueing build default of branch feature/no-pr at commit commit-solo 2026-09-03T10:11:36.396Z INFO 144 --- [-1870760463#491] de.hoennig.werkator.watcher.Watcher : enqueueing build default of branch main at commit commit-main 2026-09-03T10:11:36.418Z WARN 144 --- [-1870760463#492] de.hoennig.werkator.watcher.Watcher : branches.*.autoBuild is deprecated; define a build with atTimes in the builds section instead (branches: main) 2026-09-03T10:11:36.420Z INFO 144 --- [-1870760463#492] de.hoennig.werkator.watcher.Watcher : not enqueueing branch main: no pull request has head commit commit-abc 2026-09-03T10:11:36.447Z WARN 144 --- [-1870760463#493] de.hoennig.werkator.watcher.Watcher : branches.*.autoBuild is deprecated; define a build with atTimes in the builds section instead (branches: main) 2026-09-03T10:11:36.458Z INFO 144 --- [-1870760463#493] de.hoennig.werkator.watcher.Watcher : enqueueing build default of branch main at commit commit-abc 2026-09-03T10:11:36.509Z INFO 144 --- [-1870760463#494] de.hoennig.werkator.watcher.Watcher : enqueueing build pitest of branch main at commit commit-abc 2026-09-03T10:11:36.518Z INFO 144 --- [-1870760463#494] de.hoennig.werkator.watcher.Watcher : enqueueing build pitest of branch release/1.x at commit commit-rel 2026-09-03T10:11:36.567Z INFO 144 --- [-1870760463#495] de.hoennig.werkator.watcher.Watcher : enqueueing build pitest of branch active at commit commit-act 2026-09-03T10:11:36.588Z INFO 144 --- [-1870760463#496] de.hoennig.werkator.watcher.Watcher : enqueueing build default of branch main at commit commit-main 2026-09-03T10:11:36.591Z INFO 144 --- [-1870760463#496] de.hoennig.werkator.watcher.Watcher : enqueueing build lint of branch main at commit commit-main 2026-09-03T10:11:36.591Z INFO 144 --- [-1870760463#496] de.hoennig.werkator.watcher.Watcher : enqueueing build default of branch feature/x at commit commit-feat 2026-09-03T10:11:36.625Z INFO 144 --- [-1870760463#498] de.hoennig.werkator.watcher.Watcher : enqueueing build default of branch main at commit commit-main 2026-09-03T10:11:36.643Z INFO 144 --- [-1870760463#499] de.hoennig.werkator.watcher.Watcher : enqueueing build pitest of branch experiment at commit commit-exp 2026-09-03T10:11:36.672Z INFO 144 --- [-1870760463#500] de.hoennig.werkator.watcher.Watcher : enqueueing build pitest of branch experiment at commit commit-exp 2026-09-03T10:11:36.745Z INFO 144 --- [-1870760463#503] de.hoennig.werkator.watcher.Watcher : enqueueing build nightly of branch main at commit commit-1 2026-09-03T10:11:36.778Z WARN 144 --- [-1870760463#504] de.hoennig.werkator.watcher.Watcher : ignoring the committed .werkator.yml of branch main at commit-main: mapping problem 2026-09-03T10:11:36.779Z INFO 144 --- [-1870760463#504] de.hoennig.werkator.watcher.Watcher : enqueueing build default of branch main at commit commit-main 2026-09-03T10:11:36.799Z WARN 144 --- [-1870760463#505] de.hoennig.werkator.watcher.Watcher : branches.*.autoBuild is deprecated; define a build with atTimes in the builds section instead (branches: main) 2026-09-03T10:11:36.827Z INFO 144 --- [-1870760463#506] de.hoennig.werkator.watcher.Watcher : marked stale build of branch main as interrupted 2026-09-03T10:11:36.831Z INFO 144 --- [-1870760463#506] de.hoennig.werkator.watcher.Watcher : restarting unfinished build default of branch queued 2026-09-03T10:11:36.831Z INFO 144 --- [-1870760463#506] de.hoennig.werkator.watcher.Watcher : restarting unfinished build default of branch feature/a 2026-09-03T10:11:36.835Z INFO 144 --- [-1870760463#506] de.hoennig.werkator.watcher.Watcher : restarting unfinished build default of branch main 2026-09-03T10:11:36.853Z WARN 144 --- [-1870760463#507] de.hoennig.werkator.watcher.Watcher : startup fetch failed; recovering from the last known origin state: origin unreachable 2026-09-03T10:11:36.858Z INFO 144 --- [-1870760463#507] de.hoennig.werkator.watcher.Watcher : restarting unfinished build default of branch main 2026-09-03T10:11:36.859Z INFO 144 --- [-1870760463#507] de.hoennig.werkator.watcher.Watcher : not restarting build of branch gone: branch is gone from origin 2026-09-03T10:11:36.877Z INFO 144 --- [-1870760463#508] de.hoennig.werkator.watcher.Watcher : restarting unfinished build pitest of branch main 2026-09-03T10:11:36.904Z INFO 144 --- [-1870760463#509] de.hoennig.werkator.watcher.Watcher : not restarting build of branch gone: branch is gone from origin 2026-09-03T10:11:36.926Z INFO 144 --- [-1870760463#510] de.hoennig.werkator.watcher.Watcher : removing worktree of branch gone from origin: gone-283bb9deef02