summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUlf Wendel <uw@php.net>2007-08-09 11:53:17 +0000
committerUlf Wendel <uw@php.net>2007-08-09 11:53:17 +0000
commitfb4967900dc0b604c537e098a41b20dcaeba991f (patch)
treefbc51f4b9096925df1ef44db9a231fb0ba3d20ad
parenta166bd39ac8d1cfb7cf95e862f036ef4d03dc983 (diff)
downloadphp-git-fb4967900dc0b604c537e098a41b20dcaeba991f.tar.gz
Same as for ext/mysqli tests: addition of a new environment variable
MYSQL_TEST_SKIP_CONNECT_FAILURE which controls how to deal with connection problems. If MYSQL_TEST_SKIP_CONNECT_FAILURE = false (default) connection problems will make a test fail. If you set MYSQL_TEST_SKIP_CONNECT_FAILURE to any value that evaluates to true in PHP, a test which cannot connect to the database will be skipped.
-rw-r--r--ext/mysql/tests/mysql_fetch_array.phpt5
-rw-r--r--ext/mysql/tests/mysql_fetch_assoc.phpt5
-rw-r--r--ext/mysql/tests/mysql_fetch_field.phpt5
-rw-r--r--ext/mysql/tests/mysql_fetch_lengths.phpt5
-rw-r--r--ext/mysql/tests/mysql_fetch_object.phpt5
-rw-r--r--ext/mysql/tests/mysql_fetch_row.phpt5
-rw-r--r--ext/mysql/tests/mysql_field_flags.phpt5
-rw-r--r--ext/mysql/tests/mysql_field_len.phpt5
-rw-r--r--ext/mysql/tests/mysql_field_name.phpt5
-rw-r--r--ext/mysql/tests/mysql_field_seek.phpt5
-rw-r--r--ext/mysql/tests/mysql_field_table.phpt5
-rw-r--r--ext/mysql/tests/mysql_field_type.phpt5
-rw-r--r--ext/mysql/tests/mysql_free_result.phpt5
-rw-r--r--ext/mysql/tests/mysql_get_host_info.phpt7
-rw-r--r--ext/mysql/tests/mysql_get_proto_info.phpt5
-rw-r--r--ext/mysql/tests/mysql_get_server_info.phpt5
-rw-r--r--ext/mysql/tests/mysql_info.phpt5
-rw-r--r--ext/mysql/tests/mysql_insert_id.phpt5
-rw-r--r--ext/mysql/tests/mysql_list_dbs.phpt5
-rw-r--r--ext/mysql/tests/mysql_list_fields.phpt10
-rw-r--r--ext/mysql/tests/mysql_list_processes.phpt5
-rw-r--r--ext/mysql/tests/mysql_list_tables.phpt5
-rw-r--r--ext/mysql/tests/mysql_num_fields.phpt5
-rw-r--r--ext/mysql/tests/mysql_num_rows.phpt5
-rw-r--r--ext/mysql/tests/mysql_pconnect.phpt5
-rw-r--r--ext/mysql/tests/mysql_phpinfo.phpt5
-rw-r--r--ext/mysql/tests/mysql_ping.phpt5
-rw-r--r--ext/mysql/tests/mysql_query.phpt5
-rw-r--r--ext/mysql/tests/mysql_real_escape_string.phpt5
-rw-r--r--ext/mysql/tests/mysql_result.phpt5
-rw-r--r--ext/mysql/tests/mysql_select_db.phpt5
-rw-r--r--ext/mysql/tests/mysql_set_charset.phpt1
-rw-r--r--ext/mysql/tests/mysql_stat.phpt5
-rw-r--r--ext/mysql/tests/mysql_tablename.phpt5
-rw-r--r--ext/mysql/tests/mysql_thread_id.phpt5
-rw-r--r--ext/mysql/tests/mysql_unbuffered_query.phpt5
-rwxr-xr-xext/mysql/tests/skipifconnectfailure.inc17
37 files changed, 160 insertions, 40 deletions
diff --git a/ext/mysql/tests/mysql_fetch_array.phpt b/ext/mysql/tests/mysql_fetch_array.phpt
index ffbf751247..f197ae9494 100644
--- a/ext/mysql/tests/mysql_fetch_array.phpt
+++ b/ext/mysql/tests/mysql_fetch_array.phpt
@@ -1,7 +1,10 @@
--TEST--
mysql_fetch_array()
--SKIPIF--
-<?php require_once('skipif.inc'); ?>
+<?php
+require_once('skipif.inc');
+require_once('skipifconnectfailure.inc');
+?>
--FILE--
<?php
include_once "connect.inc";
diff --git a/ext/mysql/tests/mysql_fetch_assoc.phpt b/ext/mysql/tests/mysql_fetch_assoc.phpt
index d20631b4da..69bc3c6528 100644
--- a/ext/mysql/tests/mysql_fetch_assoc.phpt
+++ b/ext/mysql/tests/mysql_fetch_assoc.phpt
@@ -1,7 +1,10 @@
--TEST--
mysql_fetch_assoc()
--SKIPIF--
-<?php require_once('skipif.inc'); ?>
+<?php
+require_once('skipif.inc');
+require_once('skipifconnectfailure.inc');
+?>
--FILE--
<?php
include "connect.inc";
diff --git a/ext/mysql/tests/mysql_fetch_field.phpt b/ext/mysql/tests/mysql_fetch_field.phpt
index 87f8c5f4f9..50f9dff705 100644
--- a/ext/mysql/tests/mysql_fetch_field.phpt
+++ b/ext/mysql/tests/mysql_fetch_field.phpt
@@ -1,7 +1,10 @@
--TEST--
mysql_fetch_field()
--SKIPIF--
-<?php require_once('skipif.inc'); ?>
+<?php
+require_once('skipif.inc');
+require_once('skipifconnectfailure.inc');
+?>
--FILE--
<?php
include "connect.inc";
diff --git a/ext/mysql/tests/mysql_fetch_lengths.phpt b/ext/mysql/tests/mysql_fetch_lengths.phpt
index 98f48091d3..32c6ea9094 100644
--- a/ext/mysql/tests/mysql_fetch_lengths.phpt
+++ b/ext/mysql/tests/mysql_fetch_lengths.phpt
@@ -1,7 +1,10 @@
--TEST--
mysql_fetch_lengths()
--SKIPIF--
-<?php require_once('skipif.inc'); ?>
+<?php
+require_once('skipif.inc');
+require_once('skipifconnectfailure.inc');
+?>
--FILE--
<?php
include "connect.inc";
diff --git a/ext/mysql/tests/mysql_fetch_object.phpt b/ext/mysql/tests/mysql_fetch_object.phpt
index cd4c01f875..8bb83429b9 100644
--- a/ext/mysql/tests/mysql_fetch_object.phpt
+++ b/ext/mysql/tests/mysql_fetch_object.phpt
@@ -1,7 +1,10 @@
--TEST--
mysql_fetch_object()
--SKIPIF--
-<?php require_once('skipif.inc'); ?>
+<?php
+require_once('skipif.inc');
+require_once('skipifconnectfailure.inc');
+?>
--FILE--
<?php
include "connect.inc";
diff --git a/ext/mysql/tests/mysql_fetch_row.phpt b/ext/mysql/tests/mysql_fetch_row.phpt
index 76356ead7a..b98f29c4da 100644
--- a/ext/mysql/tests/mysql_fetch_row.phpt
+++ b/ext/mysql/tests/mysql_fetch_row.phpt
@@ -1,7 +1,10 @@
--TEST--
mysql_fetch_row()
--SKIPIF--
-<?php require_once('skipif.inc'); ?>
+<?php
+require_once('skipif.inc');
+require_once('skipifconnectfailure.inc');
+?>
--FILE--
<?php
include "connect.inc";
diff --git a/ext/mysql/tests/mysql_field_flags.phpt b/ext/mysql/tests/mysql_field_flags.phpt
index 3595ba0500..4a63c907fc 100644
--- a/ext/mysql/tests/mysql_field_flags.phpt
+++ b/ext/mysql/tests/mysql_field_flags.phpt
@@ -1,7 +1,10 @@
--TEST--
mysql_field_flags()
--SKIPIF--
-<?php require_once('skipif.inc'); ?>
+<?php
+require_once('skipif.inc');
+require_once('skipifconnectfailure.inc');
+?>
--FILE--
<?php
include "connect.inc";
diff --git a/ext/mysql/tests/mysql_field_len.phpt b/ext/mysql/tests/mysql_field_len.phpt
index 9e183137d0..76c298112c 100644
--- a/ext/mysql/tests/mysql_field_len.phpt
+++ b/ext/mysql/tests/mysql_field_len.phpt
@@ -1,7 +1,10 @@
--TEST--
mysql_field_len()
--SKIPIF--
-<?php require_once('skipif.inc'); ?>
+<?php
+require_once('skipif.inc');
+require_once('skipifconnectfailure.inc');
+?>
--FILE--
<?php
include "connect.inc";
diff --git a/ext/mysql/tests/mysql_field_name.phpt b/ext/mysql/tests/mysql_field_name.phpt
index 25f8035356..c37ba6eb04 100644
--- a/ext/mysql/tests/mysql_field_name.phpt
+++ b/ext/mysql/tests/mysql_field_name.phpt
@@ -1,7 +1,10 @@
--TEST--
mysql_field_name()
--SKIPIF--
-<?php require_once('skipif.inc'); ?>
+<?php
+require_once('skipif.inc');
+require_once('skipifconnectfailure.inc');
+?>
--FILE--
<?php
include "connect.inc";
diff --git a/ext/mysql/tests/mysql_field_seek.phpt b/ext/mysql/tests/mysql_field_seek.phpt
index 6a3a647625..e5105d984d 100644
--- a/ext/mysql/tests/mysql_field_seek.phpt
+++ b/ext/mysql/tests/mysql_field_seek.phpt
@@ -1,7 +1,10 @@
--TEST--
mysql_field_seek()
--SKIPIF--
-<?php require_once('skipif.inc'); ?>
+<?php
+require_once('skipif.inc');
+require_once('skipifconnectfailure.inc');
+?>
--FILE--
<?php
include "connect.inc";
diff --git a/ext/mysql/tests/mysql_field_table.phpt b/ext/mysql/tests/mysql_field_table.phpt
index dd64b2ca44..e82ac13abc 100644
--- a/ext/mysql/tests/mysql_field_table.phpt
+++ b/ext/mysql/tests/mysql_field_table.phpt
@@ -1,7 +1,10 @@
--TEST--
mysql_field_table()
--SKIPIF--
-<?php require_once('skipif.inc'); ?>
+<?php
+require_once('skipif.inc');
+require_once('skipifconnectfailure.inc');
+?>
--FILE--
<?php
include "connect.inc";
diff --git a/ext/mysql/tests/mysql_field_type.phpt b/ext/mysql/tests/mysql_field_type.phpt
index 25b3ae58ae..61d8425fe7 100644
--- a/ext/mysql/tests/mysql_field_type.phpt
+++ b/ext/mysql/tests/mysql_field_type.phpt
@@ -1,7 +1,10 @@
--TEST--
mysql_field_type()
--SKIPIF--
-<?php require_once('skipif.inc'); ?>
+<?php
+require_once('skipif.inc');
+require_once('skipifconnectfailure.inc');
+?>
--FILE--
<?php
include "connect.inc";
diff --git a/ext/mysql/tests/mysql_free_result.phpt b/ext/mysql/tests/mysql_free_result.phpt
index 41903f467e..95e5656a4f 100644
--- a/ext/mysql/tests/mysql_free_result.phpt
+++ b/ext/mysql/tests/mysql_free_result.phpt
@@ -1,7 +1,10 @@
--TEST--
mysql_free_result()
--SKIPIF--
-<?php require_once('skipif.inc'); ?>
+<?php
+require_once('skipif.inc');
+require_once('skipifconnectfailure.inc');
+?>
--FILE--
<?php
include "connect.inc";
diff --git a/ext/mysql/tests/mysql_get_host_info.phpt b/ext/mysql/tests/mysql_get_host_info.phpt
index 73468319f6..213a792fd8 100644
--- a/ext/mysql/tests/mysql_get_host_info.phpt
+++ b/ext/mysql/tests/mysql_get_host_info.phpt
@@ -1,7 +1,10 @@
--TEST--
mysql_get_host_info()
--SKIPIF--
-<?php require_once('skipif.inc'); ?>
+<?php
+require_once('skipif.inc');
+require_once('skipifconnectfailure.inc');
+?>
--FILE--
<?php
include_once "connect.inc";
@@ -34,4 +37,4 @@ if (!is_null($tmp = @mysql_get_host_info($link, "too many arguments"))) {
print "done!";
?>
--EXPECTF--
-done!
+done! \ No newline at end of file
diff --git a/ext/mysql/tests/mysql_get_proto_info.phpt b/ext/mysql/tests/mysql_get_proto_info.phpt
index 9483296fa3..989141a47f 100644
--- a/ext/mysql/tests/mysql_get_proto_info.phpt
+++ b/ext/mysql/tests/mysql_get_proto_info.phpt
@@ -1,7 +1,10 @@
--TEST--
mysql_get_proto_info()
--SKIPIF--
-<?php require_once('skipif.inc'); ?>
+<?php
+require_once('skipif.inc');
+require_once('skipifconnectfailure.inc');
+?>
--FILE--
<?php
include_once "connect.inc";
diff --git a/ext/mysql/tests/mysql_get_server_info.phpt b/ext/mysql/tests/mysql_get_server_info.phpt
index da32363e5c..b759f47f69 100644
--- a/ext/mysql/tests/mysql_get_server_info.phpt
+++ b/ext/mysql/tests/mysql_get_server_info.phpt
@@ -1,7 +1,10 @@
--TEST--
mysql_get_server_info()
--SKIPIF--
-<?php require_once('skipif.inc'); ?>
+<?php
+require_once('skipif.inc');
+require_once('skipifconnectfailure.inc');
+?>
--FILE--
<?php
include "connect.inc";
diff --git a/ext/mysql/tests/mysql_info.phpt b/ext/mysql/tests/mysql_info.phpt
index 1a7b2a4fb3..6cb058f181 100644
--- a/ext/mysql/tests/mysql_info.phpt
+++ b/ext/mysql/tests/mysql_info.phpt
@@ -1,7 +1,10 @@
--TEST--
mysql_info()
--SKIPIF--
-<?php require_once('skipif.inc'); ?>
+<?php
+require_once('skipif.inc');
+require_once('skipifconnectfailure.inc');
+?>
--FILE--
<?php
include "connect.inc";
diff --git a/ext/mysql/tests/mysql_insert_id.phpt b/ext/mysql/tests/mysql_insert_id.phpt
index 850c9e8251..29ac78f243 100644
--- a/ext/mysql/tests/mysql_insert_id.phpt
+++ b/ext/mysql/tests/mysql_insert_id.phpt
@@ -1,7 +1,10 @@
--TEST--
mysql_insert_id()
--SKIPIF--
-<?php require_once('skipif.inc'); ?>
+<?php
+require_once('skipif.inc');
+require_once('skipifconnectfailure.inc');
+?>
--FILE--
<?php
include "connect.inc";
diff --git a/ext/mysql/tests/mysql_list_dbs.phpt b/ext/mysql/tests/mysql_list_dbs.phpt
index 5050f01901..f79ee2d127 100644
--- a/ext/mysql/tests/mysql_list_dbs.phpt
+++ b/ext/mysql/tests/mysql_list_dbs.phpt
@@ -1,7 +1,10 @@
--TEST--
mysql_list_dbs()
--SKIPIF--
-<?php require_once('skipif.inc'); ?>
+<?php
+require_once('skipif.inc');
+require_once('skipifconnectfailure.inc');
+?>
--FILE--
<?php
include_once "connect.inc";
diff --git a/ext/mysql/tests/mysql_list_fields.phpt b/ext/mysql/tests/mysql_list_fields.phpt
index 500eb58c45..5430d47c14 100644
--- a/ext/mysql/tests/mysql_list_fields.phpt
+++ b/ext/mysql/tests/mysql_list_fields.phpt
@@ -1,7 +1,10 @@
--TEST--
mysql_list_fields()
--SKIPIF--
-<?php require_once('skipif.inc'); ?>
+<?php
+require_once('skipif.inc');
+require_once('skipifconnectfailure.inc');
+?>
--FILE--
<?php
include_once "connect.inc";
@@ -9,11 +12,10 @@ include_once "connect.inc";
$tmp = NULL;
$link = NULL;
-if (false !== ($tmp = mysql_list_fields($link, $link)))
+if (false !== ($tmp = @mysql_list_fields($link, $link)))
printf("[002] Expecting boolean/false, got %s/%s\n", gettype($tmp), $tmp);
require('table.inc');
-
if (!$res = mysql_list_fields($db, 'test', $link))
printf("[003] [%d] %s\n", mysql_errno($link), mysql_error($link));
@@ -23,7 +25,7 @@ if (!($num = mysql_num_fields($res)))
mysql_free_result($res);
mysql_close($link);
-print "done!\n";
+print "done!";
?>
--EXPECTF--
done! \ No newline at end of file
diff --git a/ext/mysql/tests/mysql_list_processes.phpt b/ext/mysql/tests/mysql_list_processes.phpt
index 9f3dd62a85..9cf51db617 100644
--- a/ext/mysql/tests/mysql_list_processes.phpt
+++ b/ext/mysql/tests/mysql_list_processes.phpt
@@ -1,7 +1,10 @@
--TEST--
mysql_list_processes()
--SKIPIF--
-<?php require_once('skipif.inc'); ?>
+<?php
+require_once('skipif.inc');
+require_once('skipifconnectfailure.inc');
+?>
--FILE--
<?php
include "connect.inc";
diff --git a/ext/mysql/tests/mysql_list_tables.phpt b/ext/mysql/tests/mysql_list_tables.phpt
index 5091030566..6b66dd7067 100644
--- a/ext/mysql/tests/mysql_list_tables.phpt
+++ b/ext/mysql/tests/mysql_list_tables.phpt
@@ -1,8 +1,9 @@
--TEST--
mysql_list_tables()
--SKIPIF--
-<?php
-require_once('skipif.inc');
+<?php
+require_once('skipif.inc');
+require_once('skipifconnectfailure.inc');
?>
--FILE--
<?php
diff --git a/ext/mysql/tests/mysql_num_fields.phpt b/ext/mysql/tests/mysql_num_fields.phpt
index e32ca7a2eb..c49234a0a3 100644
--- a/ext/mysql/tests/mysql_num_fields.phpt
+++ b/ext/mysql/tests/mysql_num_fields.phpt
@@ -1,7 +1,10 @@
--TEST--
mysql_num_fields()
--SKIPIF--
-<?php require_once('skipif.inc'); ?>
+<?php
+require_once('skipif.inc');
+require_once('skipifconnectfailure.inc');
+?>
--FILE--
<?php
include "connect.inc";
diff --git a/ext/mysql/tests/mysql_num_rows.phpt b/ext/mysql/tests/mysql_num_rows.phpt
index db34134e5d..14c4c4e0b2 100644
--- a/ext/mysql/tests/mysql_num_rows.phpt
+++ b/ext/mysql/tests/mysql_num_rows.phpt
@@ -1,7 +1,10 @@
--TEST--
mysql_num_rows()
--SKIPIF--
-<?php require_once('skipif.inc'); ?>
+<?php
+require_once('skipif.inc');
+require_once('skipifconnectfailure.inc');
+?>
--FILE--
<?php
include "connect.inc";
diff --git a/ext/mysql/tests/mysql_pconnect.phpt b/ext/mysql/tests/mysql_pconnect.phpt
index 77b86c6f30..7a81d2b42f 100644
--- a/ext/mysql/tests/mysql_pconnect.phpt
+++ b/ext/mysql/tests/mysql_pconnect.phpt
@@ -1,7 +1,10 @@
--TEST--
mysql_pconnect()
--SKIPIF--
-<?php require_once('skipif.inc'); ?>
+<?php
+require_once('skipif.inc');
+require_once('skipifconnectfailure.inc');
+?>
--FILE--
<?php
include "connect.inc";
diff --git a/ext/mysql/tests/mysql_phpinfo.phpt b/ext/mysql/tests/mysql_phpinfo.phpt
index 81b24ce945..42e5b1806a 100644
--- a/ext/mysql/tests/mysql_phpinfo.phpt
+++ b/ext/mysql/tests/mysql_phpinfo.phpt
@@ -1,7 +1,10 @@
--TEST--
phpinfo() mysql section
--SKIPIF--
-<?php require_once('skipif.inc'); ?>
+<?php
+require_once('skipif.inc');
+require_once('skipifconnectfailure.inc');
+?>
--FILE--
<?php
include_once("connect.inc");
diff --git a/ext/mysql/tests/mysql_ping.phpt b/ext/mysql/tests/mysql_ping.phpt
index f9162ebf24..2e4130e33f 100644
--- a/ext/mysql/tests/mysql_ping.phpt
+++ b/ext/mysql/tests/mysql_ping.phpt
@@ -1,7 +1,10 @@
--TEST--
mysql_ping()
--SKIPIF--
-<?php require_once('skipif.inc'); ?>
+<?php
+require_once('skipif.inc');
+require_once('skipifconnectfailure.inc');
+?>
--FILE--
<?php
include_once "connect.inc";
diff --git a/ext/mysql/tests/mysql_query.phpt b/ext/mysql/tests/mysql_query.phpt
index 9906f99f91..d1d4dfb8e9 100644
--- a/ext/mysql/tests/mysql_query.phpt
+++ b/ext/mysql/tests/mysql_query.phpt
@@ -1,7 +1,10 @@
--TEST--
mysql_query()
--SKIPIF--
-<?php require_once('skipif.inc'); ?>
+<?php
+require_once('skipif.inc');
+require_once('skipifconnectfailure.inc');
+?>
--FILE--
<?php
include_once("connect.inc");
diff --git a/ext/mysql/tests/mysql_real_escape_string.phpt b/ext/mysql/tests/mysql_real_escape_string.phpt
index cef123720e..511da068bd 100644
--- a/ext/mysql/tests/mysql_real_escape_string.phpt
+++ b/ext/mysql/tests/mysql_real_escape_string.phpt
@@ -1,7 +1,10 @@
--TEST--
mysql_real_escape_string()
--SKIPIF--
-<?php require_once('skipif.inc'); ?>
+<?php
+require_once('skipif.inc');
+require_once('skipifconnectfailure.inc');
+?>
--FILE--
<?php
include "connect.inc";
diff --git a/ext/mysql/tests/mysql_result.phpt b/ext/mysql/tests/mysql_result.phpt
index d8b521dcf5..bc3e5bc009 100644
--- a/ext/mysql/tests/mysql_result.phpt
+++ b/ext/mysql/tests/mysql_result.phpt
@@ -1,7 +1,10 @@
--TEST--
mysql_result()
--SKIPIF--
-<?php require_once('skipif.inc'); ?>
+<?php
+require_once('skipif.inc');
+require_once('skipifconnectfailure.inc');
+?>
--FILE--
<?php
include "connect.inc";
diff --git a/ext/mysql/tests/mysql_select_db.phpt b/ext/mysql/tests/mysql_select_db.phpt
index d994689ee5..3391fa6e95 100644
--- a/ext/mysql/tests/mysql_select_db.phpt
+++ b/ext/mysql/tests/mysql_select_db.phpt
@@ -1,7 +1,10 @@
--TEST--
mysql_select_db()
--SKIPIF--
-<?php require_once('skipif.inc'); ?>
+<?php
+require_once('skipif.inc');
+require_once('skipifconnectfailure.inc');
+?>
--FILE--
<?php
include_once "connect.inc";
diff --git a/ext/mysql/tests/mysql_set_charset.phpt b/ext/mysql/tests/mysql_set_charset.phpt
index 8ccdbabcce..0fbff44e88 100644
--- a/ext/mysql/tests/mysql_set_charset.phpt
+++ b/ext/mysql/tests/mysql_set_charset.phpt
@@ -3,6 +3,7 @@ mysql_set_charset() - STUB, function usage not recommended
--SKIPIF--
<?php
require_once('skipif.inc');
+require_once('skipifconnectfailure.inc');
if (!function_exists('mysql_set_charset'))
die("skip Function not available");
?>
diff --git a/ext/mysql/tests/mysql_stat.phpt b/ext/mysql/tests/mysql_stat.phpt
index 9886bf8bf0..bc5be9540d 100644
--- a/ext/mysql/tests/mysql_stat.phpt
+++ b/ext/mysql/tests/mysql_stat.phpt
@@ -1,7 +1,10 @@
--TEST--
mysql_stat()
--SKIPIF--
-<?php require_once('skipif.inc'); ?>
+<?php
+require_once('skipif.inc');
+require_once('skipifconnectfailure.inc');
+?>
--FILE--
<?php
include_once "connect.inc";
diff --git a/ext/mysql/tests/mysql_tablename.phpt b/ext/mysql/tests/mysql_tablename.phpt
index d238794a86..7524cdb343 100644
--- a/ext/mysql/tests/mysql_tablename.phpt
+++ b/ext/mysql/tests/mysql_tablename.phpt
@@ -1,7 +1,10 @@
--TEST--
mysql_tablename()
--SKIPIF--
-<?php require_once('skipif.inc'); ?>
+<?php
+require_once('skipif.inc');
+require_once('skipifconnectfailure.inc');
+?>
--FILE--
<?php
include "connect.inc";
diff --git a/ext/mysql/tests/mysql_thread_id.phpt b/ext/mysql/tests/mysql_thread_id.phpt
index 6289a72375..b05bb3ed1c 100644
--- a/ext/mysql/tests/mysql_thread_id.phpt
+++ b/ext/mysql/tests/mysql_thread_id.phpt
@@ -1,7 +1,10 @@
--TEST--
mysql_thread_id()
--SKIPIF--
-<?php require_once('skipif.inc'); ?>
+<?php
+require_once('skipif.inc');
+require_once('skipifconnectfailure.inc');
+?>
--FILE--
<?php
include_once "connect.inc";
diff --git a/ext/mysql/tests/mysql_unbuffered_query.phpt b/ext/mysql/tests/mysql_unbuffered_query.phpt
index a19ba45706..6701ce52a0 100644
--- a/ext/mysql/tests/mysql_unbuffered_query.phpt
+++ b/ext/mysql/tests/mysql_unbuffered_query.phpt
@@ -1,7 +1,10 @@
--TEST--
mysql_unbuffered_query()
--SKIPIF--
-<?php require_once('skipif.inc'); ?>
+<?php
+require_once('skipif.inc');
+require_once('skipifconnectfailure.inc');
+?>
--FILE--
<?php
include_once("connect.inc");
diff --git a/ext/mysql/tests/skipifconnectfailure.inc b/ext/mysql/tests/skipifconnectfailure.inc
new file mode 100755
index 0000000000..2fe4090daf
--- /dev/null
+++ b/ext/mysql/tests/skipifconnectfailure.inc
@@ -0,0 +1,17 @@
+<?php
+$skip_on_connect_failure = getenv("MYSQL_TEST_SKIP_CONNECT_FAILURE") ? getenv("MYSQL_TEST_SKIP_CONNECT_FAILURE") : false;
+if ($skip_on_connect_failure) {
+ if ($socket)
+ $myhost = sprintf("%s:%s", $host, $socket);
+ else if ($port)
+ $myhost = sprintf("%s:%s", $host, $port);
+
+ if (!$link = @mysql_connect($myhost, $user, $passwd, true))
+ die(sprintf("skip Can't connect to MySQL Server - [%d] %s", mysql_errno(), mysql_error()));
+
+ if (!@mysql_select_db($db, $link))
+ die(sprintf("skip Can't connect to MySQL Server - [%d] %s", mysql_errno(), mysql_error()));
+
+ mysql_close($link);
+}
+?> \ No newline at end of file