Annotation of embedaddon/php/ext/spl/tests/spl_pq_top_error_corrupt.phpt, revision 1.1
1.1 ! misho 1: --TEST--
! 2: SPL: SplPriorityQueue: top and extract flags
! 3: --CREDITS--
! 4: Nathaniel McHugh nat@fishtrap.co.uk
! 5: #testfest 2009-05-09
! 6: --FILE--
! 7: <?php
! 8:
! 9: class myPriorityQueue extends SplPriorityQueue{
! 10:
! 11: public function compare($a, $b){
! 12: if ($b == 2) {
! 13: throw new Exception('ignore me');
! 14: } else {
! 15: return parent::compare($a, $b);
! 16: }
! 17: }
! 18: }
! 19:
! 20: $priorityQueue = new myPriorityQueue();
! 21: $priorityQueue->insert("a", 1);
! 22:
! 23: try {
! 24: //corrupt heap
! 25: $priorityQueue->insert("b", 2);
! 26: // ignore exception tested elsewhere
! 27: } catch (Exception $e) {
! 28: }
! 29:
! 30: try {
! 31: $priorityQueue->top();
! 32: } catch (RuntimeException $e) {
! 33: echo "Exception: ".$e->getMessage().PHP_EOL;
! 34: }
! 35:
! 36: ?>
! 37: --EXPECT--
! 38: Exception: Heap is corrupted, heap properties are no longer ensured.
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>