diff options
Diffstat (limited to 'ext/standard/tests/general_functions/usleep_basic.phpt')
-rw-r--r-- | ext/standard/tests/general_functions/usleep_basic.phpt | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/ext/standard/tests/general_functions/usleep_basic.phpt b/ext/standard/tests/general_functions/usleep_basic.phpt new file mode 100644 index 0000000..d6f312e --- /dev/null +++ b/ext/standard/tests/general_functions/usleep_basic.phpt @@ -0,0 +1,43 @@ +--TEST-- +Test usleep() function +--SKIPIF-- +<?php +if (getenv("SKIP_SLOW_TESTS")) die("skip slow test"); +?> +--FILE-- +<?php +/* Prototype : void usleep ( int $micro_seconds ) + * Description: Delays program execution for the given number of micro seconds. + * Source code: ext/standard/basic_functions.c + */ + +set_time_limit(20); + +echo "*** Testing usleep() : basic functionality ***\n"; + +$sleeptime = 5000000; // == 5 seconds +// Test passes if sleeps for at least 98% of specified time +$sleeplow = $sleeptime - ($sleeptime * 2 /100); + +$time_start = microtime(true); + +// Sleep for a while +usleep($sleeptime); + +$time_end = microtime(true); +$time = ($time_end - $time_start) * 1000 * 1000; + +echo "Thread slept for " . $time . " micro-seconds\n"; + +if ($time >= $sleeplow) { + echo "TEST PASSED\n"; +} else { + echo "TEST FAILED\n"; +} +?> +===DONE=== +--EXPECTF-- +*** Testing usleep() : basic functionality *** +Thread slept for %f micro-seconds +TEST PASSED +===DONE=== |