Show More
@@ -1,36 +1,39 | |||
|
1 | 1 | #!/bin/sh |
|
2 | 2 | # |
|
3 | 3 | # wait up to TIMEOUT seconds until a WAIT_ON_FILE is created. |
|
4 | 4 | # |
|
5 | 5 | # In addition, this script can create CREATE_FILE once it is ready to wait. |
|
6 | 6 | |
|
7 | 7 | if [ $# -lt 2 ] || [ $# -gt 3 ]; then |
|
8 | 8 | echo $# |
|
9 | 9 | echo "USAGE: $0 TIMEOUT WAIT_ON_FILE [CREATE_FILE]" |
|
10 | 10 | fi |
|
11 | 11 | |
|
12 | 12 | timer="$1" |
|
13 | 13 | |
|
14 | # if the test timeout have been extended, explicitly extend the provided timer | |
|
14 | # Scale the timeout to match the sleep steps below, i.e. 1/0.02. | |
|
15 | timer=$(( 50 * $timer )) | |
|
16 | # If the test timeout have been extended, also scale the timer relative | |
|
17 | # to the normal timing. | |
|
15 | 18 | if [ "$HGTEST_TIMEOUT_DEFAULT" -lt "$HGTEST_TIMEOUT" ]; then |
|
16 |
timer=$(( ( |
|
|
19 | timer=$(( ( $timer * $HGTEST_TIMEOUT) / $HGTEST_TIMEOUT_DEFAULT )) | |
|
17 | 20 | fi |
|
18 | 21 | |
|
19 | 22 | wait_on="$2" |
|
20 | 23 | create="" |
|
21 | 24 | if [ $# -eq 3 ]; then |
|
22 | 25 | create="$3" |
|
23 | 26 | fi |
|
24 | 27 | |
|
25 | 28 | if [ -n "$create" ]; then |
|
26 | 29 | touch "$create" |
|
27 | 30 | create="" |
|
28 | 31 | fi |
|
29 | 32 | while [ "$timer" -gt 0 ] && [ ! -f "$wait_on" ]; do |
|
30 | 33 | timer=$(( $timer - 1)) |
|
31 |
sleep 0.0 |
|
|
34 | sleep 0.02 | |
|
32 | 35 | done |
|
33 | 36 | if [ "$timer" -le 0 ]; then |
|
34 | 37 | echo "file not created after $1 seconds: $wait_on" >&2 |
|
35 | 38 | exit 1 |
|
36 | 39 | fi |
General Comments 0
You need to be logged in to leave comments.
Login now