blob: 3445ddb9343b44c0da7d1a325c52e4dc8153e971 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
|
#!/usr/bin/env bats
setup() {
SCRIPT_DIR="$(cd "$BATS_TEST_DIRNAME/.." && pwd)"
TMP_HOME="$(mktemp -d)"
export HOME="$TMP_HOME"
STUB_DIR="$TMP_HOME/stubs"
mkdir -p "$STUB_DIR"
export PATH="$STUB_DIR:$PATH"
local bin
for bin in swaybg wal qarma notify-send pkill kill; do
cat > "$STUB_DIR/$bin" <<EOF
#!/bin/bash
echo "$bin \$*" >> "$TMP_HOME/calls.log"
exit 0
EOF
chmod +x "$STUB_DIR/$bin"
done
source "$SCRIPT_DIR/wallp"
}
teardown() {
rm -rf "$TMP_HOME"
}
@test "harness sanity" {
[ "x" = "x" ]
}
@test "expand_tilde expands leading tilde" {
run expand_tilde '~/pics/a.png'
[ "$status" -eq 0 ]
[ "$output" = "$HOME/pics/a.png" ]
}
@test "expand_tilde leaves absolute path untouched" {
run expand_tilde '/abs/b.png'
[ "$output" = "/abs/b.png" ]
}
@test "parse_conf reads keys and expands tilde in paths" {
conf="$HOME/c.conf"
printf '%s\n' \
'# comment' '' \
'THEME=mytheme' \
'OUTPUT_H=DP-1' \
'OUTPUT_V=DP-3' \
'DEFAULT_H=~/p/h.png' \
'DEFAULT_V=/abs/v.png' > "$conf"
parse_conf "$conf"
[ "$CONF_THEME" = "mytheme" ]
[ "$CONF_OUTPUT_H" = "DP-1" ]
[ "$CONF_OUTPUT_V" = "DP-3" ]
[ "$CONF_DEFAULT_H" = "$HOME/p/h.png" ]
[ "$CONF_DEFAULT_V" = "/abs/v.png" ]
}
|