public function testCacheDI()
{
$this->specify("Views are not cached properly", function () {
$this->_clearCache();
$date = date("r");
$content = '<html>' . $date . '</html>' . PHP_EOL;
$di = $this->_getDi();
$view = new View();
$view->setDI($di);
$view->setViewsDir(PATH_DATA . 'views' . DIRECTORY_SEPARATOR);
$view->setVar("date", $date);
//First hit
$view->start();
$view->cache(true);
$view->render('test8', 'index');
$view->finish();
expect($view->getContent())->equals($content);
$view->reset();
//Second hit
$view->start();
$view->cache(true);
$view->render('test8', 'index');
$view->finish();
expect($view->getContent())->equals($content);
$view->reset();
sleep(1);
$view->setVar("date", date("r"));
//Third hit after 1 second
$view->start();
$view->cache(true);
$view->render('test8', 'index');
$view->finish();
expect($view->getContent())->equals($content);
$view->reset();
//Four hit
$view->start();
$view->cache(true);
$view->render('test8', 'index');
$view->finish();
expect($view->getContent())->equals($content);
});
}