]> granicus.if.org Git - php/commitdiff
add tests to HEAD
authorAntony Dovgal <tony2001@php.net>
Fri, 19 Dec 2003 17:03:12 +0000 (17:03 +0000)
committerAntony Dovgal <tony2001@php.net>
Fri, 19 Dec 2003 17:03:12 +0000 (17:03 +0000)
ext/oci8/tests/bug26133.phpt [new file with mode: 0644]
ext/oci8/tests/connect.inc [new file with mode: 0644]
ext/oci8/tests/create_table.inc [new file with mode: 0644]
ext/oci8/tests/drop_table.inc [new file with mode: 0644]
ext/oci8/tests/skipif.inc [new file with mode: 0644]

diff --git a/ext/oci8/tests/bug26133.phpt b/ext/oci8/tests/bug26133.phpt
new file mode 100644 (file)
index 0000000..d3f0ed9
--- /dev/null
@@ -0,0 +1,36 @@
+--TEST--
+Bug #26133 (ocifreedesc() segfault)
+--SKIPIF--
+<?php
+    require 'skipif.inc'; 
+?>
+--FILE--
+<?php
+    require 'connect.inc';
+    require 'create_table.inc';
+   
+    if ($connection) {
+        $ora_sql = "INSERT INTO 
+                               ".$schema."php_test_table (id, value) 
+                         VALUES ('1','1')
+                      RETURNING 
+                               ROWID 
+                           INTO :v_rowid ";
+                      
+        $statement = OCIParse($connection,$ora_sql);
+        $rowid = OCINewDescriptor($connection,OCI_D_ROWID);
+        OCIBindByName($statement,":v_rowid", $rowid,-1,OCI_B_ROWID);
+        if (OCIExecute($statement)) {
+            OCICommit($connection);
+        }
+        OCIFreeStatement($statement);
+        $rowid->free();
+    }
+
+    require 'drop_table.inc';
+    
+    echo "Done\n";
+?>
+--EXPECTF--
+Done
+
diff --git a/ext/oci8/tests/connect.inc b/ext/oci8/tests/connect.inc
new file mode 100644 (file)
index 0000000..a0013e2
--- /dev/null
@@ -0,0 +1,39 @@
+<?php
+
+/* 
+ * Please, change user, password and dbase to match your configuration.
+ * 
+ * */
+
+$user       = "user";
+$password   = "pass";
+$dbase      = "base";
+
+/* 
+ * You should have privileges to create tables in this schema 
+ * 
+ * */
+
+$schema     = "system"; 
+
+/*
+ * Remove the last line in skipif.inc to run tests
+ *
+ * */
+
+
+    if (!empty($dbase)) {
+        $connection = ocilogon($user,$password,$dbase);
+    }
+    else {
+        $connection = ocilogon($user,$password);
+    }
+
+    if (!empty($schema)) {
+        $schema = $schema.".";
+    }
+    else {
+        $schema = '';
+    }
+
+?>
diff --git a/ext/oci8/tests/create_table.inc b/ext/oci8/tests/create_table.inc
new file mode 100644 (file)
index 0000000..c423ce5
--- /dev/null
@@ -0,0 +1,12 @@
+<?php
+
+    if ($connection) {
+        $ora_sql = "CREATE TABLE 
+                                ".$schema."php_test_table (id NUMBER, value NUMBER) 
+                   ";
+                      
+        $statement = OCIParse($connection,$ora_sql);
+        OCIExecute($statement);
+    }
+
+?>
diff --git a/ext/oci8/tests/drop_table.inc b/ext/oci8/tests/drop_table.inc
new file mode 100644 (file)
index 0000000..4e558f5
--- /dev/null
@@ -0,0 +1,12 @@
+<?php
+
+    if ($connection) {
+        $ora_sql = "DROP TABLE
+                                ".$schema."php_test_table
+                   ";
+                      
+        $statement = OCIParse($connection,$ora_sql);
+        OCIExecute($statement);
+    }
+
+?>
diff --git a/ext/oci8/tests/skipif.inc b/ext/oci8/tests/skipif.inc
new file mode 100644 (file)
index 0000000..ed0992c
--- /dev/null
@@ -0,0 +1,10 @@
+<?php
+
+if (!extension_loaded('oci8')) die("skip oci8 extension is not available\n");
+
+/* 
+ * Remove or comment this line to run tests 
+ *
+ * */
+die("skip change default login/password\n");
+?>