Phalcon\Test\Unit\Mvc\ViewTest::testCacheDI PHP 메소드

testCacheDI() 공개 메소드

public testCacheDI ( )
    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);
        });
    }