public function autoregisterViews($view_base, $folder, $viewtype)
{
$folder = rtrim($folder, '/\\');
$view_base = rtrim($view_base, '/\\');
$handle = opendir($folder);
if (!$handle) {
return false;
}
while ($entry = readdir($handle)) {
if ($entry[0] === '.') {
continue;
}
$path = "{$folder}/{$entry}";
if (!empty($view_base)) {
$view_base_new = $view_base . "/";
} else {
$view_base_new = "";
}
if (is_dir($path)) {
$this->autoregisterViews($view_base_new . $entry, $path, $viewtype);
} else {
$view = $view_base_new . basename($entry, '.php');
$this->setViewLocation($view, $viewtype, $path);
}
}
return true;
}
public function setUp() { $this->viewsDir = dirname(dirname(__FILE__)) . "/test_files/views"; $this->hooks = new \Elgg\PluginHooksService(); $this->logger = $this->getMock('\\Elgg\\Logger', array(), array(), '', false); $this->views = new \Elgg\ViewsService($this->hooks, $this->logger); $this->views->autoregisterViews('', "{$this->viewsDir}/default", 'default'); // supports deprecation wrapper for $vars['user'] _elgg_services()->setValue('session', \ElggSession::getMock()); }