Annotation of embedaddon/php/ext/spl/tests/dllist_001.phpt, revision 1.1.1.1

1.1       misho       1: --TEST--
                      2: SPL: DoublyLinkedList: std operations
                      3: --INI--
                      4: allow_call_time_pass_reference=1
                      5: --FILE--
                      6: <?php
                      7: $dll = new SplDoublyLinkedList();
                      8: // errors
                      9: try {
                     10:     $dll->pop();
                     11: } catch (RuntimeException $e) {
                     12:     echo "Exception: ".$e->getMessage()."\n";
                     13: }
                     14: try {
                     15:     $dll->shift();
                     16: } catch (RuntimeException $e) {
                     17:     echo "Exception: ".$e->getMessage()."\n";
                     18: }
                     19: 
                     20: // data consistency
                     21: $a = 2;
                     22: $dll->push($a);
                     23: $a = 3;
                     24: $dll->push(&$a);
                     25: $a = 4;
                     26: echo $dll->pop()."\n";
                     27: echo $dll->pop()."\n";
                     28: 
                     29: $a = 2;
                     30: $dll->unshift($a);
                     31: $a = 3;
                     32: $dll->unshift(&$a);
                     33: $a = 4;
                     34: echo $dll->shift()."\n";
                     35: echo $dll->shift()."\n";
                     36: 
                     37: // peakable
                     38: $dll->push(1);
                     39: $dll->push(2);
                     40: echo $dll->top()."\n";
                     41: echo $dll->bottom()."\n";
                     42: $dll->pop();
                     43: $dll->pop();
                     44: 
                     45: // countable
                     46: $dll->push(NULL);
                     47: $dll->push(NULL);
                     48: echo count($dll)."\n";
                     49: echo $dll->count()."\n";
                     50: var_dump($dll->pop());
                     51: var_dump($dll->pop());
                     52: 
                     53: // clonable
                     54: $dll->push(2);
                     55: $dll_clone = clone $dll;
                     56: $dll_clone->pop();
                     57: echo count($dll)."\n";
                     58: ?>
                     59: ===DONE===
                     60: <?php exit(0); ?>
                     61: --EXPECTF--
                     62: Exception: Can't pop from an empty datastructure
                     63: Exception: Can't shift from an empty datastructure
                     64: 3
                     65: 2
                     66: 3
                     67: 2
                     68: 2
                     69: 1
                     70: 2
                     71: 2
                     72: NULL
                     73: NULL
                     74: 1
                     75: ===DONE===

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