diff options
Diffstat (limited to 'Zend/tests/exception_during_include_stat.phpt')
-rw-r--r-- | Zend/tests/exception_during_include_stat.phpt | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/Zend/tests/exception_during_include_stat.phpt b/Zend/tests/exception_during_include_stat.phpt new file mode 100644 index 0000000000..1927e7e251 --- /dev/null +++ b/Zend/tests/exception_during_include_stat.phpt @@ -0,0 +1,41 @@ +--TEST-- +Make sure exceptions during include/require stating are properly propagated +--FILE-- +<?php + +class StreamWrapper { + public function url_stat($path, $flags) { + throw new Exception('stat failed'); + } +} + +stream_wrapper_register('test', StreamWrapper::class); +set_include_path('test://foo:test://bar'); + +try { + require_once 'doesnt_exist.php'; +} catch (Exception $e) { + echo $e->getMessage(), "\n"; +} +try { + require 'doesnt_exist.php'; +} catch (Exception $e) { + echo $e->getMessage(), "\n"; +} +try { + include_once 'doesnt_exist.php'; +} catch (Exception $e) { + echo $e->getMessage(), "\n"; +} +try { + include 'doesnt_exist.php'; +} catch (Exception $e) { + echo $e->getMessage(), "\n"; +} + +?> +--EXPECT-- +stat failed +stat failed +stat failed +stat failed |