Rewrite bats tests
This commit is contained in:
parent
6d65224cd3
commit
9d618b4bfa
131
test/main.bats
131
test/main.bats
|
@ -2,47 +2,132 @@
|
|||
|
||||
setup() {
|
||||
port=$(awk -v min=2222 -v max=2999 'BEGIN{srand(); print int(min+rand()*(max-min+1))}')
|
||||
date=$(date +"%Y-%m-%d-%H")
|
||||
inode=$(stat --format=%i /backup)
|
||||
rm -f /root/bkctld.key* && ssh-keygen -t rsa -N "" -f /root/bkctld.key -q
|
||||
bkctld init test
|
||||
bkctld port test "${port}"
|
||||
bkctld key test /root/bkctld.key.pub
|
||||
bkctld start test
|
||||
bpid=$(cat /backup/jails/test/run/sshd.pid)
|
||||
bkctld restart test
|
||||
apid=$(cat /backup/jails/test/run/sshd.pid)
|
||||
bkctld inc
|
||||
[ -f /etc/default/bkctld ] && . /etc/default/bkctld
|
||||
CONFDIR="${CONFDIR:-/etc/evobackup}"
|
||||
JAILDIR="${JAILDIR:-/backup/jails}"
|
||||
INCDIR="${INCDIR:-/backup/incs}"
|
||||
TPLDIR="${TPLDIR:-/usr/share/bkctld}"
|
||||
LOCALTPLDIR="${LOCALTPLDIR:-/usr/local/share/bkctld}"
|
||||
SSHD_PID="${SSHD_PID:-/run/sshd.pid}"
|
||||
SSHD_CONFIG="${SSHD_CONFIG:-/etc/ssh/sshd_config}"
|
||||
AUTHORIZED_KEYS="${AUTHORIZED_KEYS:-/root/.ssh/authorized_keys}"
|
||||
FIREWALL_RULES="${FIREWALL_RULES:-}"
|
||||
LOGLEVEL="${LOGLEVEL:-6}"
|
||||
}
|
||||
|
||||
teardown() {
|
||||
bkctld remove test
|
||||
bkctld remove all && rm -rf "${INCDIR}/*"
|
||||
}
|
||||
|
||||
@test "port" {
|
||||
run nc -vz 127.0.0.1 "${port}"
|
||||
[ "$status" -eq 0 ]
|
||||
@test "init" {
|
||||
bkctld init test
|
||||
if [ "${inode}" -eq 256 ]; then
|
||||
run stat --format=%i "${JAILDIR}/test"
|
||||
[ "${output}" -eq 256 ]
|
||||
else
|
||||
run test -d "${JAILDIR}/test"
|
||||
[ "${status}" -eq 0 ]
|
||||
fi
|
||||
}
|
||||
|
||||
@test "update" {
|
||||
skip
|
||||
}
|
||||
|
||||
@test "start" {
|
||||
bkctld init test
|
||||
bkctld start test
|
||||
pid=$(cat "${JAILDIR}/test/${SSHD_PID}")
|
||||
run ps --pid "${pid}"
|
||||
[ "${status}" -eq 0 ]
|
||||
}
|
||||
|
||||
@test "stop" {
|
||||
bkctld init test
|
||||
bkctld start test
|
||||
pid=$(cat "${JAILDIR}/test/${SSHD_PID}")
|
||||
bkctld stop test
|
||||
run ps --pid "${pid}"
|
||||
[ "${status}" -ne 0 ]
|
||||
}
|
||||
|
||||
@test "reload" {
|
||||
bkctld init test
|
||||
bkctld start test
|
||||
bkctld reload test
|
||||
run grep "Received SIGHUP; restarting." "${JAILDIR}/test/var/log/authlog"
|
||||
[ "${status}" -eq 0 ]
|
||||
}
|
||||
|
||||
@test "restart" {
|
||||
bkctld init test
|
||||
bkctld start test
|
||||
bpid=$(cat "${JAILDIR}/test/${SSHD_PID}")
|
||||
bkctld restart test
|
||||
apid=$(cat "${JAILDIR}/test/${SSHD_PID}")
|
||||
[ "${bpid}" -ne "${apid}" ]
|
||||
}
|
||||
|
||||
@test "status" {
|
||||
bkctld init test
|
||||
run bkctld status test
|
||||
[ "${status}" -eq 0 ]
|
||||
}
|
||||
|
||||
@test "key" {
|
||||
bkctld init test
|
||||
bkctld start test
|
||||
bkctld key test /root/bkctld.key.pub
|
||||
run cat /backup/jails/test/root/.ssh/authorized_keys
|
||||
[ "$status" -eq 0 ]
|
||||
[ "$output" = $(cat /root/bkctld.key.pub) ]
|
||||
[ "${status}" -eq 0 ]
|
||||
[ "${output}" = $(cat /root/bkctld.key.pub) ]
|
||||
}
|
||||
|
||||
@test "port" {
|
||||
bkctld init test
|
||||
bkctld start test
|
||||
bkctld port test "${port}"
|
||||
run nc -vz 127.0.0.1 "${port}"
|
||||
[ "${status}" -eq 0 ]
|
||||
}
|
||||
|
||||
@test "ip" {
|
||||
skip
|
||||
}
|
||||
|
||||
@test "inc" {
|
||||
bkctld init test
|
||||
bkctld inc
|
||||
if [ "${inode}" -eq 256 ]; then
|
||||
run stat --format=%i "${INCDIR}/test/${date}"
|
||||
[ "${output}" -eq 256 ]
|
||||
else
|
||||
run test -d "${INCDIR}/test/${date}"
|
||||
[ "${status}" -eq 0 ]
|
||||
fi
|
||||
}
|
||||
|
||||
@test "rm" {
|
||||
skip
|
||||
}
|
||||
|
||||
@test "ssh" {
|
||||
bkctld init test
|
||||
bkctld start test
|
||||
bkctld port test "${port}"
|
||||
bkctld key test /root/bkctld.key.pub
|
||||
run ssh -p "${port}" -i /root/bkctld.key -oStrictHostKeyChecking=no root@127.0.0.1 ls
|
||||
[ "$status" -eq 0 ]
|
||||
}
|
||||
|
||||
@test "rsync" {
|
||||
bkctld init test
|
||||
bkctld start test
|
||||
bkctld port test "${port}"
|
||||
bkctld key test /root/bkctld.key.pub
|
||||
run rsync -a -e "ssh -p ${port} -i /root/bkctld.key -oStrictHostKeyChecking=no" /tmp/ root@127.0.0.1:/var/backup/
|
||||
[ "$status" -eq 0 ]
|
||||
}
|
||||
|
||||
@test "restart" {
|
||||
[ "${bpid}" -ne "${apid}" ]
|
||||
}
|
||||
|
||||
@test "inc" {
|
||||
run ls /backup/incs/test/*
|
||||
[ "$status" -eq 0 ]
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue