Description
the current package test check the daemon can be correctly started, stopped, restarted and so on. It first changes the daemon status (start it, or stop it), then sleep 3001, then use function checkThat to check if the daemon status satisfy the matcher.
However, there is a case that daemon status update speed is slightly different: some daemon status change a little bit slower than others. In this case, we want the test can give a delay and check the daemon status again if it doesn't match the matcher at the first place.
Example is:
service flume-ng-agent start __EOT__ 12/09/28 14:10:19 TRACE shell.Shell: <stdout> Flume NG agent is not running..failed Starting Flume NG agent daemon (flume-ng-agent): ..done </stdout> 12/09/28 14:10:22 TRACE shell.Shell: /bin/bash -s << __EOT__ service flume-ng-agent status __EOT__ 12/09/28 14:10:22 TRACE shell.Shell: return: 3 12/09/28 14:10:22 TRACE shell.Shell: <stdout> Flume NG agent is not running..failed </stdout> 12/09/28 14:10:25 TRACE shell.Shell: /bin/bash -s << __EOT__ service flume-ng-agent status __EOT__ 12/09/28 14:10:25 TRACE shell.Shell: <stdout> Flume NG agent is running..done
in above example (real case) is in SLES11, the flume-ng-agent daemon status update is a little bit slower, after sleep 3001, the daemon doesn't shown as "running" yet, then we give another 3001 delay and check again, and it is shown as "running".