Annotation of embedaddon/php/ext/spl/tests/heap_009.phpt, revision 1.1.1.1
1.1 misho 1: --TEST--
2: SPL: SplHeap and friends, throw: An iterator cannot be used with foreach by reference
3: --CREDITS--
4: Thomas Koch <thomas@koch.ro>
5: #Hackday Webtuesday 2008-05-24
6: --FILE--
7: <?php
8: function testForException( $heap )
9: {
10: try
11: {
12: foreach( $heap as &$item );
13: }
14: catch( RuntimeException $e )
15: {
16: echo $e->getMessage(),"\n";
17: }
18: }
19:
20: // 1. SplMinHeap emtpy
21: $heap = new SplMinHeap;
22: testForException( $heap );
23:
24: // 2. SplMinHeap non-emtpy
25: $heap = new SplMinHeap;
26: $heap->insert( 1 );
27: testForException( $heap );
28:
29: // 3. SplMaxHeap emtpy
30: $heap = new SplMaxHeap;
31: testForException( $heap );
32:
33: // 4. SplMaxHeap non-emtpy
34: $heap = new SplMaxHeap;
35: $heap->insert( 1 );
36: testForException( $heap );
37:
38: // 5. SplPriorityQueue empty
39: $heap = new SplPriorityQueue;
40: testForException( $heap );
41:
42: // 6. SplPriorityQueue non-empty
43: $heap = new SplPriorityQueue;
44: $heap->insert( 1, 2 );
45: testForException( $heap );
46:
47: ?>
48: ==DONE==
49: --EXPECT--
50: An iterator cannot be used with foreach by reference
51: An iterator cannot be used with foreach by reference
52: An iterator cannot be used with foreach by reference
53: An iterator cannot be used with foreach by reference
54: An iterator cannot be used with foreach by reference
55: An iterator cannot be used with foreach by reference
56: ==DONE==
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>