Author: uwendel
Date: 2007-06-20 15:01:14 +0200 (Wed, 20 Jun 2007)
New Revision: 405
Modified:
trunk/tests/ext/mysqli/mysqli_class_mysqli_interface.phpt
Log:
Is there no way we can make the objects report their properties using introspection? Those
magic properies are a bit annoying.
mysqli_info() and mysql->info seem to return different types.
Modified: trunk/tests/ext/mysqli/mysqli_class_mysqli_interface.phpt
===================================================================
--- trunk/tests/ext/mysqli/mysqli_class_mysqli_interface.phpt 2007-06-20 12:28:25 UTC (rev
404)
+++ trunk/tests/ext/mysqli/mysqli_class_mysqli_interface.phpt 2007-06-20 13:01:14 UTC (rev
405)
@@ -33,7 +33,7 @@
printf("\nMagic, magic properties:\n");
assert(mysqli_affected_rows($link) === $mysqli->affected_rows);
- printf("mysqli->affected_rows = %s\n", $mysqli->affected_rows);
+ printf("mysqli->affected_rows = %s\n", $mysqli->affected_rows);
assert(mysqli_get_client_info() === $mysqli->client_info);
printf("mysqli->client_info = '%s'\n", $mysqli->client_info);
@@ -56,17 +56,29 @@
assert(mysqli_sqlstate($link) === $mysqli->sqlstate);
printf("mysqli->sqlstate = '%s'\n", $mysqli->sqlstate);
- printf("\nAccess to undefined properties:\n");
- printf("mysqli->unknown = '%s'\n", @$mysqli->unknown);
+ assert(mysqli_get_host_info($link) === $mysqli->host_info);
+ printf("mysqli->host_info = '%s'\n", $mysqli->host_info);
- /* TODO those properties should not be hidden */
- printf("\nAccess hidden properties (TODO documentation):\n");
- printf("mysqli->host_info = '%s'\n", $mysqli->host_info);
- printf("mysqli->info = '%s'\n", $mysqli->info);
+ assert(mysqli_info($link) === $mysqli->info);
+ printf("mysqli->info = '%s'/%s ('%s'/%s)\n",
+ $mysqli->info, gettype($mysqli->info),
+ mysqli_info($link), gettype(mysqli_info($link)));
+
+ assert(mysqli_thread_id($link) > $mysqli->thread_id);
+ printf("mysqli->thread_id = '%s' (%s)\n", $mysqli->thread_id,
mysqli_thread_id($link));
+
+ assert(mysqli_get_proto_info($link) === $mysqli->protocol_version);
printf("mysqli->protocol_version = '%s'\n", $mysqli->protocol_version);
+
+ assert(mysqli_get_server_info($link) === $mysqli->server_info);
printf("mysqli->server_info = '%s'\n", $mysqli->server_info);
+
+ assert(mysqli_get_server_version($link) === $mysqli->server_version);
printf("mysqli->server_version = '%s'\n", $mysqli->server_version);
+ printf("\nAccess to undefined properties:\n");
+ printf("mysqli->unknown = '%s'\n", @$mysqli->unknown);
+
$mysqli = new mysqli($host, $user, $passwd, $db, $port, $socket);
printf("\nAccess hidden properties for MYSLQI_STATUS_INITIALIZED (TODO
documentation):\n");
printf("mysqli->connect_error = '%s'\n", $mysqli->connect_error);
@@ -131,17 +143,16 @@
mysqli->field_count = %d
mysqli->insert_id = %d
mysqli->sqlstate = '%d%d%d%d'
-
-Access to undefined properties:
-mysqli->unknown = ''
-
-Access hidden properties (TODO documentation):
mysqli->host_info = '%s'
-mysqli->info = ''
+mysqli->info = ''/string (''/string)
+mysqli->thread_id = '%d' (%d)
mysqli->protocol_version = '%d'
mysqli->server_info = '%s'
mysqli->server_version = '%d'
+Access to undefined properties:
+mysqli->unknown = ''
+
Access hidden properties for MYSLQI_STATUS_INITIALIZED (TODO documentation):
mysqli->connect_error = ''
mysqli->connect_errno = '%d'
| Thread |
|---|
| • PHP mysqlnd svn commit: r405 - trunk/tests/ext/mysqli | uwendel | 20 Jun |