compile_string_isolate.phpt 950 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. --TEST--
  2. Test V8::compileString() : Check compiled script isolate processing
  3. --SKIPIF--
  4. <?php require_once(dirname(__FILE__) . '/skipif.inc'); ?>
  5. --FILE--
  6. <?php
  7. $js = <<<'EOT'
  8. var a = { 'hello' : 'world' }; a;
  9. EOT;
  10. $js2 = <<<'EOT'
  11. var a = { 'foo' : 'bar' }; a;
  12. EOT;
  13. $v8 = new V8Js();
  14. $v8two = new V8Js();
  15. try {
  16. $script_a = $v8->compileString($js, 'a.js');
  17. var_dump($script_a);
  18. $script_b = $v8two->compileString($js2, 'b.js');
  19. var_dump($script_b);
  20. var_dump($v8->executeScript($script_a));
  21. var_dump($v8->executeScript($script_b));
  22. var_dump($v8->executeScript($script_a));
  23. } catch (V8JsScriptException $e) {
  24. var_dump($e);
  25. }
  26. ?>
  27. ===EOF===
  28. --EXPECTF--
  29. resource(%d) of type (V8Js script)
  30. resource(%d) of type (V8Js script)
  31. object(V8Object)#%d (1) {
  32. ["hello"]=>
  33. string(5) "world"
  34. }
  35. Warning: Script resource from wrong V8Js object passed in %s on line %d
  36. bool(false)
  37. object(V8Object)#%d (1) {
  38. ["hello"]=>
  39. string(5) "world"
  40. }
  41. ===EOF===