summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnatol Belski <ab@php.net>2016-12-15 12:20:37 +0100
committerAnatol Belski <ab@php.net>2016-12-15 12:20:37 +0100
commit8bc3f179cef87e675cb06872b8eeec22591e20be (patch)
treef14b97de76992ee92482771d5f17b0f506609dda
parent7c696fa886c51d556c5d15419df5a04e179b4534 (diff)
downloadphp-git-8bc3f179cef87e675cb06872b8eeec22591e20be.tar.gz
make timing check more forgiving in these tests
Particularly on slower VMs, the sporadic fails can still happen. The timing is kept in an uncritical range, but allows the tests pass there. Mayby, it'd make sense to introduce a new group for this kind of tests, so tests requiring exact time measurement can be avoided on unsuitable environments.
-rw-r--r--ext/pdo_pgsql/tests/getnotify.phpt4
-rw-r--r--ext/standard/tests/misc/time_sleep_until_basic.phpt4
2 files changed, 5 insertions, 3 deletions
diff --git a/ext/pdo_pgsql/tests/getnotify.phpt b/ext/pdo_pgsql/tests/getnotify.phpt
index c54a31604d..27eef9d740 100644
--- a/ext/pdo_pgsql/tests/getnotify.phpt
+++ b/ext/pdo_pgsql/tests/getnotify.phpt
@@ -71,7 +71,7 @@ var_dump($db->pgsqlGetNotify());
$t = microtime(1);
$notify = $db->pgsqlGetNotify(PDO::FETCH_ASSOC, 1000);
$diff = microtime(1) - $t;
-var_dump($diff >= 1 || 1 - abs($diff) < .01);
+var_dump($diff >= 1 || 1 - abs($diff) < .05);
var_dump($notify);
// Test second parameter, should return immediately because a notify is queued
@@ -79,7 +79,7 @@ $db->exec("NOTIFY notifies_phpt");
$t = microtime(1);
$notify = $db->pgsqlGetNotify(PDO::FETCH_ASSOC, 5000);
$diff = microtime(1) - $t;
-var_dump($diff < 1 || abs(1 - abs($diff)) < .01);
+var_dump($diff < 1 || abs(1 - abs($diff)) < .05);
var_dump(count($notify));
?>
diff --git a/ext/standard/tests/misc/time_sleep_until_basic.phpt b/ext/standard/tests/misc/time_sleep_until_basic.phpt
index 05cc0e6de4..2be972a134 100644
--- a/ext/standard/tests/misc/time_sleep_until_basic.phpt
+++ b/ext/standard/tests/misc/time_sleep_until_basic.phpt
@@ -23,7 +23,9 @@ Michele Orselli mo@ideato.it
// passes for up to .5 milliseconds less, fails for more than .5 milliseconds
// should be fine since time_sleep_until() on Windows is accurate to the
// millisecond(.5 rounded up is 1 millisecond)
- $now = round($now, 3);
+ // In practice, on slower machines even that can fail, so giving yet 50ms or more.
+ $tmp = round($now, 3);
+ $now = $tmp >= (int)$time ? $tmp : $tmp + .05;
}
var_dump($now >= (int)$time);
?>