diff options
Diffstat (limited to 'ext/spl/tests/spl_heap_count_basic.phpt')
-rw-r--r-- | ext/spl/tests/spl_heap_count_basic.phpt | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/ext/spl/tests/spl_heap_count_basic.phpt b/ext/spl/tests/spl_heap_count_basic.phpt new file mode 100644 index 0000000..6e6baf6 --- /dev/null +++ b/ext/spl/tests/spl_heap_count_basic.phpt @@ -0,0 +1,35 @@ +--TEST-- +SPL: SplHeap, Test spl_heap_object_count_elements (spl_heap.c:490) for returning count() failure for Heaps +--CREDITS-- +Chris Scott chris.scott@nstein.com +#testfest London 2009-05-09 +--FILE-- +<?php + +class MyHeap extends SplHeap +{ + public function compare($a,$b) + { + return ($a < $b); + } + + public function count() // override count to force failure + { + throw new Exception('Cause count to fail'); + return parent::count(); + } +} + + +$heap = new MyHeap(); +$heap->insert(1); +count($heap);// refers to MyHeap->count() method + +?> +--EXPECTF-- +Fatal error: Uncaught exception 'Exception' with message 'Cause count to fail' in %s +Stack trace: +#0 [internal function]: MyHeap->count() +#1 %s count(Object(MyHeap)) +#2 {main} + thrown in %s on line %d |