summaryrefslogtreecommitdiff
path: root/ext/sybase_ct/tests/test_fields.phpt
diff options
context:
space:
mode:
Diffstat (limited to 'ext/sybase_ct/tests/test_fields.phpt')
-rw-r--r--ext/sybase_ct/tests/test_fields.phpt76
1 files changed, 76 insertions, 0 deletions
diff --git a/ext/sybase_ct/tests/test_fields.phpt b/ext/sybase_ct/tests/test_fields.phpt
new file mode 100644
index 0000000..46e932b
--- /dev/null
+++ b/ext/sybase_ct/tests/test_fields.phpt
@@ -0,0 +1,76 @@
+--TEST--
+Sybase-CT sybase_field_* functions
+--SKIPIF--
+<?php require('skipif.inc'); ?>
+--FILE--
+<?php
+/* This file is part of PHP test framework for ext/sybase_ct
+ *
+ * $Id$
+ */
+
+ require('test.inc');
+
+ $db= sybase_connect_ex();
+
+ // Issue a query
+ $q= sybase_unbuffered_query('select
+ 1 as "id",
+ "Hello" as "caption",
+ "timm" as "author",
+ getdate() as "lastchange"
+ ', $db, FALSE);
+ var_dump($q);
+
+ var_dump(sybase_num_fields($q));
+
+ // Go through each field, dumping it
+ while ($field= sybase_fetch_field($q)) {
+ var_export($field); echo "\n";
+ }
+
+ // Seek to the second field and fetch it
+ var_dump(sybase_field_seek($q, 1));
+ var_export(sybase_fetch_field($q)); echo "\n";
+
+ sybase_close($db);
+?>
+--EXPECTF--
+resource(%d) of type (sybase-ct result)
+int(4)
+stdClass::__set_state(array(
+ 'name' => 'id',
+ 'max_length' => 11,
+ 'column_source' => '',
+ 'numeric' => 1,
+ 'type' => 'int',
+))
+stdClass::__set_state(array(
+ 'name' => 'caption',
+ 'max_length' => 5,
+ 'column_source' => '',
+ 'numeric' => 0,
+ 'type' => 'string',
+))
+stdClass::__set_state(array(
+ 'name' => 'author',
+ 'max_length' => 4,
+ 'column_source' => '',
+ 'numeric' => 0,
+ 'type' => 'string',
+))
+stdClass::__set_state(array(
+ 'name' => 'lastchange',
+ 'max_length' => 29,
+ 'column_source' => '',
+ 'numeric' => 0,
+ 'type' => 'datetime',
+))
+bool(true)
+stdClass::__set_state(array(
+ 'name' => 'caption',
+ 'max_length' => 5,
+ 'column_source' => '',
+ 'numeric' => 0,
+ 'type' => 'string',
+))