| 1234567891011121314151617181920212223242526272829303132333435363738 | 
							- --TEST--
 
- Test V8::executeString() : Exception propagation test 3
 
- --SKIPIF--
 
- <?php require_once(dirname(__FILE__) . '/skipif.inc'); ?>
 
- --FILE--
 
- <?php
 
- class Foo {
 
- 	private $v8 = NULL;
 
- 	public function __construct()
 
- 	{
 
- 		$this->v8 = new V8Js(null, array(), array(), false);
 
- 		$this->v8->foo = $this;
 
- 		$this->v8->executeString('function foobar() { throw new SyntaxError(); }', 'throw_1');
 
- 		$this->v8->executeString('try { foobar(); } catch (e) { print(e + " caught in JS!\n"); }', 'trycatch1');
 
- 		$this->v8->executeString('try { PHP.foo.bar(); } catch (e) { print(e + " caught via PHP callback!\n"); }', 'trycatch2');
 
- 	}
 
- 	public function bar()
 
- 	{
 
- 		echo "To Bar!\n";
 
- 		$this->v8->executeString('throw new Error();', 'throw_2');
 
- 	}
 
- }
 
-     
 
- try {
 
- 	$foo = new Foo();
 
- } catch (V8JsScriptException $e) {
 
- 	echo "PHP Exception: ", $e->getMessage(), "\n";
 
- }
 
- ?>
 
- ===EOF===
 
- --EXPECT--
 
- SyntaxError caught in JS!
 
- To Bar!
 
- Error caught via PHP callback!
 
- ===EOF===
 
 
  |