generators_from_v8_010.phpt 584 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. --TEST--
  2. Test V8::executeString() : Generators V8 -> PHP (properties)
  3. --SKIPIF--
  4. <?php
  5. require_once(dirname(__FILE__) . '/skipif.inc');
  6. if (!class_exists('V8Generator')) {
  7. die("skip Installed V8 version doesn't support generators");
  8. }
  9. ?>
  10. --FILE--
  11. <?php
  12. $js = <<<EOJS
  13. function* TheGen() {
  14. yield 23;
  15. yield PHP.getValue();
  16. }
  17. var gen = TheGen();
  18. gen.foo = 23;
  19. gen.bar = function() { var_dump("Hello World"); };
  20. gen;
  21. EOJS;
  22. $v8 = new V8Js();
  23. $gen = $v8->executeString($js);
  24. var_dump($gen->foo);
  25. $gen->bar();
  26. ?>
  27. ===EOF===
  28. --EXPECT--
  29. int(23)
  30. string(11) "Hello World"
  31. ===EOF===