]> granicus.if.org Git - php/commitdiff
- MFB: Initial release
authorTimm Friebe <thekid@php.net>
Mon, 10 Nov 2008 11:49:49 +0000 (11:49 +0000)
committerTimm Friebe <thekid@php.net>
Mon, 10 Nov 2008 11:49:49 +0000 (11:49 +0000)
ext/sybase_ct/tests/bug30312-withfree.phpt [new file with mode: 0644]
ext/sybase_ct/tests/bug43578.phpt [new file with mode: 0644]
ext/sybase_ct/tests/test_close.phpt [new file with mode: 0644]
ext/sybase_ct/tests/test_close_default.phpt [new file with mode: 0644]
ext/sybase_ct/tests/test_close_notopen.phpt [new file with mode: 0644]
ext/sybase_ct/tests/test_connection_caching.phpt [new file with mode: 0644]
ext/sybase_ct/tests/test_unbuffered_no_full_fetch.phpt [new file with mode: 0644]

diff --git a/ext/sybase_ct/tests/bug30312-withfree.phpt b/ext/sybase_ct/tests/bug30312-withfree.phpt
new file mode 100644 (file)
index 0000000..0017865
--- /dev/null
@@ -0,0 +1,34 @@
+--TEST--
+Sybase-CT bug #30312 (sybase_unbuffered_query calls, with free)
+--SKIPIF--
+<?php require('skipif.inc'); ?>
+--FILE--
+<?php
+/* This file is part of PHP test framework for ext/sybase_ct
+ *
+ * $Id$
+ */
+
+  require('test.inc');
+  error_reporting(error_reporting() & !E_NOTICE);       // Suppress notices
+
+  $db= sybase_connect_ex();
+
+  $query= sybase_unbuffered_query('select datepart(yy, getdate())');
+  $array= sybase_fetch_row($query);
+  var_dump($array[0]);
+  sybase_free_result($query);
+
+  $query= sybase_unbuffered_query('select datepart(mm, getdate()), datepart(dd, getdate())');
+  $array= sybase_fetch_row($query);
+  var_dump($array);
+  sybase_free_result($query);
+?>
+--EXPECTF--
+int(%d)
+array(2) {
+  [0]=>
+  int(%d)
+  [1]=>
+  int(%d)
+}
diff --git a/ext/sybase_ct/tests/bug43578.phpt b/ext/sybase_ct/tests/bug43578.phpt
new file mode 100644 (file)
index 0000000..e840402
--- /dev/null
@@ -0,0 +1,65 @@
+--TEST--
+Sybase-CT bug #43578 (Incurred fault #6 - if returned textfield ist empty)
+--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();
+  
+  // Create a temporary table and fill it with test values
+  var_dump(sybase_query('
+    create table #Resource (
+      Resource_ID int,
+      DC_Rights text null
+    )
+  ', $db));
+  var_dump(sybase_query('insert into #Resource values (123, NULL)', $db));
+  var_dump(sybase_query('insert into #Resource values (124, "")', $db));
+
+  // Select non-existant
+  var_dump(sybase_select_ex($db, 'select DC_Rights from #Resource where Resource_ID = 122'));
+
+  // Select null
+  var_dump(sybase_select_ex($db, 'select DC_Rights from #Resource where Resource_ID = 123'));
+
+  // Select empty
+  var_dump(sybase_select_ex($db, 'select DC_Rights from #Resource where Resource_ID = 124'));
+  
+  // Clean up and close connection
+  var_dump(sybase_query('drop table #Resource', $db));
+  sybase_close($db);
+?>
+--EXPECTF--
+bool(true)
+bool(true)
+bool(true)
+>>> Query: select DC_Rights from #Resource where Resource_ID = 122
+<<< Return: resource
+array(0) {
+}
+>>> Query: select DC_Rights from #Resource where Resource_ID = 123
+<<< Return: resource
+array(1) {
+  [0]=>
+  array(1) {
+    ["DC_Rights"]=>
+    NULL
+  }
+}
+>>> Query: select DC_Rights from #Resource where Resource_ID = 124
+<<< Return: resource
+array(1) {
+  [0]=>
+  array(1) {
+    ["DC_Rights"]=>
+    string(1) " "
+  }
+}
+bool(true)
diff --git a/ext/sybase_ct/tests/test_close.phpt b/ext/sybase_ct/tests/test_close.phpt
new file mode 100644 (file)
index 0000000..e2c3ebc
--- /dev/null
@@ -0,0 +1,25 @@
+--TEST--
+Sybase-CT close
+--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();
+  var_dump($db);
+  sybase_close($db);
+  var_dump($db);
+  var_dump(sybase_query('select getdate()', $db));
+?>
+--EXPECTF--
+resource(%d) of type (sybase-ct link)
+resource(%d) of type (Unknown)
+
+Warning: sybase_query(): %d is not a valid Sybase-Link resource in %s on line %d
+bool(false)
diff --git a/ext/sybase_ct/tests/test_close_default.phpt b/ext/sybase_ct/tests/test_close_default.phpt
new file mode 100644 (file)
index 0000000..a726a47
--- /dev/null
@@ -0,0 +1,21 @@
+--TEST--
+Sybase-CT close default connection
+--SKIPIF--
+<?php require('skipif.inc'); ?>
+--FILE--
+<?php
+/* This file is part of PHP test framework for ext/sybase_ct
+ *
+ * $Id$ 
+ */
+
+  require('test.inc');
+
+  sybase_connect_ex();
+  sybase_close();
+  var_dump(sybase_query('select getdate()'));
+?>
+--EXPECTF--
+
+Warning: sybase_query(): Sybase:  No connection in %s on line %d
+bool(false)
diff --git a/ext/sybase_ct/tests/test_close_notopen.phpt b/ext/sybase_ct/tests/test_close_notopen.phpt
new file mode 100644 (file)
index 0000000..13b4571
--- /dev/null
@@ -0,0 +1,18 @@
+--TEST--
+Sybase-CT close not open
+--SKIPIF--
+<?php require('skipif.inc'); ?>
+--FILE--
+<?php
+/* This file is part of PHP test framework for ext/sybase_ct
+ *
+ * $Id$ 
+ */
+
+  require('test.inc');
+
+  sybase_close();
+?>
+--EXPECTF--
+
+Warning: sybase_close(): Sybase:  No connection to close in %s on line %d
diff --git a/ext/sybase_ct/tests/test_connection_caching.phpt b/ext/sybase_ct/tests/test_connection_caching.phpt
new file mode 100644 (file)
index 0000000..d59aede
--- /dev/null
@@ -0,0 +1,26 @@
+--TEST--
+Sybase-CT connection caching
+--SKIPIF--
+<?php require('skipif.inc'); ?>
+--FILE--
+<?php
+/* This file is part of PHP test framework for ext/sybase_ct
+ *
+ * $Id$ 
+ */
+
+  require('test.inc');
+
+  $db1= sybase_connect_ex();
+  $db2= sybase_connect_ex();
+  $db3= sybase_connect_ex(NULL, NULL, $new= TRUE);
+  var_dump($db1, $db2, $db3, (string)$db1 == (string)$db2, (string)$db2 == (string)$db3);
+  sybase_close($db1);
+  
+?>
+--EXPECTF--
+resource(%d) of type (sybase-ct link)
+resource(%d) of type (sybase-ct link)
+resource(%d) of type (sybase-ct link)
+bool(true)
+bool(false)
diff --git a/ext/sybase_ct/tests/test_unbuffered_no_full_fetch.phpt b/ext/sybase_ct/tests/test_unbuffered_no_full_fetch.phpt
new file mode 100644 (file)
index 0000000..5faf8fe
--- /dev/null
@@ -0,0 +1,44 @@
+--TEST--
+Sybase-CT unbuffered query without full fetching
+--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();
+  var_dump($db);
+  
+  // Fetch #1
+  $q= sybase_unbuffered_query('select name from master..systypes', $db);
+  var_dump($q, key(sybase_fetch_assoc($q)));
+
+  // Fetch #2 - without having fetched all rows from previous query
+  $q= sybase_unbuffered_query('select name from master..systypes', $db);
+  var_dump($q, key(sybase_fetch_assoc($q)));
+
+  // Fetch #3 - free first, without having fetched all rows from previous query
+  sybase_free_result($q);
+  $q= sybase_unbuffered_query('select name from master..systypes', $db);
+  var_dump($q, key(sybase_fetch_assoc($q)));
+  
+  // Close - without having fetched all rows from previous query
+  sybase_close($db);
+  echo 'CLOSED';
+?>
+--EXPECTF--
+resource(%d) of type (sybase-ct link)
+resource(%d) of type (sybase-ct result)
+string(4) "name"
+
+Notice: sybase_unbuffered_query(): Sybase:  Called without first fetching all rows from a previous unbuffered query in %s on line %d
+resource(%d) of type (sybase-ct result)
+string(4) "name"
+resource(%d) of type (sybase-ct result)
+string(4) "name"
+CLOSED