bats/restart_redhat.bats (91 lines of code) (raw):
#!/usr/bin/env bats
load test_helper
setup() {
init_redhat
stub_redhat
}
teardown() {
unstub_redhat
rm -fr "${TMP}"/*
}
@test "restart td-agent successfully (redhat)" {
rm -f "${TMP}/var/run/td-agent/td-agent.pid"
touch "${TMP}/var/lock/subsys/td-agent"
stub_path /usr/sbin/td-agent "true"
stub killproc "true"
stub daemon "true"
stub log_success_msg "td-agent : true"
run_service restart
assert_output <<EOS
Restarting td-agent:
EOS
assert_success
[ -f "${TMP}/var/lock/subsys/td-agent" ]
unstub_path /usr/sbin/td-agent
unstub killproc
unstub daemon
unstub log_success_msg
}
@test "failed to restart td-agent due to stop failure (redhat)" {
rm -f "${TMP}/var/run/td-agent/td-agent.pid"
stub_path /usr/sbin/td-agent "true"
stub killproc "false"
stub log_failure_msg "td-agent : true"
run_service restart
assert_output <<EOS
Restarting td-agent:
EOS
assert_failure
unstub_path /usr/sbin/td-agent
unstub killproc
unstub log_failure_msg
}
@test "failed to restart td-agent by configuration test failure (redhat)" {
stub_path /usr/sbin/td-agent "false"
stub log_failure_msg "td-agent : true"
run_service restart
assert_failure
unstub_path /usr/sbin/td-agent
unstub log_failure_msg
}
@test "failed to restart td-agent due to start failure (redhat)" {
rm -f "${TMP}/var/run/td-agent/td-agent.pid"
stub_path /usr/sbin/td-agent "true"
stub killproc "true"
stub daemon "false"
stub log_failure_msg "td-agent : true"
run_service restart
assert_output <<EOS
Restarting td-agent:
EOS
assert_failure
[ ! -f "${TMP}/var/lock/subsys/td-agent" ]
unstub_path /usr/sbin/td-agent
unstub killproc
unstub daemon
unstub log_failure_msg
}
@test "conditional restart of td-agent (redhat)" {
rm -f "${TMP}/var/run/td-agent/td-agent.pid"
touch "${TMP}/var/lock/subsys/td-agent"
stub_path /usr/sbin/td-agent "true"
stub killproc "true"
stub daemon "true"
stub log_success_msg "td-agent : true"
run_service condrestart
assert_output <<EOS
Restarting td-agent:
EOS
assert_success
[ -f "${TMP}/var/lock/subsys/td-agent" ]
unstub_path /usr/sbin/td-agent
unstub killproc
unstub daemon
unstub log_success_msg
}
@test "conditional restart do nothing if lock file doesn't exist (redhat)" {
rm -f "${TMP}/var/run/td-agent/td-agent.pid"
rm -f "${TMP}/var/lock/subsys/td-agent"
run_service condrestart
assert_success
[ ! -f "${TMP}/var/lock/subsys/td-agent" ]
}