diff options
author | Christoph M. Becker <cmbecker69@gmx.de> | 2019-04-29 09:07:13 +0200 |
---|---|---|
committer | Christoph M. Becker <cmbecker69@gmx.de> | 2019-04-29 09:07:13 +0200 |
commit | 9481cb43b3c4f1ab5198aa06e55df7355b3f23e5 (patch) | |
tree | ff8b0710d4f6710c0a55252d5e1a3aad81813611 | |
parent | c79eb107a0f5f4de085b50df5990842bc8202325 (diff) | |
parent | 7faaf5a89ab1110c971a1b7f7539d4ea0a41bbf5 (diff) | |
download | php-git-9481cb43b3c4f1ab5198aa06e55df7355b3f23e5.tar.gz |
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Fix tests
-rw-r--r-- | ext/pdo_mysql/tests/pdo_mysql___construct_uri-win32.phpt | 79 | ||||
-rw-r--r-- | ext/pdo_mysql/tests/pdo_mysql___construct_uri.phpt | 17 |
2 files changed, 7 insertions, 89 deletions
diff --git a/ext/pdo_mysql/tests/pdo_mysql___construct_uri-win32.phpt b/ext/pdo_mysql/tests/pdo_mysql___construct_uri-win32.phpt deleted file mode 100644 index 73f2ddf4a1..0000000000 --- a/ext/pdo_mysql/tests/pdo_mysql___construct_uri-win32.phpt +++ /dev/null @@ -1,79 +0,0 @@ ---TEST-- -MySQL PDO->__construct() - URI ---SKIPIF-- -<?php -if (substr(PHP_OS, 0, 3) != 'WIN') { - die('skip only for Windows'); -} -require_once(__DIR__ . DIRECTORY_SEPARATOR . 'skipif.inc'); -require_once(__DIR__ . DIRECTORY_SEPARATOR . 'mysql_pdo_test.inc'); -MySQLPDOTest::skip(); -?> ---FILE-- -<?php - require_once(__DIR__ . DIRECTORY_SEPARATOR . 'mysql_pdo_test.inc'); - - try { - - if ($tmp = MySQLPDOTest::getTempDir()) { - - $file = $tmp . DIRECTORY_SEPARATOR . 'pdomuri.tst'; - $dsn = MySQLPDOTest::getDSN(); - $user = PDO_MYSQL_TEST_USER; - $pass = PDO_MYSQL_TEST_PASS; - $uri = sprintf('uri:file:%s', $file); - - if ($fp = @fopen($file, 'w')) { - // ok, great we can create a file with a DSN in it - fwrite($fp, $dsn); - fclose($fp); - clearstatcache(); - assert(file_exists($file)); - try { - $db = new PDO($uri, $user, $pass); - } catch (PDOException $e) { - printf("[002] URI=%s, DSN=%s, File=%s (%d bytes, '%s'), %s\n", - $uri, $dsn, - $file, filesize($file), file_get_contents($file), - $e->getMessage()); - } - unlink($file); - } - - if ($fp = @fopen($file, 'w')) { - fwrite($fp, sprintf('mysql:dbname=letshopeinvalid;%s%s', - chr(0), $dsn)); - fclose($fp); - clearstatcache(); - assert(file_exists($file)); - try { - $db = new PDO($uri, $user, $pass); - } catch (PDOException $e) { - printf("[003] URI=%s, DSN=%s, File=%s (%d bytes, '%s'), chr(0) test, %s\n", - $uri, $dsn, - $file, filesize($file), file_get_contents($file), - $e->getMessage()); - } - unlink($file); - } - - } - - /* TODO: safe mode */ - - } catch (PDOException $e) { - printf("[001] %s, [%s] %s\n", - $e->getMessage(), - (is_object($db)) ? $db->errorCode() : 'n/a', - (is_object($db)) ? implode(' ', $db->errorInfo()) : 'n/a'); - } - - print "done!"; -?> ---EXPECTF-- -Warning: PDO::__construct(file:%spdomuri.tst): failed to open stream: Invalid argument in %s on line %d -[002] URI=uri:file:%spdomuri.tst, DSN=mysql%sdbname=%s, File=%spdomuri.tst (%d bytes, 'mysql%sdbname=%s'), invalid data source URI - -Warning: PDO::__construct(file:%spdomuri.tst): failed to open stream: Invalid argument in %s on line %d -[003] URI=uri:file:%spdomuri.tst, DSN=mysql%sdbname=%s, File=%spdomuri.tst (%d bytes, 'mysql%sdbname=letshopeinvalid%s'), chr(0) test, invalid data source URI -done! diff --git a/ext/pdo_mysql/tests/pdo_mysql___construct_uri.phpt b/ext/pdo_mysql/tests/pdo_mysql___construct_uri.phpt index 6cd7107001..7418033768 100644 --- a/ext/pdo_mysql/tests/pdo_mysql___construct_uri.phpt +++ b/ext/pdo_mysql/tests/pdo_mysql___construct_uri.phpt @@ -2,9 +2,6 @@ MySQL PDO->__construct() - URI --SKIPIF-- <?php -if (substr(PHP_OS, 0, 3) == 'WIN') { - die('skip not for Windows'); -} require_once(__DIR__ . DIRECTORY_SEPARATOR . 'skipif.inc'); require_once(__DIR__ . DIRECTORY_SEPARATOR . 'mysql_pdo_test.inc'); MySQLPDOTest::skip(); @@ -21,7 +18,7 @@ MySQLPDOTest::skip(); $dsn = MySQLPDOTest::getDSN(); $user = PDO_MYSQL_TEST_USER; $pass = PDO_MYSQL_TEST_PASS; - $uri = sprintf('uri:file:%s', $file); + $uri = sprintf('uri:file://%s', (substr(PHP_OS, 0, 3) == 'WIN' ? str_replace('\\', '/', $file) : $file)); if ($fp = @fopen($file, 'w')) { // ok, great we can create a file with a DSN in it @@ -49,10 +46,14 @@ MySQLPDOTest::skip(); try { $db = new PDO($uri, $user, $pass); } catch (PDOException $e) { + $expected = array( + "SQLSTATE[HY000] [1049] Unknown database 'letshopeinvalid'", + "SQLSTATE[HY000] [2002] No such file or directory" + ); printf("[003] URI=%s, DSN=%s, File=%s (%d bytes, '%s'), chr(0) test, %s\n", $uri, $dsn, $file, filesize($file), file_get_contents($file), - $e->getMessage()); + (in_array($e->getMessage(), $expected) ? 'EXPECTED ERROR' : $e->getMessage())); } unlink($file); } @@ -71,9 +72,5 @@ MySQLPDOTest::skip(); print "done!"; ?> --EXPECTF-- -Warning: PDO::__construct(file:/tmp/pdomuri.tst): failed to open stream: No such file or directory in %s on line %d -[002] URI=uri:file:%spdomuri.tst, DSN=mysql%sdbname=%s, File=%spdomuri.tst (%d bytes, 'mysql%sdbname=%s'), invalid data source URI - -Warning: PDO::__construct(file:/tmp/pdomuri.tst): failed to open stream: No such file or directory in %s on line %d -[003] URI=uri:file:%spdomuri.tst, DSN=mysql%sdbname=%s, File=%spdomuri.tst (%d bytes, 'mysql%sdbname=letshopeinvalid%s'), chr(0) test, invalid data source URI +[003] URI=uri:file://%spdomuri.tst, DSN=mysql%sdbname=%s, File=%spdomuri.tst (%d bytes, 'mysql%sdbname=letshopeinvalid%s'), chr(0) test, EXPECTED ERROR done! |