Ejemplo n.º 1
0
        $this->templates[$name] = $template;
    }
    public function load($template, $renderer = 'php')
    {
        if (isset($this->templates[$template . '.' . $renderer])) {
            return new sfTemplateStorageString($this->templates[$template . '.' . $renderer]);
        }
        return false;
    }
}
$loader = new ProjectTemplateLoader();
$renderer = new ProjectTemplateRenderer();
// __construct()
$t->diag('__construct()');
$engine = new ProjectTemplateEngine($loader);
$t->is($engine->getLoader(), $loader, '__construct() takes a loader instance as its second first argument');
$t->is(array_keys($engine->getRenderers()), array('php'), '__construct() automatically registers a PHP renderer if none is given');
$t->ok($engine->getHelperSet() instanceof sfTemplateHelperSet, '__construct() automatically creates a helper set if none is given');
$engine = new ProjectTemplateEngine($loader, array('foo' => $renderer));
$t->is(array_keys($engine->getRenderers()), array('foo', 'php'), '__construct() takes an array of renderers as its third argument');
$t->ok($renderer->getEngine() === $engine, '__construct() registers itself on all renderers');
$engine = new ProjectTemplateEngine($loader, array('php' => $renderer));
$t->ok($engine->getRenderers() === array('php' => $renderer), '__construct() can overridde the default PHP renderer');
$engine = new ProjectTemplateEngine($loader, array(), $helperSet = new sfTemplateHelperSet());
$t->ok($engine->getHelperSet() === $helperSet, '__construct() takes a helper set as its third argument');
// ->getHelperSet() ->setHelperSet()
$t->diag('->getHelperSet() ->setHelperSet()');
$engine = new ProjectTemplateEngine($loader);
$engine->setHelperSet(new sfTemplateHelperSet(array('foo' => $helper = new SimpleHelper('bar'))));
$t->is((string) $engine->getHelperSet()->get('foo'), 'bar', '->setHelperSet() sets a helper set');
// __get()
Ejemplo n.º 2
0
 public function testGetLoader()
 {
     $engine = new ProjectTemplateEngine(new ehough_templating_TemplateNameParser(), $this->loader);
     $this->assertSame($this->loader, $engine->getLoader());
 }