summaryrefslogtreecommitdiff
path: root/ext/mysql/tests/mysql_fetch_assoc.phpt
diff options
context:
space:
mode:
authorLorry Tar Creator <lorry-tar-importer@baserock.org>2013-03-14 05:42:27 +0000
committer <>2013-04-03 16:25:08 +0000
commitc4dd7a1a684490673e25aaf4fabec5df138854c4 (patch)
tree4d57c44caae4480efff02b90b9be86f44bf25409 /ext/mysql/tests/mysql_fetch_assoc.phpt
downloadphp2-master.tar.gz
Imported from /home/lorry/working-area/delta_php2/php-5.4.13.tar.bz2.HEADphp-5.4.13master
Diffstat (limited to 'ext/mysql/tests/mysql_fetch_assoc.phpt')
-rw-r--r--ext/mysql/tests/mysql_fetch_assoc.phpt103
1 files changed, 103 insertions, 0 deletions
diff --git a/ext/mysql/tests/mysql_fetch_assoc.phpt b/ext/mysql/tests/mysql_fetch_assoc.phpt
new file mode 100644
index 0000000..3c5ca79
--- /dev/null
+++ b/ext/mysql/tests/mysql_fetch_assoc.phpt
@@ -0,0 +1,103 @@
+--TEST--
+mysql_fetch_assoc()
+--SKIPIF--
+<?php
+require_once('skipif.inc');
+require_once('skipifconnectfailure.inc');
+?>
+--FILE--
+<?php
+include "connect.inc";
+
+$tmp = NULL;
+$link = NULL;
+
+// Note: no SQL type tests, internally the same function gets used as for mysql_fetch_array() which does a lot of SQL type test
+
+if (!is_null($tmp = @mysql_fetch_assoc()))
+ printf("[001] Expecting NULL, got %s/%s\n", gettype($tmp), $tmp);
+
+if (NULL !== ($tmp = @mysql_fetch_assoc($link)))
+ printf("[002] Expecting NULL, got %s/%s\n", gettype($tmp), $tmp);
+
+require('table.inc');
+if (!$res = mysql_query("SELECT id, label FROM test ORDER BY id LIMIT 1", $link)) {
+ printf("[004] [%d] %s\n", mysql_errno($link), mysql_error($link));
+}
+
+print "[005]\n";
+var_dump(mysql_fetch_assoc($res));
+
+print "[006]\n";
+var_dump(mysql_fetch_assoc($res));
+
+mysql_free_result($res);
+
+if (!$res = mysql_query("SELECT 1 AS a, 2 AS a, 3 AS c, 4 AS C, NULL AS d, true AS e", $link)) {
+ printf("[007] Cannot run query, [%d] %s\n", mysql_errno($link), $mysql_error($link));
+}
+print "[008]\n";
+var_dump(mysql_fetch_assoc($res));
+
+mysql_free_result($res);
+
+if (false !== ($tmp = mysql_fetch_assoc($res)))
+ printf("[008] Expecting boolean/false, got %s/%s\n", gettype($tmp), $tmp);
+
+mysql_close($link);
+
+include('table.inc');
+if (!$res = mysql_query("SELECT id, label, id AS _id, CONCAT(label, 'a') _label, NULL as _foo FROM test _test ORDER BY id ASC LIMIT 1", $link)) {
+ printf("[009] [%d] %s\n", mysql_errno($link), $mysql_error($link));
+}
+print "[010]\n";
+var_dump(mysql_fetch_assoc($res));
+mysql_free_result($res);
+
+mysql_close($link);
+
+print "done!";
+?>
+--CLEAN--
+<?php
+require_once("clean_table.inc");
+?>
+--EXPECTF--
+[005]
+array(2) {
+ [%u|b%"id"]=>
+ %unicode|string%(1) "1"
+ [%u|b%"label"]=>
+ %unicode|string%(1) "a"
+}
+[006]
+bool(false)
+[008]
+array(5) {
+ [%u|b%"a"]=>
+ %unicode|string%(1) "2"
+ [%u|b%"c"]=>
+ %unicode|string%(1) "3"
+ [%u|b%"C"]=>
+ %unicode|string%(1) "4"
+ [%u|b%"d"]=>
+ NULL
+ [%u|b%"e"]=>
+ %unicode|string%(1) "1"
+}
+
+Warning: mysql_fetch_assoc(): %d is not a valid MySQL result resource in %s on line %d
+[010]
+array(5) {
+ [%u|b%"id"]=>
+ %unicode|string%(1) "1"
+ [%u|b%"label"]=>
+ %unicode|string%(1) "a"
+ [%u|b%"_id"]=>
+ %unicode|string%(1) "1"
+ [%u|b%"_label"]=>
+ %unicode|string%(2) "aa"
+ [%u|b%"_foo"]=>
+ NULL
+}
+done!