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