37 lines
892 B
Bash
Executable file
37 lines
892 B
Bash
Executable file
#!/bin/sh
|
|
# Only invalid input/help/dry-run reach the real CLI: never open hardware.
|
|
set -eu
|
|
cli=$1
|
|
check() {
|
|
expected=$1
|
|
shift
|
|
actual=0
|
|
"$cli" "$@" >/dev/null 2>&1 || actual=$?
|
|
if [ "$actual" -ne "$expected" ]; then
|
|
echo "Expected $expected got $actual for $*" >&2
|
|
exit 1
|
|
fi
|
|
}
|
|
check 0 --help
|
|
check 2
|
|
check 2 unknown
|
|
check 2 set '#GG0000'
|
|
check 2 set '#fff'
|
|
check 2 set
|
|
check 2 set '#000000' extra
|
|
check 2 brightness -1
|
|
check 2 brightness 101
|
|
check 2 brightness 99999999999999999999999999
|
|
check 2 auto extra
|
|
check 0 --dry-run set '#B4BEFE'
|
|
check 0 --dry-run set '#FF0000'
|
|
check 0 --dry-run set '#00FF00'
|
|
check 0 --dry-run set '#0000FF'
|
|
check 0 --dry-run brightness 60
|
|
check 0 --dry-run brightness 0
|
|
check 0 --dry-run brightness 100
|
|
check 0 --dry-run off
|
|
check 0 --dry-run auto
|
|
check 0 --dry-run probe
|
|
check 0 --dry-run status
|
|
check 2 --dry-run set bad
|