From 6292c7519871d8cf8e44affbe89494a8c1c4c76f Mon Sep 17 00:00:00 2001 From: Antony Dovgal Date: Thu, 21 Dec 2006 19:22:49 +0000 Subject: [PATCH] improve tests, add new ones --- ext/oci8/tests/array_bind_014.phpt | 73 ++++ ext/oci8/tests/array_bind_int1.phpt | 2 +- ext/oci8/tests/error1.phpt | 2 +- ext/oci8/tests/fetch_all2.phpt | 432 ++++++++++++++++++++++++ ext/oci8/tests/lob_020.phpt | Bin 2046 -> 4591 bytes ext/oci8/tests/lob_027.phpt | 20 ++ ext/oci8/tests/lob_033.phpt | 38 +++ ext/oci8/tests/lob_034.phpt | 50 +++ ext/oci8/tests/lob_035.phpt | 135 ++++++++ ext/oci8/tests/privileged_connect1.phpt | 9 + 10 files changed, 759 insertions(+), 2 deletions(-) create mode 100644 ext/oci8/tests/array_bind_014.phpt create mode 100644 ext/oci8/tests/fetch_all2.phpt create mode 100644 ext/oci8/tests/lob_033.phpt create mode 100644 ext/oci8/tests/lob_034.phpt create mode 100644 ext/oci8/tests/lob_035.phpt diff --git a/ext/oci8/tests/array_bind_014.phpt b/ext/oci8/tests/array_bind_014.phpt new file mode 100644 index 0000000000..bd9fdf1335 --- /dev/null +++ b/ext/oci8/tests/array_bind_014.phpt @@ -0,0 +1,73 @@ +--TEST-- +oci_bind_array_by_name() and NUMBERs +--SKIPIF-- + +--FILE-- + +--EXPECTF-- +array(5) { + [0]=> + int(5) + [1]=> + int(4) + [2]=> + int(3) + [3]=> + int(2) + [4]=> + int(1) +} +Done diff --git a/ext/oci8/tests/array_bind_int1.phpt b/ext/oci8/tests/array_bind_int1.phpt index eb2072adcf..5e06de876b 100644 --- a/ext/oci8/tests/array_bind_int1.phpt +++ b/ext/oci8/tests/array_bind_int1.phpt @@ -50,7 +50,7 @@ $statement = oci_parse($c, "BEGIN ARRAYBINDPKG1.iobind(:c1); END;"); $array = Array(1,2,3,4,5); -oci_bind_array_by_name($statement, ":c1", $array, 10, 5, SQLT_NUM); +oci_bind_array_by_name($statement, ":c1", $array, 10, 5, SQLT_INT); oci_execute($statement); diff --git a/ext/oci8/tests/error1.phpt b/ext/oci8/tests/error1.phpt index 6cb16675fd..1048fc65d0 100644 --- a/ext/oci8/tests/error1.phpt +++ b/ext/oci8/tests/error1.phpt @@ -32,7 +32,7 @@ array(4) { ["code"]=> int(12154) ["message"]=> - unicode(45) "ORA-12154: TNS:could not resolve %s" + unicode(%d) "ORA-12154: TNS:could not resolve %s" ["offset"]=> int(0) ["sqltext"]=> diff --git a/ext/oci8/tests/fetch_all2.phpt b/ext/oci8/tests/fetch_all2.phpt new file mode 100644 index 0000000000..787abf8763 --- /dev/null +++ b/ext/oci8/tests/fetch_all2.phpt @@ -0,0 +1,432 @@ +--TEST-- +oci_fetch_all() - 2 +--SKIPIF-- + +--FILE-- + +--EXPECT-- +int(3) +array(5) { + ["ID"]=> + array(3) { + [0]=> + string(1) "1" + [1]=> + string(1) "1" + [2]=> + string(1) "1" + } + ["VALUE"]=> + array(3) { + [0]=> + string(1) "1" + [1]=> + string(1) "1" + [2]=> + string(1) "1" + } + ["BLOB"]=> + array(3) { + [0]=> + NULL + [1]=> + NULL + [2]=> + NULL + } + ["CLOB"]=> + array(3) { + [0]=> + NULL + [1]=> + NULL + [2]=> + NULL + } + ["STRING"]=> + array(3) { + [0]=> + NULL + [1]=> + NULL + [2]=> + NULL + } +} +int(3) +array(3) { + [0]=> + array(5) { + ["ID"]=> + string(1) "1" + ["VALUE"]=> + string(1) "1" + ["BLOB"]=> + NULL + ["CLOB"]=> + NULL + ["STRING"]=> + NULL + } + [1]=> + array(5) { + ["ID"]=> + string(1) "1" + ["VALUE"]=> + string(1) "1" + ["BLOB"]=> + NULL + ["CLOB"]=> + NULL + ["STRING"]=> + NULL + } + [2]=> + array(5) { + ["ID"]=> + string(1) "1" + ["VALUE"]=> + string(1) "1" + ["BLOB"]=> + NULL + ["CLOB"]=> + NULL + ["STRING"]=> + NULL + } +} +int(0) +array(0) { +} +int(2) +array(2) { + [0]=> + array(5) { + [0]=> + string(1) "1" + [1]=> + string(1) "1" + [2]=> + NULL + [3]=> + NULL + [4]=> + NULL + } + [1]=> + array(5) { + [0]=> + string(1) "1" + [1]=> + string(1) "1" + [2]=> + NULL + [3]=> + NULL + [4]=> + NULL + } +} +int(2) +array(5) { + [0]=> + array(2) { + [0]=> + string(1) "1" + [1]=> + string(1) "1" + } + [1]=> + array(2) { + [0]=> + string(1) "1" + [1]=> + string(1) "1" + } + [2]=> + array(2) { + [0]=> + NULL + [1]=> + NULL + } + [3]=> + array(2) { + [0]=> + NULL + [1]=> + NULL + } + [4]=> + array(2) { + [0]=> + NULL + [1]=> + NULL + } +} +int(1) +array(5) { + [0]=> + array(1) { + [0]=> + string(1) "1" + } + [1]=> + array(1) { + [0]=> + string(1) "1" + } + [2]=> + array(1) { + [0]=> + NULL + } + [3]=> + array(1) { + [0]=> + NULL + } + [4]=> + array(1) { + [0]=> + NULL + } +} +Done +--UEXPECT-- +int(3) +array(5) { + [u"ID"]=> + array(3) { + [0]=> + unicode(1) "1" + [1]=> + unicode(1) "1" + [2]=> + unicode(1) "1" + } + [u"VALUE"]=> + array(3) { + [0]=> + unicode(1) "1" + [1]=> + unicode(1) "1" + [2]=> + unicode(1) "1" + } + [u"BLOB"]=> + array(3) { + [0]=> + NULL + [1]=> + NULL + [2]=> + NULL + } + [u"CLOB"]=> + array(3) { + [0]=> + NULL + [1]=> + NULL + [2]=> + NULL + } + [u"STRING"]=> + array(3) { + [0]=> + NULL + [1]=> + NULL + [2]=> + NULL + } +} +int(3) +array(3) { + [0]=> + array(5) { + [u"ID"]=> + unicode(1) "1" + [u"VALUE"]=> + unicode(1) "1" + [u"BLOB"]=> + NULL + [u"CLOB"]=> + NULL + [u"STRING"]=> + NULL + } + [1]=> + array(5) { + [u"ID"]=> + unicode(1) "1" + [u"VALUE"]=> + unicode(1) "1" + [u"BLOB"]=> + NULL + [u"CLOB"]=> + NULL + [u"STRING"]=> + NULL + } + [2]=> + array(5) { + [u"ID"]=> + unicode(1) "1" + [u"VALUE"]=> + unicode(1) "1" + [u"BLOB"]=> + NULL + [u"CLOB"]=> + NULL + [u"STRING"]=> + NULL + } +} +int(0) +array(0) { +} +int(2) +array(2) { + [0]=> + array(5) { + [0]=> + unicode(1) "1" + [1]=> + unicode(1) "1" + [2]=> + NULL + [3]=> + NULL + [4]=> + NULL + } + [1]=> + array(5) { + [0]=> + unicode(1) "1" + [1]=> + unicode(1) "1" + [2]=> + NULL + [3]=> + NULL + [4]=> + NULL + } +} +int(2) +array(5) { + [0]=> + array(2) { + [0]=> + unicode(1) "1" + [1]=> + unicode(1) "1" + } + [1]=> + array(2) { + [0]=> + unicode(1) "1" + [1]=> + unicode(1) "1" + } + [2]=> + array(2) { + [0]=> + NULL + [1]=> + NULL + } + [3]=> + array(2) { + [0]=> + NULL + [1]=> + NULL + } + [4]=> + array(2) { + [0]=> + NULL + [1]=> + NULL + } +} +int(1) +array(5) { + [0]=> + array(1) { + [0]=> + unicode(1) "1" + } + [1]=> + array(1) { + [0]=> + unicode(1) "1" + } + [2]=> + array(1) { + [0]=> + NULL + } + [3]=> + array(1) { + [0]=> + NULL + } + [4]=> + array(1) { + [0]=> + NULL + } +} +Done diff --git a/ext/oci8/tests/lob_020.phpt b/ext/oci8/tests/lob_020.phpt index c590f2ee6994496652e22fdc5cf9baacede28d04..ed36dfa793ce5538fa69c2968d1788872c786773 100644 GIT binary patch literal 4591 zcmeHJYmXW?6z$i}uehDE+8K!g23-xBVWkL3^3po{z=!6t& z!u&FP_rl60=IJ`8vml}>lq}Xl8pGC2J-7|9-e_q&^cjzW{yd4_S^Ll13tT%7iNm~C zO7^}9OtUOD(@!*K~tqcY03Do0JG5?2sX`JOu=+5P6E?;sKZR~h{`LtbTK>INM1Egxy_D zk3p%JFBi>nl8aDGCQKvKlqMZxJ1%>w<2U@9E+o0FwOhZ!p$@9G+R(eZz3%$RDW`S| z1v$0yi!i1H>n!FEXHSaR!qtH4a1;B(dug`X%D)em$n7kreT^I?`|?z`hln{>hDyB--r%afdB!WLbiD>1(jU(va7r$GMqPSmui4q}FRM5usS;BeQs*pkK@338V+sxi{R-B$uJvFs zuAP@J-Q*u@Z>2q3UN|nM-i}~rqCXlR;345}^lHKUNwFTRRInTj5XH@2e!fUPQR&t* zMVvy>%Nj>?&$g`JiR37M6{8cTRF%r&P~uGc+AEh|zb;k)1BS5(2}-_#kZ>+gOk=`9 zOTrZiHQwf^x*X0F2o7V$DV#-CUx=|YAY(<{<4A)6HZM%3$hA*lnB2w^^av4z1ia$O z7_@-m*F!WYAL6^@DIr=<9RpUs9ER+k^8Fk&dyU3M z{= 0; $i--) { oci_commit($c); } +$select_sql = "SELECT blob FROM ".$schema.$table_name." FOR UPDATE"; +$s = oci_parse($c, $select_sql); +oci_execute($s, OCI_DEFAULT); + +$row = oci_fetch_array($s); +var_dump($row['BLOB']->load()); +var_dump($row['BLOB']->truncate(-1)); +var_dump($row['BLOB']->truncate(0)); + +oci_commit($c); require dirname(__FILE__).'/drop_table.inc'; @@ -85,6 +95,11 @@ string(0) "" Warning: OCI-Lob::truncate(): Length must be greater than or equal to zero in %s on line %d bool(false) +string(0) "" + +Warning: OCI-Lob::truncate(): Length must be greater than or equal to zero in %s on line %d +bool(false) +bool(true) Done --UEXPECTF-- object(OCI-Lob)#%d (1) { @@ -118,4 +133,9 @@ string(0) "" Warning: OCI-Lob::truncate(): Length must be greater than or equal to zero in %s on line %d bool(false) +string(0) "" + +Warning: OCI-Lob::truncate(): Length must be greater than or equal to zero in %s on line %d +bool(false) +bool(true) Done diff --git a/ext/oci8/tests/lob_033.phpt b/ext/oci8/tests/lob_033.phpt new file mode 100644 index 0000000000..5647cd9a41 --- /dev/null +++ b/ext/oci8/tests/lob_033.phpt @@ -0,0 +1,38 @@ +--TEST-- +various oci_lob_write() error messages +--SKIPIF-- + +--FILE-- +save(""); + +oci_bind_by_name($statement,":v_blob", $blob,-1,OCI_B_BLOB); +oci_execute($statement, OCI_DEFAULT); + +var_dump($blob->save("")); +var_dump($blob->save("data", 100)); + +require dirname(__FILE__).'/drop_table.inc'; + +echo "Done\n"; + +?> +--EXPECTF-- +Warning: OCI-Lob::save(): OCI_INVALID_HANDLE in %s on line %d +bool(true) +bool(true) +Done diff --git a/ext/oci8/tests/lob_034.phpt b/ext/oci8/tests/lob_034.phpt new file mode 100644 index 0000000000..6bf4058e74 --- /dev/null +++ b/ext/oci8/tests/lob_034.phpt @@ -0,0 +1,50 @@ +--TEST-- +lob buffering - 2 +--SKIPIF-- + +--FILE-- +getBuffering()); +var_dump($blob->setBuffering(false)); +var_dump($blob->setBuffering(false)); +var_dump($blob->setBuffering(true)); +var_dump($blob->setBuffering(true)); +var_dump($blob->flush()); +var_dump($blob->flush(0)); +var_dump($blob->flush(-1)); + +oci_commit($c); + +require dirname(__FILE__).'/drop_table.inc'; + +echo "Done\n"; + +?> +--EXPECTF-- +bool(false) +bool(true) +bool(true) +bool(true) +bool(true) +bool(true) +bool(true) + +Warning: OCI-Lob::flush(): Invalid flag value: -1 in %s on line %d +bool(false) +Done diff --git a/ext/oci8/tests/lob_035.phpt b/ext/oci8/tests/lob_035.phpt new file mode 100644 index 0000000000..2d1bfcfce9 --- /dev/null +++ b/ext/oci8/tests/lob_035.phpt @@ -0,0 +1,135 @@ +--TEST-- +oci_lob_copy() - 2 +--SKIPIF-- + +--FILE-- +write("some string here. string, I said")); +oci_commit($c); + +$ora_sql = "INSERT INTO + ".$schema.$table_name." (id, blob) + VALUES (2, empty_blob()) + RETURNING + blob + INTO :v_blob "; + +$statement = oci_parse($c,$ora_sql); +$blob = oci_new_descriptor($c,OCI_D_LOB); +oci_bind_by_name($statement,":v_blob", $blob,-1,OCI_B_BLOB); +oci_execute($statement, OCI_DEFAULT); + +oci_commit($c); + +$select_sql = "SELECT blob FROM ".$schema.$table_name." WHERE id = 1"; +$s = oci_parse($c, $select_sql); +oci_execute($s); + +$row1 = oci_fetch_array($s); + +$select_sql = "SELECT blob FROM ".$schema.$table_name." WHERE id = 2 FOR UPDATE"; +$s = oci_parse($c, $select_sql); +oci_execute($s, OCI_DEFAULT); + +$row2 = oci_fetch_array($s); + +$dummy = oci_new_descriptor($c, OCI_D_LOB); + +var_dump(oci_lob_copy($dummy, $row1[0])); +var_dump(oci_lob_copy($row2[0], $dummy)); + +var_dump(oci_lob_copy($row2[0], $row1[0], 0)); +var_dump(oci_lob_copy($row2[0], $row1[0], -1)); +var_dump(oci_lob_copy($row2[0], $row1[0], 100000)); + +var_dump(oci_lob_size()); +var_dump(oci_lob_size($row2[0])); +unset($dummy->descriptor); +var_dump(oci_lob_size($dummy)); + +oci_rollback($c); +oci_rollback($c); +oci_commit($c); +oci_commit($c); + +$select_sql = "SELECT blob FROM ".$schema.$table_name." WHERE id = 2 FOR UPDATE"; +$s = oci_parse($c, $select_sql); +oci_execute($s, OCI_DEFAULT); + +var_dump($row2 = oci_fetch_array($s, OCI_RETURN_LOBS)); + +require dirname(__FILE__).'/drop_table.inc'; + +echo "Done\n"; + +?> +--EXPECTF-- +int(32) + +Warning: oci_lob_copy(): OCI_INVALID_HANDLE in %s on line %d +bool(false) + +Warning: oci_lob_copy(): OCI_INVALID_HANDLE in %s on line %d +bool(false) +bool(false) + +Warning: oci_lob_copy(): Length parameter must be greater than 0 in %s on line %d +bool(false) +bool(true) + +Warning: oci_lob_size() expects exactly 1 parameter, 0 given in %s on line %d +NULL +int(0) + +Warning: oci_lob_size(): Unable to find descriptor property in %s on line %d +bool(false) +array(2) { + [0]=> + string(0) "" + ["BLOB"]=> + string(0) "" +} +Done +--UEXPECTF-- +int(64) + +Warning: oci_lob_copy(): OCI_INVALID_HANDLE in %s on line %d +bool(false) + +Warning: oci_lob_copy(): OCI_INVALID_HANDLE in %s on line %d +bool(false) +bool(false) + +Warning: oci_lob_copy(): Length parameter must be greater than 0 in %s on line %d +bool(false) +bool(true) + +Warning: oci_lob_size() expects exactly 1 parameter, 0 given in %s on line %d +NULL +int(0) + +Warning: oci_lob_size(): Unable to find descriptor property in %s on line %d +bool(false) +array(2) { + [0]=> + string(0) "" + [u"BLOB"]=> + string(0) "" +} +Done diff --git a/ext/oci8/tests/privileged_connect1.phpt b/ext/oci8/tests/privileged_connect1.phpt index 44bb2f60a8..c6c7267809 100644 --- a/ext/oci8/tests/privileged_connect1.phpt +++ b/ext/oci8/tests/privileged_connect1.phpt @@ -25,3 +25,12 @@ Warning: oci_connect(): Invalid session mode specified (-1) in %s on line %d Warning: oci_connect() expects parameter 5 to be long, string given in %s on line %d Done +--UEXPECTF-- +Warning: oci_connect(): ORA-01017: invalid username/password; logon denied in %s on line %d + +Warning: oci_connect(): ORA-01017: invalid username/password; logon denied in %s on line %d + +Warning: oci_connect(): Invalid session mode specified (-1) in %s on line %d + +Warning: oci_connect() expects parameter 5 to be long, Unicode string given in %s on line %d +Done -- 2.50.1