diff options
| author | danix <danix@danix.xyz> | 2026-06-11 09:46:01 +0200 |
|---|---|---|
| committer | danix <danix@danix.xyz> | 2026-06-11 09:46:01 +0200 |
| commit | b72a81a3a4becee8c388b9d110cb650ac26f1ebf (patch) | |
| tree | d46fd150b1d127d676ce62528730c9ab0c127daa /tests/wallp.bats | |
| parent | 5d5da3a1b50eedb3c30aa209eb24aa7f579dc701 (diff) | |
| download | wallp-b72a81a3a4becee8c388b9d110cb650ac26f1ebf.tar.gz wallp-b72a81a3a4becee8c388b9d110cb650ac26f1ebf.zip | |
feat: conf bootstrap + required-key validation
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Diffstat (limited to 'tests/wallp.bats')
| -rw-r--r-- | tests/wallp.bats | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/tests/wallp.bats b/tests/wallp.bats index 3445ddb..298067f 100644 --- a/tests/wallp.bats +++ b/tests/wallp.bats @@ -54,3 +54,29 @@ teardown() { [ "$CONF_DEFAULT_H" = "$HOME/p/h.png" ] [ "$CONF_DEFAULT_V" = "/abs/v.png" ] } + +@test "load_conf bootstraps template when conf missing" { + run load_conf + [ "$status" -eq 10 ] + [ -f "$HOME/.config/wallp/wallp.conf" ] + [[ "$output" == *"fill it in"* ]] +} + +@test "load_conf hard-errors on missing required key" { + mkdir -p "$HOME/.config/wallp" + printf '%s\n' 'OUTPUT_H=DP-1' 'OUTPUT_V=DP-3' 'DEFAULT_H=/a.png' \ + > "$HOME/.config/wallp/wallp.conf" + run load_conf + [ "$status" -eq 1 ] + [[ "$output" == *"DEFAULT_V"* ]] +} + +@test "load_conf ok with THEME fallback" { + mkdir -p "$HOME/.config/wallp" + printf '%s\n' 'OUTPUT_H=DP-1' 'OUTPUT_V=DP-3' \ + 'DEFAULT_H=/a.png' 'DEFAULT_V=/b.png' \ + > "$HOME/.config/wallp/wallp.conf" + load_conf + [ "$?" -eq 0 ] + [ "$CONF_THEME" = "sexy-splurge" ] +} |
