/
vshmidt
/
php
Обзор
Документация
Войти
/
vshmidt
/
php
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
ext/random/tests/03_randomizer/construct_twice.phpt
52 строки
1 KB
Tim Düsterhus
Unify structure for ext/random's randomizer tests (#9410)
31 авг 2022, 20:22
Не верифицирован
31 авг 2022, 20:22
f7d426c
Код
Авторство
О чём код?
--TEST-- Random: Randomizer: Calling __construct() fails due to readonly $engine property --FILE-- <?php use Random\Engine; use Random\Engine\PcgOneseq128XslRr64; use Random\Engine\Test\TestShaEngine; use Random\Engine\Xoshiro256StarStar; use Random\Randomizer; require __DIR__ . "/../engines.inc"; try { (new Randomizer())->__construct(); } catch (Error $e) { echo $e->getMessage(), PHP_EOL; } try { $randomizer = new Randomizer(new Xoshiro256StarStar()); $randomizer->__construct(new PcgOneseq128XslRr64()); } catch (Error $e) { echo $e->getMessage(), PHP_EOL; } try { $randomizer = new Randomizer(new TestShaEngine("1234")); $randomizer->__construct(new TestShaEngine("1234")); } catch (Error $e) { echo $e->getMessage(), PHP_EOL; } try { $randomizer = new Randomizer(new Xoshiro256StarStar()); $randomizer->__construct(new TestShaEngine("1234")); } catch (Error $e) { echo $e->getMessage(), PHP_EOL; } var_dump($randomizer->engine::class); die('success'); ?> --EXPECT-- Cannot modify readonly property Random\Randomizer::$engine Cannot modify readonly property Random\Randomizer::$engine Cannot modify readonly property Random\Randomizer::$engine Cannot modify readonly property Random\Randomizer::$engine string(32) "Random\Engine\Xoshiro256StarStar" success