--TEST--
Test V8Js::setModuleLoader : CommonJS modules
--SKIPIF--
<?php
if(!function_exists('json_encode')) {
  die('SKIP');
}
require_once(dirname(__FILE__) . '/skipif.inc');
?>
--FILE--
<?php

$JS = <<< EOT
require("path/to/module1");
EOT;

$v8 = new V8Js();
$v8->setModuleLoader(function($module) {
  switch ($module) {
    case 'path/to/module1':
      return 'print(' . json_encode($module . PHP_EOL) . ');require("./module2");';

    case 'path/to/module2':
      return 'print(' . json_encode($module . PHP_EOL) . ');require("../../module3");';

    default:
      return 'print(' . json_encode($module . PHP_EOL) . ');';
  }
});

$v8->executeString($JS, 'module.js');
?>
===EOF===
--EXPECT--
path/to/module1
path/to/module2
module3
===EOF===