ConfigLoaderTest

45

tests

0

failures

0

ignored

0.843s

duration

100%

successful

Tests

Test Duration Result
a branch cannot disable its bwrap sandbox or substitute a foreign rootfs through a build definition 0.009s passed
a branch cannot raise the concurrency limit or reach the sandbox policy through a build definition 0.007s passed
a branch may redefine the builds section for its own builds 0.002s passed
a branch whose config is committed under the pre-rename name is still read as the branch layer 0.004s passed
a branch writing its trigger flat fails only its own builds 0.001s passed
a build the branch invents inherits the host's sandbox policy 0.002s passed
a config that needs a newer Werkator is refused, naming the file and both versions 0.393s passed
a config within its declared range loads, and exceeding only the ceiling still loads 0.059s passed
a leftover builds.maxConcurrent is ignored instead of failing the config 0.008s passed
a trigger key written outside the trigger block is refused, naming the definition 0.007s passed
an exclusion pattern takes a branch out of a build that would otherwise select it 0.002s passed
an exclusion wins over a matching pattern, whatever their order 0.001s passed
an explicit builds.default entry overrides the implicit default build 0.006s passed
an incompatible branch config is refused as the branch's problem, not the server's 0.028s passed
applyInstanceFragment installs a valid fragment verbatim, and re-applying replaces it 0.037s passed
applyInstanceFragment refuses a missing or empty fragment 0.009s passed
applyInstanceFragment refuses an unknown key loudly instead of installing a silent no-op 0.017s passed
branch-specific buildCommand overrides branches.default 0.001s passed
branch-specific config inherits from branches.default 0.004s passed
branches is honored while no build is defined and ignored as soon as one is 0.007s passed
builds.default is the base of every other build, but never its trigger 0.006s passed
empty publicBaseUrl defaults to https://<nginx.serverName>/ when set 0.003s passed
enabling both docker and bwrap on a build is rejected, not picked silently 0.008s passed
explicit publicBaseUrl wins over the nginx.serverName default 0.001s passed
falls back to the pre-rename .gittally.yml at the repository root 0.013s passed
falls back to the pre-rename machine config under .git/gittally 0.018s passed
finds the machine config left under its old name in an already-moved directory 0.007s passed
loadForWorktree falls back to .git over project when the worktree sets nothing 0.002s passed
loadForWorktree lets the worktree override build config (worktree > .git > project) 0.004s passed
loadForWorktree pins secrets and the docker sandbox policy to .git, but allows docker.image 0.005s passed
loadForWorktree without a worktree config equals load 0.003s passed
loadRaw only returns explicitly set values 0.001s passed
loadRaw returns empty map when no config files exist 0.023s passed
loadWithBranchLayer applies a branch config read from git, pinning the same keys 0.002s passed
loadWithBranchLayer without a branch config equals load 0.007s passed
publicBaseUrl stays empty without an nginx.serverName 0.003s passed
reads executor.maxConcurrent and defaults it to 1 0.002s passed
reads gitea config from .werkator.yml 0.051s passed
repo install config overrides project config for same keys 0.002s passed
returns defaults when no config files exist 0.008s passed
the applied instance fragment layers above the project config and below the machine config 0.002s passed
the builds section holds named build definitions 0.025s passed
the current name wins where both exist, so a half-done rename is not merged 0.009s passed
the machine config is checked as its own file 0.008s passed
toYaml serializes WerkatorConfig with all sections 0.026s passed

Standard output

Creating nstance of class de.hoennig.werkator.config.ConfigLoaderTest
2026-09-03T12:29:10.848Z  WARN 144 --- [-2139247716#231] d.hoennig.werkator.config.ConfigLoader   : no build defines onPush or atTimes; the watcher will never start a build on its own
2026-09-03T12:29:11.415Z  WARN 144 --- [-2139247716#240] d.hoennig.werkator.config.ConfigLoader   : .werkator.yml was released for Werkator below 1.0 (werkator.version.below), this is 1.4.0
2026-09-03T12:29:11.499Z  WARN 144 --- [-2139247716#243] d.hoennig.werkator.config.ConfigLoader   : ignoring builds.maxConcurrent; the concurrency limit is executor.maxConcurrent since v0.9.15
2026-09-03T12:29:11.580Z  WARN 144 --- [-2139247716#254] d.hoennig.werkator.config.ConfigLoader   : ignoring the branches section: this configuration defines builds, and a build definition carries its own settings; move what is still needed into builds — branches is going away