Annotation of embedaddon/php/ext/spl/tests/dllist_004.phpt, revision 1.1
1.1 ! misho 1: --TEST--
! 2: SPL: DoublyLinkedList: Stacks
! 3: --INI--
! 4: allow_call_time_pass_reference=1
! 5: --FILE--
! 6: <?php
! 7: $stack = new SplStack();
! 8: // errors
! 9: try {
! 10: $stack->pop();
! 11: } catch (RuntimeException $e) {
! 12: echo "Exception: ".$e->getMessage()."\n";
! 13: }
! 14: try {
! 15: $stack->shift();
! 16: } catch (RuntimeException $e) {
! 17: echo "Exception: ".$e->getMessage()."\n";
! 18: }
! 19:
! 20: // data consistency
! 21: $a = 2;
! 22: $stack->push($a);
! 23: $a = 3;
! 24: $stack->push(&$a);
! 25: $a = 4;
! 26: echo $stack->pop()."\n";
! 27: echo $stack->pop()."\n";
! 28:
! 29: // peakable
! 30: $stack->push(1);
! 31: $stack->push(2);
! 32: echo $stack->top()."\n";
! 33:
! 34: // iterable
! 35: foreach ($stack as $elem) {
! 36: echo "[$elem]\n";
! 37: }
! 38:
! 39: // countable
! 40: $stack->push(NULL);
! 41: $stack->push(NULL);
! 42: echo count($stack)."\n";
! 43: echo $stack->count()."\n";
! 44: var_dump($stack->pop());
! 45: var_dump($stack->pop());
! 46:
! 47: // clonable
! 48: $stack->push(2);
! 49: $stack_clone = clone $stack;
! 50: $stack_clone->pop();
! 51: echo count($stack)."\n";
! 52: ?>
! 53: ===DONE===
! 54: <?php exit(0); ?>
! 55: --EXPECTF--
! 56: Exception: Can't pop from an empty datastructure
! 57: Exception: Can't shift from an empty datastructure
! 58: 3
! 59: 2
! 60: 2
! 61: [2]
! 62: [1]
! 63: 4
! 64: 4
! 65: NULL
! 66: NULL
! 67: 3
! 68: ===DONE===
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>