Mercurial > hg
view tests/testlib/wait-on-file @ 44744:23dd43d94f50 stable
wait-on-file: adjust the timer counter
The wait performed in increment of 0.01 second, but the timer was expressed in
second. So we did not wait 20s, we waited 0.2 second. Internally we adjust the
counter to be expressed in centisecond. This prevent some flackyness in the
test.
Differential Revision: https://phab.mercurial-scm.org/D8453
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Thu, 16 Apr 2020 22:56:03 +0200 |
parents | 694d40416d62 |
children | f727939f3513 |
line wrap: on
line source
#!/bin/bash # # wait up to TIMEOUT seconds until a WAIT_ON_FILE is created. # # In addition, this script can create CREATE_FILE once it is ready to wait. if [ $# -lt 2 ] || [ $# -gt 3 ]; then echo $# echo "USAGE: $0 TIMEOUT WAIT_ON_FILE [CREATE_FILE]" fi timer="$1" # if the test timeout have been extended, explicitly extend the provided timer if [ "$HGTEST_TIMEOUT_DEFAULT" -lt "$HGTEST_TIMEOUT" ]; then timer=$(( ( 100 * $timer * $HGTEST_TIMEOUT) / $HGTEST_TIMEOUT_DEFAULT )) fi wait_on="$2" create="" if [ $# -eq 3 ]; then create="$3" fi if [ -n "$create" ]; then touch "$create" create="" fi while [ "$timer" -gt 0 ] && [ ! -f "$wait_on" ]; do timer=$(( $timer - 1)) sleep 0.01 done if [ "$timer" -le 0 ]; then echo "file not created after $1 seconds: $wait_on" >&2 exit 1 fi