示例#1
0
require_once realpath(dirname(__FILE__) . '/../../..') . '/unit/helper/dmUnitTestHelper.php';
$helper = new dmUnitTestHelper();
$helper->boot();
$nbLoremizeRecords = 10;
$helper->get('page_tree_watcher')->connect();
$markdown = $helper->get('markdown');
$nbTests = 5 + $nbLoremizeRecords * 12;
$t = new lime_test($nbTests);
$helper->loremizeDatabase($nbLoremizeRecords, $t);
dmDb::table('DmAutoSeo')->findOneByModuleAndAction('dmTestDomain', 'show')->merge(array('slug' => '%dmTestDomain.id%-%dmTestDomain%'))->save();
dmDb::table('DmAutoSeo')->findOneByModuleAndAction('dmTestCateg', 'show')->merge(array('slug' => '%dmTestCateg.id%-%dmTestCateg%'))->save();
dmDb::table('DmAutoSeo')->findOneByModuleAndAction('dmTestPost', 'show')->merge(array('slug' => '%dmTestPost%-%dmTestPost.id%', 'name' => 'Post : %dmTestPost.title%', 'title' => '%dmTestPost% | %dmTestCateg.name%', 'h1' => '%dmTestPost%', 'description' => '%dmTestPost.body%'))->save();
$t->diag('seo construction');
$timer = dmDebug::timer('update seo');
try {
    $helper->updatePageTreeWatcher($t);
} catch (Exception $e) {
    $t->skip('Not supported on this server: ' . $e->getMessage(), $nbTests);
    return;
}
$t->ok(true, sprintf('Seo updated in %01.2f s', $timer->getElapsedTime()));
foreach (dmDb::table('dmTestPost')->findAll() as $post) {
    if (!($page = $post->getDmPage())) {
        $t->skip('Post ' . $post . ' has no page', 6);
        continue;
    }
    $page->refresh(true);
    $categ = $page->getNode()->getParent()->getRecord();
    $domain = $page->getNode()->getParent()->getNode()->getParent()->getRecord();
    $t->is($post->isActive, $page->isActive, 'is_active field synchronized to ' . ($post->isActive ? 'TRUE' : 'FALSE'));
    $slug = 'dm-test-domains/' . $domain->id . '-' . dmString::slugify($domain->title) . '/' . $categ->id . '-' . dmString::slugify($categ->name) . '/' . dmString::slugify($post->title) . '-' . $post->id;