From: Date: February 28 2008 4:23pm Subject: PHP mysqlnd svn commit: r1309 - trunk/tests/ext/pdo_mysql List-Archive: http://lists.mysql.com/commits/43156 Message-Id: <200802281523.m1SFNpQx015741@bk-internal.mysql.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Author: uwendel Date: 2008-02-28 16:23:51 +0100 (Thu, 28 Feb 2008) New Revision: 1309 Added: trunk/tests/ext/pdo_mysql/pdo_mysql_stmt_columncount.phpt Log: Needs to be extended later. Only improvement over the generic test is that it check both emulated and native PS. Added: trunk/tests/ext/pdo_mysql/pdo_mysql_stmt_columncount.phpt =================================================================== --- trunk/tests/ext/pdo_mysql/pdo_mysql_stmt_columncount.phpt (rev 0) +++ trunk/tests/ext/pdo_mysql/pdo_mysql_stmt_columncount.phpt 2008-02-28 15:23:51 UTC (rev 1309) @@ -0,0 +1,63 @@ +--TEST-- +MySQL PDOStatement->columnCount() +--SKIPIF-- + +--FILE-- +setAttribute(PDO::MYSQL_ATTR_DIRECT_QUERY, 1); + if (1 != $db->getAttribute(PDO::MYSQL_ATTR_DIRECT_QUERY)) + printf("[002] Unable to turn off emulated prepared statements\n"); + + $stmt = $db->prepare('SELECT id, label, "?" as foo FROM test'); + $stmt->execute(); + var_dump($stmt->columnCount()); + + $stmt = $db->query('SELECT * FROM test'); + var_dump($stmt->columnCount()); + + } catch (PDOException $e) { + printf("[001] %s [%s] %s\n", + $e->getMessage(), $db->errorCode(), implode(' ', $db->errorInfo())); + } + + printf("Testing emulated PS...\n"); + try { + $db->setAttribute(PDO::MYSQL_ATTR_DIRECT_QUERY, 0); + if (0 != $db->getAttribute(PDO::MYSQL_ATTR_DIRECT_QUERY)) + printf("[004] Unable to turn on emulated prepared statements\n"); + + $stmt = $db->prepare('SELECT id, label, "?" as foo, "TODO - Stored Procedure" as bar FROM test'); + $stmt->execute(); + var_dump($stmt->columnCount()); + + $stmt = $db->query('SELECT * FROM test'); + var_dump($stmt->columnCount()); + + } catch (PDOException $e) { + printf("[003] %s [%s] %s\n", + $e->getMessage(), $db->errorCode(), implode(' ', $db->errorInfo())); + } + print "done!"; +?> +--EXPECTF-- +Testing native PS... +int(3) +int(2) +Testing emulated PS... +int(4) +int(2) +done! \ No newline at end of file