Annotation of embedaddon/php/ext/sqlite/tests/sqlite_023.phpt, revision 1.1.1.1

1.1       misho       1: --TEST--
                      2: sqlite: sqlite_[has_]prev
                      3: --INI--
                      4: sqlite.assoc_case=0
                      5: --SKIPIF--
                      6: <?php # vim:ft=php
                      7: if (!extension_loaded("sqlite")) print "skip"; ?>
                      8: --FILE--
                      9: <?php
                     10: include "blankdb.inc";
                     11: 
                     12: $data = array(
                     13:               "one",
                     14:               "two",
                     15:               "three"
                     16:               );
                     17: 
                     18: sqlite_query("CREATE TABLE strings(a)", $db);
                     19: 
                     20: foreach ($data as $str) {
                     21:   sqlite_query("INSERT INTO strings VALUES('$str')", $db);
                     22: }
                     23: 
                     24: $r = sqlite_query("SELECT a FROM strings", $db, SQLITE_NUM);
                     25: 
                     26: echo "====TRAVERSE====\n";
                     27: for(sqlite_rewind($r); sqlite_valid($r); sqlite_next($r)) {
                     28:   var_dump(sqlite_current($r));
                     29: 
                     30: }
                     31: echo "====REVERSE====\n";
                     32: do {
                     33:   sqlite_prev($r);
                     34:   var_dump(sqlite_current($r));
                     35: } while(sqlite_has_prev($r));
                     36: 
                     37: echo "====UNBUFFERED====\n";
                     38: 
                     39: $r = sqlite_unbuffered_query("SELECT a FROM strings", $db, SQLITE_NUM);
                     40: 
                     41: echo "====TRAVERSE====\n";
                     42: for(sqlite_rewind($r); sqlite_valid($r); sqlite_next($r)) {
                     43:   var_dump(sqlite_current($r));
                     44: 
                     45: }
                     46: echo "====REVERSE====\n";
                     47: do {
                     48:   sqlite_prev($r);
                     49:   var_dump(sqlite_current($r));
                     50: } while(sqlite_has_prev($r));
                     51: 
                     52: sqlite_close($db);
                     53: 
                     54: echo "====DONE!====\n";
                     55: ?>
                     56: --EXPECTF--
                     57: ====TRAVERSE====
                     58: array(1) {
                     59:   [0]=>
                     60:   string(3) "one"
                     61: }
                     62: array(1) {
                     63:   [0]=>
                     64:   string(3) "two"
                     65: }
                     66: array(1) {
                     67:   [0]=>
                     68:   string(5) "three"
                     69: }
                     70: ====REVERSE====
                     71: array(1) {
                     72:   [0]=>
                     73:   string(5) "three"
                     74: }
                     75: array(1) {
                     76:   [0]=>
                     77:   string(3) "two"
                     78: }
                     79: array(1) {
                     80:   [0]=>
                     81:   string(3) "one"
                     82: }
                     83: ====UNBUFFERED====
                     84: ====TRAVERSE====
                     85: 
                     86: Warning: sqlite_rewind(): Cannot rewind an unbuffered result set in %ssqlite_023.php on line %d
                     87: array(1) {
                     88:   [0]=>
                     89:   string(3) "one"
                     90: }
                     91: array(1) {
                     92:   [0]=>
                     93:   string(3) "two"
                     94: }
                     95: array(1) {
                     96:   [0]=>
                     97:   string(5) "three"
                     98: }
                     99: ====REVERSE====
                    100: 
                    101: Warning: sqlite_prev(): you cannot use sqlite_prev on unbuffered querys in %ssqlite_023.php on line %d
                    102: bool(false)
                    103: 
                    104: Warning: sqlite_has_prev(): you cannot use sqlite_has_prev on unbuffered querys in %ssqlite_023.php on line %d
                    105: ====DONE!====

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>