public function testTemplateLocating() { $file = new File(array('paths' => array('template' => '{:library}/views/{:controller}/{:template}.{:type}.php'))); $template = $file->template('template', array('controller' => 'pages', 'template' => 'home', 'type' => 'html')); $this->assertPattern('/template_views_pages_home\\.html_[0-9]+/', $template); $file = new File(array('compile' => false, 'paths' => array('template' => '{:library}/views/{:controller}/{:template}.{:type}.php'))); $template = $file->template('template', array('controller' => 'pages', 'template' => 'home', 'type' => 'html')); $this->assertPattern('/\\/views\\/pages\\/home\\.html\\.php$/', $template); $template = $file->template('invalid', array('template' => 'foo')); $this->assertNull($template); $this->expectException('/Template not found/'); $file->template('template', array('controller' => 'pages', 'template' => 'foo', 'type' => 'html')); }
public function testInvalidTemplateType() { $file = new File(array('compile' => false, 'paths' => array('template' => '{:library}/views/{:controller}/{:template}.{:type}.php'))); $this->assertException("Invalid template type 'invalid'.", function () use($file) { $file->template('invalid', array('template' => 'foo')); }); }