public function testStandardRender()
{
$this->specify('The View component does not work as expected', function () {
$view = new View();
$view->setViewsDir(PATH_DATA . 'views' . DIRECTORY_SEPARATOR);
$view->start();
$view->render('test2', 'index');
$view->finish();
expect($view->getContent())->equals("<html>We are here</html>\n");
$view->start();
$view->render('test3', 'other');
$view->finish();
expect($view->getContent())->equals("<html>lolhere</html>\n");
$view->setParamToView('a_cool_var', 'le-this');
$view->start();
$view->render('test3', 'another');
$view->finish();
expect($view->getContent())->equals("<html>lol<p>le-this</p></html>\n");
$view->setTemplateAfter('test');
$view->start();
$view->render('test3', 'other');
$view->finish();
expect($view->getContent())->equals("<html>zuplolhere</html>\n");
$view->cleanTemplateAfter();
$view->setRenderLevel(View::LEVEL_MAIN_LAYOUT);
$view->start();
$view->render('test3', 'other');
$view->finish();
expect($view->getContent())->equals("<html>lolhere</html>\n");
$view->setRenderLevel(View::LEVEL_LAYOUT);
$view->start();
$view->render('test3', 'other');
$view->finish();
expect($view->getContent())->equals('lolhere');
$view->setRenderLevel(View::LEVEL_ACTION_VIEW);
$view->start();
$view->render('test3', 'other');
$view->finish();
expect($view->getContent())->equals('here');
$view->setRenderLevel(View::LEVEL_MAIN_LAYOUT);
$view->start();
$view->pick('test3/yup');
$view->render('test3', 'other');
$view->finish();
expect($view->getContent())->equals("<html>lolyup</html>\n");
$view->setRenderLevel(View::LEVEL_NO_RENDER);
$view->start();
$view->pick('test3/yup');
$view->render('test3', 'other');
$view->finish();
expect($view->getContent())->equals('');
});
}