mirror of
https://github.com/troglobit/finit.git
synced 2026-10-13 10:14:47 +00:00
33 lines
673 B
Bash
Executable File
33 lines
673 B
Bash
Executable File
#!/bin/sh
|
|
|
|
set -eu
|
|
|
|
TEST_DIR=$(dirname "$0")/..
|
|
# shellcheck source=/dev/null
|
|
. "$TEST_DIR/lib.sh"
|
|
|
|
assert_num_children() {
|
|
assert "$1 services are running" "$(texec pgrep -P 1 "$2" | wc -l)" -eq "$1"
|
|
}
|
|
|
|
# Test
|
|
say 'Set up a service'
|
|
cp "$TEST_DIR"/test_start_stop_service/service.sh "$TESTS_ROOT"/test_assets/
|
|
texec sh -c "echo 'service [2345] kill:20 log /test_assets/service.sh' > $FINIT_CONF"
|
|
|
|
say 'Reload Finit'
|
|
texec kill -SIGHUP 1
|
|
|
|
retry 'assert_num_children 1 service.sh'
|
|
|
|
say 'Remove the service'
|
|
texec sh -c "echo > $FINIT_CONF"
|
|
|
|
say 'Reload Finit'
|
|
texec kill -SIGHUP 1
|
|
|
|
retry 'assert_num_children 0 service.sh'
|
|
|
|
# Teardown
|
|
rm -f "$TESTS_ROOT"/bin/service.sh
|