aboutsummaryrefslogtreecommitdiffstats
path: root/tests/wallp.bats
diff options
context:
space:
mode:
Diffstat (limited to 'tests/wallp.bats')
-rw-r--r--tests/wallp.bats26
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" ]
+}