summaryrefslogtreecommitdiffstats
path: root/Tests/Auth/OpenID
diff options
context:
space:
mode:
Diffstat (limited to 'Tests/Auth/OpenID')
-rw-r--r--Tests/Auth/OpenID/StoreTest.php21
1 files changed, 17 insertions, 4 deletions
diff --git a/Tests/Auth/OpenID/StoreTest.php b/Tests/Auth/OpenID/StoreTest.php
index 75f2254..48cf33e 100644
--- a/Tests/Auth/OpenID/StoreTest.php
+++ b/Tests/Auth/OpenID/StoreTest.php
@@ -359,11 +359,24 @@ explicitly');
return;
}
- // Try to create the test database.
- $result = $template_db->query(sprintf("CREATE DATABASE %s",
- $temp_db_name));
+ $allowed_failures = 5;
+ $failures = 0;
+ $success = false;
+
+ while (($failures < $allowed_failures) && !$success) {
+ // Try to create the test database.
+ $result = $template_db->query(sprintf("CREATE DATABASE %s",
+ $temp_db_name));
+
+ if (PEAR::isError($result)) {
+ $failures++;
+ sleep(1);
+ } else {
+ $success = true;
+ }
+ }
- if (PEAR::isError($result)) {
+ if (!$success) {
$this->fail("Temporary database creation failed ".
"('$temp_db_name'): " . $result->getMessage());
return;