/
vshmidt
/
php
Обзор
Документация
Войти
/
vshmidt
/
php
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
ext/spl/tests/pqueue_002.phpt
64 строки
1 KB
Máté Kocsis
Declare tentative return types for ext/spl - part 2
14 июл 2021, 16:19
Не верифицирован
14 июл 2021, 16:19
6d805ed
Код
Авторство
О чём код?
--TEST-- SPL: SplPriorityQueue: exceptions --FILE-- <?php class myPQueue extends SplPriorityQueue { public function compare($a, $b): int { throw new exception("foo"); } } $h = new myPQueue; try { $h->insert(1, 1); echo "inserted 1\n"; $h->insert(2, 1); echo "inserted 2\n"; $h->insert(3, 1); echo "inserted 3\n"; } catch(Exception $e) { echo "Exception: ".$e->getMessage()."\n"; } try { $h->insert(4, 1); echo "inserted 4\n"; } catch(Exception $e) { echo "Exception: ".$e->getMessage()."\n"; } try { var_dump($h->extract()); } catch(Exception $e) { echo "Exception: ".$e->getMessage()."\n"; } try { var_dump($h->extract()); } catch(Exception $e) { echo "Exception: ".$e->getMessage()."\n"; } echo "Recovering..\n"; $h->recoverFromCorruption(); try { var_dump($h->extract()); } catch(Exception $e) { echo "Exception: ".$e->getMessage()."\n"; } try { var_dump($h->extract()); } catch(Exception $e) { echo "Exception: ".$e->getMessage()."\n"; } ?> --EXPECT-- inserted 1 Exception: foo Exception: Heap is corrupted, heap properties are no longer ensured. Exception: Heap is corrupted, heap properties are no longer ensured. Exception: Heap is corrupted, heap properties are no longer ensured. Recovering.. int(1) int(2)