exception_filter_002.phpt 586 B

1234567891011121314151617181920212223242526272829303132
  1. --TEST--
  2. Test V8::setExceptionFilter() : Filter handling on exception in setModuleLoader
  3. --SKIPIF--
  4. <?php require_once(dirname(__FILE__) . '/skipif.inc'); ?>
  5. --FILE--
  6. <?php
  7. $v8 = new V8Js();
  8. $v8->setModuleLoader(function ($path) {
  9. throw new Error('moep');
  10. });
  11. $v8->setExceptionFilter(function (Throwable $ex) {
  12. echo "exception filter called.\n";
  13. return $ex->getMessage();
  14. });
  15. $v8->executeString('
  16. try {
  17. require("file");
  18. } catch(e) {
  19. var_dump(e);
  20. }
  21. ', null, V8Js::FLAG_PROPAGATE_PHP_EXCEPTIONS);
  22. ?>
  23. ===EOF===
  24. --EXPECT--
  25. exception filter called.
  26. string(4) "moep"
  27. ===EOF===