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