Exemple #1
0
 /**
  * @dataProvider pageWithAssetDataProvider
  */
 public function testPageWithAsset($siteRoot, $prettyUrls, $name, $expectedName, $expectedAsset)
 {
     $fs = MockFileSystem::create()->withConfig(array('site' => array('root' => $siteRoot, 'pretty_urls' => $prettyUrls)))->withPage($name, array('layout' => 'none', 'format' => 'none'), "Some contents:\n{{ assets.foo }}")->withAsset('_content/pages/blah-assets/foo.txt', 'FOO!');
     $app = new PieCrust(array('root' => $fs->url('kitchen')));
     $page = Page::createFromUri($app, '/' . $name, false);
     $baker = new PageBaker($app, $fs->url('counter'), null, array('copy_assets' => true));
     $baker->bake($page);
     $this->assertFalse($baker->wasPaginationDataAccessed());
     $this->assertEquals(1, $baker->getPageCount());
     $this->assertEquals(array($fs->url('counter/' . $expectedName)), $baker->getBakedFiles());
     $this->assertFileExists($fs->url('counter/' . $expectedName));
     $this->assertEquals("Some contents:\n" . $expectedAsset, file_get_contents($fs->url('counter/' . $expectedName)));
     $expectedAssetPath = substr($expectedAsset, strlen($siteRoot));
     $this->assertFileExists($fs->url('counter/' . $expectedAssetPath));
     $this->assertEquals('FOO!', file_get_contents($fs->url('counter/' . $expectedAssetPath)));
 }
 protected function bakePage(IPage $page)
 {
     $start = microtime(true);
     $baker = new PageBaker($this->getBakeDir(), $this->getPageBakerParameters(), $this->logger);
     $didBake = $baker->bake($page);
     if (!$didBake) {
         return;
     }
     if ($baker->wasPaginationDataAccessed()) {
         $relativePath = PageHelper::getRelativePath($page);
         $this->bakeRecord->addPageUsingPosts($relativePath);
     }
     $pageCount = $baker->getPageCount();
     $this->logger->info(self::formatTimed($start, ($page->getUri() == '' ? '[main page]' : $page->getUri()) . ($pageCount > 1 ? " [{$pageCount}]" : "")));
     return true;
 }