commonjs_exception_002.phpt 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. --TEST--
  2. Test V8Js::setModuleNormaliser : Forward exceptions
  3. --SKIPIF--
  4. <?php require_once(dirname(__FILE__) . '/skipif.inc'); ?>
  5. --FILE--
  6. <?php
  7. $JS = <<< EOT
  8. var foo = require("./test");
  9. EOT;
  10. $v8 = new V8Js();
  11. $v8->setModuleNormaliser(function($module) {
  12. throw new Exception('some exception');
  13. });
  14. $v8->setModuleLoader(function($module) {
  15. echo 'dummy ...';
  16. });
  17. $v8->executeString($JS, 'module.js', V8Js::FLAG_PROPAGATE_PHP_EXCEPTIONS);
  18. ?>
  19. ===EOF===
  20. --EXPECTF--
  21. Fatal error: Uncaught Exception: some exception in %s%ecommonjs_exception_002.php:9
  22. Stack trace:
  23. #0 [internal function]: {closure}('', './test')
  24. #1 %s%ecommonjs_exception_002.php(15): V8Js->executeString('var foo = requi...', 'module.js', 4)
  25. #2 {main}
  26. Next V8JsScriptException: module.js:1: Exception: some exception in %s%ecommonjs_exception_002.php:9
  27. Stack trace:
  28. #0 [internal function]: {closure}('', './test')
  29. #1 %s%ecommonjs_exception_002.php(15): V8Js->executeString('var foo = requi...', 'module.js', 4)
  30. #2 {main} in %s%ecommonjs_exception_002.php:15
  31. Stack trace:
  32. #0 %s%ecommonjs_exception_002.php(15): V8Js->executeString('var foo = requi...', 'module.js', 4)
  33. #1 {main}
  34. thrown in %s%ecommonjs_exception_002.php on line 15