mboeren         Wed Oct 23 06:45:30 2002 EDT

  Modified files:              
    /php4/ext/dbx/tests 004.phpt 005.phpt 006.phpt 007.phpt 008.phpt 
                        dbx_test.p 
  Log:
  Updated tests for Oracle (oci8) support (Mc)
  
  
Index: php4/ext/dbx/tests/004.phpt
diff -u php4/ext/dbx/tests/004.phpt:1.2 php4/ext/dbx/tests/004.phpt:1.3
--- php4/ext/dbx/tests/004.phpt:1.2     Mon Oct  7 05:27:02 2002
+++ php4/ext/dbx/tests/004.phpt Wed Oct 23 06:45:29 2002
@@ -14,11 +14,16 @@
 <?php 
 include_once("dbx_test.p");
 $dlo = dbx_connect($module, $host, $database, $username, $password);
-if ($dlo!=0) {
-       if (dbx_close($dlo)) {
-        print('close works ok'."\n");
+if ($module===DBX_OCI8) { // close for oci8 always return NULL since it doesn't do 
+anything
+    print('close works ok'."\n");
+    }
+else {
+    if ($dlo!=0) {
+        if (dbx_close($dlo)) {
+            print('close works ok'."\n");
+            }
         }
-       }
+    }
 if (!@dbx_close($dlo)) {
     print('close failure works ok'."\n");
     }
Index: php4/ext/dbx/tests/005.phpt
diff -u php4/ext/dbx/tests/005.phpt:1.4 php4/ext/dbx/tests/005.phpt:1.5
--- php4/ext/dbx/tests/005.phpt:1.4     Mon Oct  7 05:27:02 2002
+++ php4/ext/dbx/tests/005.phpt Wed Oct 23 06:45:29 2002
@@ -30,9 +30,9 @@
     // select query
     if ($dro=dbx_query($dlo, $sql_statement)) {
         for ($i=0; $i<$dro->rows; ++$i) {
-            
print($dro->data[$i]['id'].".".$dro->data[$i]['description'].".".$dro->data[$i]['field1'].".".strlen($dro->data[$i]['field2'])."\n");
+            
+print($dro->data[$i][$fieldname_case_function('id')].".".$dro->data[$i][$fieldname_case_function('description')].".".$dro->data[$i][$fieldname_case_function('field1')].".".strlen($dro->data[$i][$fieldname_case_function('field2')])."\n");
             }
-        $dro->data[0]['id']='changed_value';
+        $dro->data[0][$fieldname_case_function('id')]='changed_value';
         print($dro->data[0][0]."\n");
         }
     // insert query
@@ -40,7 +40,7 @@
         print('insert-query: dbx_query works ok'."\n");
         if ($dro=dbx_query($dlo, $sql_select_statement)) {
             for ($i=0; $i<$dro->rows; ++$i) {
-                
print($dro->data[$i]['id'].".".$dro->data[$i]['description'].".".strlen($dro->data[$i]['field2'])."\n");
+                
+print($dro->data[$i][$fieldname_case_function('id')].".".$dro->data[$i][$fieldname_case_function('description')].".".strlen($dro->data[$i][$fieldname_case_function('field2')])."\n");
                 }
             }
         }
@@ -49,7 +49,7 @@
         print('update-query: dbx_query works ok'."\n");
         if ($dro=dbx_query($dlo, $sql_select_statement)) {
             for ($i=0; $i<$dro->rows; ++$i) {
-                
print($dro->data[$i]['id'].".".$dro->data[$i]['description'].".".strlen($dro->data[$i]['field2'])."\n");
+                
+print($dro->data[$i][$fieldname_case_function('id')].".".$dro->data[$i][$fieldname_case_function('description')].".".strlen($dro->data[$i][$fieldname_case_function('field2')])."\n");
                 }
             }
         }
@@ -58,7 +58,7 @@
         print('delete-query: dbx_query works ok'."\n");
         if ($dro=dbx_query($dlo, $sql_select_statement)) {
             for ($i=0; $i<$dro->rows; ++$i) {
-                
print($dro->data[$i]['id'].".".$dro->data[$i]['description'].".".strlen($dro->data[$i]['field2'])."\n");
+                
+print($dro->data[$i][$fieldname_case_function('id')].".".$dro->data[$i][$fieldname_case_function('description')].".".strlen($dro->data[$i][$fieldname_case_function('field2')])."\n");
                 }
             }
         }
Index: php4/ext/dbx/tests/006.phpt
diff -u php4/ext/dbx/tests/006.phpt:1.4 php4/ext/dbx/tests/006.phpt:1.5
--- php4/ext/dbx/tests/006.phpt:1.4     Mon Oct  7 05:27:02 2002
+++ php4/ext/dbx/tests/006.phpt Wed Oct 23 06:45:29 2002
@@ -13,8 +13,9 @@
 --FILE--
 <?php 
 include_once("dbx_test.p");
-if ($module==DBX_ODBC) {
+if ($module==DBX_ODBC || $module==DBX_OCI8) {
     // ODBC module doesn't have an error-message-function (yet?)
+    // OCI8 module needs the query-handle instead of the db-handle (now what?)
     print('query generated an error: dbx_error works ok'."\n");
     print('query is valid: dbx_error works ok'."\n");
     print('wrong dbx_link_object: dbx_error failure works ok'."\n");
Index: php4/ext/dbx/tests/007.phpt
diff -u php4/ext/dbx/tests/007.phpt:1.2 php4/ext/dbx/tests/007.phpt:1.3
--- php4/ext/dbx/tests/007.phpt:1.2     Mon Oct  7 05:27:02 2002
+++ php4/ext/dbx/tests/007.phpt Wed Oct 23 06:45:29 2002
@@ -22,8 +22,9 @@
     return "blabla";
     }
 function cmp($a, $b) {
-    $rv = dbx_compare($a, $b, "description");
-    if (!$rv) $rv = dbx_compare($a, $b, "id");
+    $fieldname_case_function = $GLOBALS['fieldname_case_function'];
+    $rv = dbx_compare($a, $b, $fieldname_case_function("description"));
+    if (!$rv) $rv = dbx_compare($a, $b, $fieldname_case_function("id"));
     return $rv;
     }
 if (!$dlo) {
@@ -35,11 +36,11 @@
         print('this won\'t work'."\n");
         }
     for ($i=0; $i<$dro->rows; ++$i) {
-        print($dro->data[$i]['id'].".".$dro->data[$i]['description']."\n");
+        
+print($dro->data[$i][$fieldname_case_function('id')].".".$dro->data[$i][$fieldname_case_function('description')]."\n");
         }
     if (dbx_sort($dro, $compare_function)) {
         for ($i=0; $i<$dro->rows; ++$i) {
-            print($dro->data[$i]['id'].".".$dro->data[$i]['description']."\n");
+            
+print($dro->data[$i][$fieldname_case_function('id')].".".$dro->data[$i][$fieldname_case_function('description')]."\n");
             }
         }
     if (!@dbx_sort(0, $compare_function)) {
Index: php4/ext/dbx/tests/008.phpt
diff -u php4/ext/dbx/tests/008.phpt:1.2 php4/ext/dbx/tests/008.phpt:1.3
--- php4/ext/dbx/tests/008.phpt:1.2     Mon Oct  7 05:27:02 2002
+++ php4/ext/dbx/tests/008.phpt Wed Oct 23 06:45:29 2002
@@ -22,33 +22,39 @@
 $compare_function_6 = "cmp_description_number_id";
 $dlo = dbx_connect($module, $host, $database, $username, $password);
 function cmp_description_id($a, $b) {
-    $rv = dbx_compare($a, $b, "description");
-    if (!$rv) $rv = dbx_compare($a, $b, "id");
+    $fieldname_case_function = $GLOBALS['fieldname_case_function'];
+    $rv = dbx_compare($a, $b, $fieldname_case_function("description"));
+    if (!$rv) $rv = dbx_compare($a, $b, $fieldname_case_function("id"));
     return $rv;
     }
 function cmp_description_desc_id($a, $b) {
-    $rv = dbx_compare($a, $b, "description", DBX_CMP_DESC);
-    if (!$rv) $rv = dbx_compare($a, $b, "id");
+    $fieldname_case_function = $GLOBALS['fieldname_case_function'];
+    $rv = dbx_compare($a, $b, $fieldname_case_function("description"), DBX_CMP_DESC);
+    if (!$rv) $rv = dbx_compare($a, $b, $fieldname_case_function("id"));
     return $rv;
     }
 function cmp_description_id_desc($a, $b) {
-    $rv = dbx_compare($a, $b, "description");
-    if (!$rv) $rv = dbx_compare($a, $b, "id", DBX_CMP_DESC);
+    $fieldname_case_function = $GLOBALS['fieldname_case_function'];
+    $rv = dbx_compare($a, $b, $fieldname_case_function("description"));
+    if (!$rv) $rv = dbx_compare($a, $b, $fieldname_case_function("id"), DBX_CMP_DESC);
     return $rv;
     }
 function cmp_description_desc_id_desc($a, $b) {
-    $rv = dbx_compare($a, $b, "description", DBX_CMP_DESC);
-    if (!$rv) $rv = dbx_compare($a, $b, "id", DBX_CMP_DESC);
+    $fieldname_case_function = $GLOBALS['fieldname_case_function'];
+    $rv = dbx_compare($a, $b, $fieldname_case_function("description"), DBX_CMP_DESC);
+    if (!$rv) $rv = dbx_compare($a, $b, $fieldname_case_function("id"), DBX_CMP_DESC);
     return $rv;
     }
 function cmp_description_txt_id($a, $b) {
-    $rv = dbx_compare($a, $b, "description", DBX_CMP_TEXT);
-    if (!$rv) $rv = dbx_compare($a, $b, "id");
+    $fieldname_case_function = $GLOBALS['fieldname_case_function'];
+    $rv = dbx_compare($a, $b, $fieldname_case_function("description"), DBX_CMP_TEXT);
+    if (!$rv) $rv = dbx_compare($a, $b, $fieldname_case_function("id"));
     return $rv;
     }
 function cmp_description_number_id($a, $b) {
-    $rv = dbx_compare($a, $b, "description", DBX_CMP_NUMBER);
-    if (!$rv) $rv = dbx_compare($a, $b, "id");
+    $fieldname_case_function = $GLOBALS['fieldname_case_function'];
+    $rv = dbx_compare($a, $b, $fieldname_case_function("description"), 
+DBX_CMP_NUMBER);
+    if (!$rv) $rv = dbx_compare($a, $b, $fieldname_case_function("id"));
     return $rv;
     }
 if (!$dlo) {
@@ -60,42 +66,42 @@
         print('this won\'t work'."\n");
         }
     for ($i=0; $i<$dro->rows; ++$i) {
-        print($dro->data[$i]['id'].".".$dro->data[$i]['description']."\n");
+        
+print($dro->data[$i][$fieldname_case_function('id')].".".$dro->data[$i][$fieldname_case_function('description')]."\n");
         }
     if (dbx_sort($dro, $compare_function_1)) {
         for ($i=0; $i<$dro->rows; ++$i) {
-            print($dro->data[$i]['id'].".".$dro->data[$i]['description']."\n");
+            
+print($dro->data[$i][$fieldname_case_function('id')].".".$dro->data[$i][$fieldname_case_function('description')]."\n");
             }
         }
     if (dbx_sort($dro, $compare_function_2)) {
         for ($i=0; $i<$dro->rows; ++$i) {
-            print($dro->data[$i]['id'].".".$dro->data[$i]['description']."\n");
+            
+print($dro->data[$i][$fieldname_case_function('id')].".".$dro->data[$i][$fieldname_case_function('description')]."\n");
             }
         }
     if (dbx_sort($dro, $compare_function_3)) {
         for ($i=0; $i<$dro->rows; ++$i) {
-            print($dro->data[$i]['id'].".".$dro->data[$i]['description']."\n");
+            
+print($dro->data[$i][$fieldname_case_function('id')].".".$dro->data[$i][$fieldname_case_function('description')]."\n");
             }
         }
     if (dbx_sort($dro, $compare_function_4)) {
         for ($i=0; $i<$dro->rows; ++$i) {
-            print($dro->data[$i]['id'].".".$dro->data[$i]['description']."\n");
+            
+print($dro->data[$i][$fieldname_case_function('id')].".".$dro->data[$i][$fieldname_case_function('description')]."\n");
             }
         }
     if (dbx_sort($dro, $compare_function_5)) {
         for ($i=0; $i<$dro->rows; ++$i) {
-            print($dro->data[$i]['id'].".".$dro->data[$i]['description']."\n");
+            
+print($dro->data[$i][$fieldname_case_function('id')].".".$dro->data[$i][$fieldname_case_function('description')]."\n");
             }
         }
     if (dbx_sort($dro, $compare_function_6)) {
         for ($i=0; $i<$dro->rows; ++$i) {
-            print($dro->data[$i]['id'].".".$dro->data[$i]['description']."\n");
+            
+print($dro->data[$i][$fieldname_case_function('id')].".".$dro->data[$i][$fieldname_case_function('description')]."\n");
             }
         }
-    if (!@dbx_compare($a, $b, "fieldname")) {
+    if (!@dbx_compare($a, $b, $fieldname_case_function("fieldname"))) {
         print('wrong parameters: dbx_compare failure works ok'."\n");
         }
-    if (!@dbx_compare($a, $b, "fieldname", DBX_CMP_NATIVE, "12many")) {
+    if (!@dbx_compare($a, $b, $fieldname_case_function("fieldname"), DBX_CMP_NATIVE, 
+"12many")) {
         print('too many parameters: dbx_compare failure works ok'."\n");
         }
     if (!@dbx_compare($a, $b)) {
Index: php4/ext/dbx/tests/dbx_test.p
diff -u php4/ext/dbx/tests/dbx_test.p:1.7 php4/ext/dbx/tests/dbx_test.p:1.8
--- php4/ext/dbx/tests/dbx_test.p:1.7   Mon Oct  7 05:27:02 2002
+++ php4/ext/dbx/tests/dbx_test.p       Wed Oct 23 06:45:29 2002
@@ -1,6 +1,8 @@
 <?php
 // set the $connection to match your test-database setup
 // (possibly change the rest of the settings too)
+// $fieldname_case_function was introduced for oci8, as oracle returns
+//    the fieldnames in uppercase
 // e.g. $connection = DBX_MYSQL;
 $connection = NULL;
 switch ($connection) {
@@ -11,6 +13,7 @@
         $username="dbx_testuser";
         $password="dbx_testpassword";
         $module_name="mysql";
+        $fieldname_case_function="dbx_unchangedcase";
         break;
     case DBX_MSSQL:
         $module=DBX_MSSQL;
@@ -19,6 +22,7 @@
         $username="";
         $password="";
         $module_name="mssql";
+        $fieldname_case_function="dbx_unchangedcase";
         break;
     case DBX_ODBC:
         $module=DBX_ODBC;
@@ -27,6 +31,7 @@
         $username="dbx_testuser";
         $password="dbx_testpassword";
         $module_name="odbc";
+        $fieldname_case_function="dbx_unchangedcase";
         break;
     case DBX_PGSQL:
         $module=DBX_PGSQL;
@@ -35,6 +40,7 @@
         $username="dbx_testuser";
         $password="dbx_testpassword";
         $module_name="pgsql";
+        $fieldname_case_function="dbx_unchangedcase";
         break;
     case DBX_FBSQL:
         $module=DBX_FBSQL;
@@ -43,6 +49,7 @@
         $username="dbx_testuser";
         $password="dbx_testpassword";
         $module_name="fbsql";
+        $fieldname_case_function="dbx_unchangedcase";
         break;
     case DBX_OCI8:
         $module=DBX_OCI8;
@@ -51,6 +58,7 @@
         $username="dbx_testuser";
         $password="dbx_testpassword";
         $module_name="oci8";
+        $fieldname_case_function="dbx_uppercase";
         break;
     case DBX_SYBASECT:
         $module=DBX_SYBASECT;
@@ -59,7 +67,15 @@
         $username="dbx_testuser";
         $password="dbx_testpassword";
         $module_name="sybase_ct";
+        $fieldname_case_function="dbx_unchangedcase";
         break;
+    }
+
+function dbx_uppercase($sz) {
+    return strtoupper($sz);
+    }
+function dbx_unchangedcase($sz) {
+    return $sz;
     }
 
 ?>

-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to