uw Tue, 08 Jun 2010 15:47:51 +0000 Revision: http://svn.php.net/viewvc?view=revision&revision=300282
Log: Make the tests pass with sql strict mode enabled Changed paths: U php/php-src/branches/PHP_5_3/ext/mysql/tests/mysql_fetch_array.phpt U php/php-src/branches/PHP_5_3/ext/mysql/tests/mysql_fetch_field.phpt U php/php-src/trunk/ext/mysql/tests/mysql_fetch_array.phpt U php/php-src/trunk/ext/mysql/tests/mysql_fetch_field.phpt Modified: php/php-src/branches/PHP_5_3/ext/mysql/tests/mysql_fetch_array.phpt =================================================================== --- php/php-src/branches/PHP_5_3/ext/mysql/tests/mysql_fetch_array.phpt 2010-06-08 15:13:25 UTC (rev 300281) +++ php/php-src/branches/PHP_5_3/ext/mysql/tests/mysql_fetch_array.phpt 2010-06-08 15:47:51 UTC (rev 300282) @@ -50,7 +50,7 @@ if (!$res = mysql_query("SELECT 1 AS a, 2 AS b, 3 AS c, 4 AS C", $link)) { printf("[012] Cannot run query, [%d] %s\n", mysql_errno($link), $mysql_error($link)); -exit(1); + exit(1); } do { @@ -76,7 +76,6 @@ } if (!mysql_query($sql = sprintf("CREATE TABLE test(id INT NOT NULL, label %s, PRIMARY KEY(id)) ENGINE = %s", $sql_type, $engine), $link)) { - print $sql; // don't bail, engine might not support the datatype return false; } @@ -225,11 +224,11 @@ func_mysql_fetch_array($link, $engine, "CHAR(1) NOT NULL", "a", "a", 560); func_mysql_fetch_array($link, $engine, "CHAR(1)", NULL, NULL, 570); -$string65k = func_mysql_fetch_array_make_string(65535); +$string65k = func_mysql_fetch_array_make_string(65400); func_mysql_fetch_array($link, $engine, "VARCHAR(1)", "a", "a", 580); func_mysql_fetch_array($link, $engine, "VARCHAR(255)", $string255, $string255, 590); -func_mysql_fetch_array($link, $engine, "VARCHAR(65635)", $string65k, $string65k, 600); +func_mysql_fetch_array($link, $engine, "VARCHAR(65400)", $string65k, $string65k, 600); func_mysql_fetch_array($link, $engine, "VARCHAR(1) NOT NULL", "a", "a", 610); func_mysql_fetch_array($link, $engine, "VARCHAR(1)", NULL, NULL, 620); Modified: php/php-src/branches/PHP_5_3/ext/mysql/tests/mysql_fetch_field.phpt =================================================================== --- php/php-src/branches/PHP_5_3/ext/mysql/tests/mysql_fetch_field.phpt 2010-06-08 15:13:25 UTC (rev 300281) +++ php/php-src/branches/PHP_5_3/ext/mysql/tests/mysql_fetch_field.phpt 2010-06-08 15:47:51 UTC (rev 300282) @@ -51,6 +51,7 @@ 'BIT' => array(1, 'int'), 'TINYINT' => array(1, 'int'), 'BOOL' => array('true', 'int'), + 'BOOL' => array(1, 'int'), 'SMALLINT' => array(32767, 'int'), 'MEDIUMINT' => array(8388607, 'int'), 'INT' => array(100, 'int'), @@ -86,7 +87,17 @@ // server and/or engine might not support the data type continue; } - if (!mysql_query(sprintf("INSERT INTO test(id, label) VALUES (1, '%s')", $type_desc[0]), $link)) { + + if (is_string($type_desc[0])) + $insert = sprintf("INSERT INTO test(id, label) VALUES (1, '%s')", $type_desc[0]); + else + $insert = sprintf("INSERT INTO test(id, label) VALUES (1, %s)", $type_desc[0]); + + if (!mysql_query($insert, $link)) { + if (1366 == mysql_errno($link)) { + /* Strict SQL mode - 1366, Incorrect integer value: 'true' for column 'label' at row 1 */ + continue; + } printf("[009/%s] [%d] %s\n", $type_name, mysql_errno($link), mysql_error($link)); continue; } Modified: php/php-src/trunk/ext/mysql/tests/mysql_fetch_array.phpt =================================================================== --- php/php-src/trunk/ext/mysql/tests/mysql_fetch_array.phpt 2010-06-08 15:13:25 UTC (rev 300281) +++ php/php-src/trunk/ext/mysql/tests/mysql_fetch_array.phpt 2010-06-08 15:47:51 UTC (rev 300282) @@ -50,7 +50,7 @@ if (!$res = mysql_query("SELECT 1 AS a, 2 AS b, 3 AS c, 4 AS C", $link)) { printf("[012] Cannot run query, [%d] %s\n", mysql_errno($link), $mysql_error($link)); -exit(1); + exit(1); } do { @@ -76,7 +76,6 @@ } if (!mysql_query($sql = sprintf("CREATE TABLE test(id INT NOT NULL, label %s, PRIMARY KEY(id)) ENGINE = %s", $sql_type, $engine), $link)) { - print $sql; // don't bail, engine might not support the datatype return false; } @@ -225,11 +224,11 @@ func_mysql_fetch_array($link, $engine, "CHAR(1) NOT NULL", "a", "a", 560); func_mysql_fetch_array($link, $engine, "CHAR(1)", NULL, NULL, 570); -$string65k = func_mysql_fetch_array_make_string(65535); +$string65k = func_mysql_fetch_array_make_string(65400); func_mysql_fetch_array($link, $engine, "VARCHAR(1)", "a", "a", 580); func_mysql_fetch_array($link, $engine, "VARCHAR(255)", $string255, $string255, 590); -func_mysql_fetch_array($link, $engine, "VARCHAR(65635)", $string65k, $string65k, 600); +func_mysql_fetch_array($link, $engine, "VARCHAR(65400)", $string65k, $string65k, 600); func_mysql_fetch_array($link, $engine, "VARCHAR(1) NOT NULL", "a", "a", 610); func_mysql_fetch_array($link, $engine, "VARCHAR(1)", NULL, NULL, 620); Modified: php/php-src/trunk/ext/mysql/tests/mysql_fetch_field.phpt =================================================================== --- php/php-src/trunk/ext/mysql/tests/mysql_fetch_field.phpt 2010-06-08 15:13:25 UTC (rev 300281) +++ php/php-src/trunk/ext/mysql/tests/mysql_fetch_field.phpt 2010-06-08 15:47:51 UTC (rev 300282) @@ -51,6 +51,7 @@ 'BIT' => array(1, 'int'), 'TINYINT' => array(1, 'int'), 'BOOL' => array('true', 'int'), + 'BOOL' => array(1, 'int'), 'SMALLINT' => array(32767, 'int'), 'MEDIUMINT' => array(8388607, 'int'), 'INT' => array(100, 'int'), @@ -86,7 +87,17 @@ // server and/or engine might not support the data type continue; } - if (!mysql_query(sprintf("INSERT INTO test(id, label) VALUES (1, '%s')", $type_desc[0]), $link)) { + + if (is_string($type_desc[0])) + $insert = sprintf("INSERT INTO test(id, label) VALUES (1, '%s')", $type_desc[0]); + else + $insert = sprintf("INSERT INTO test(id, label) VALUES (1, %s)", $type_desc[0]); + + if (!mysql_query($insert, $link)) { + if (1366 == mysql_errno($link)) { + /* Strict SQL mode - 1366, Incorrect integer value: 'true' for column 'label' at row 1 */ + continue; + } printf("[009/%s] [%d] %s\n", $type_name, mysql_errno($link), mysql_error($link)); continue; }
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php