mirror of
https://github.com/php/php-src.git
synced 2026-03-24 00:02:20 +01:00
Test to verify that closures can't be instantiated
This commit is contained in:
21
Zend/tests/closures/closure_instantiate.phpt
Normal file
21
Zend/tests/closures/closure_instantiate.phpt
Normal file
@@ -0,0 +1,21 @@
|
||||
--TEST--
|
||||
Closures cannot be instantiated directly
|
||||
--CREDITS--
|
||||
Mark Baker mark@lange.demon.co.uk at the PHPNW2017 Conference for PHP Testfest 2017
|
||||
--FILE--
|
||||
<?php
|
||||
|
||||
try {
|
||||
// Closures should be instantiatable using new
|
||||
$x = new Closure();
|
||||
} catch (Exception $e) {
|
||||
// Instantiating a closure is an error, not an exception, so we shouldn't see this
|
||||
echo 'EXCEPTION: ', $e->getMessage();
|
||||
} catch (Throwable $e) {
|
||||
// This is the mesage that we should see for a caught error
|
||||
echo 'ERROR: ', $e->getMessage();
|
||||
}
|
||||
|
||||
?>
|
||||
--EXPECT--
|
||||
ERROR: Instantiation of 'Closure' is not allowed
|
||||
Reference in New Issue
Block a user