Esempio n. 1
0
$badSource = dmString::random() . '/' . dmString::random();
$errorLink = '<a class="link"></a>';
$t->is($errorLink, $errorLink, $errorLink);
$media->delete();
$t->is((string) £link('mailto:test@mail.com')->text('email'), $html = '<a class="link" href="mailto:test@mail.com">email</a>', 'mailto: ' . $html);
$t->comment('Test use_beaf');
$helper->getServiceContainer()->mergeParameter('link_tag_uri.options', array('use_beaf' => true));
$expected = sprintf('<a class="link beafh" href="%s"><span class="beafore"></span><span class="beafin">%s</span><span class="beafter"></span></span></a>', 'http://diem-project.org', 'http://diem-project.org');
$t->is((string) £link('http://diem-project.org')->set('.beafh'), $expected, 'beafh link is ' . $expected);
$expected = sprintf('<a class="link beafv" href="%s"><span class="beafore"></span><span class="beafin">%s</span><span class="beafter"></span></span></a>', 'http://diem-project.org', 'http://diem-project.org');
$t->is((string) £link('http://diem-project.org')->set('.beafv'), $expected, 'beafh link is ' . $expected);
$expected = sprintf('<a class="link beafh myclass" href="%s"><span class="beafore"></span><span class="beafin">%s</span><span class="beafter"></span></span></a>', 'http://diem-project.org', 'http://diem-project.org');
$t->is((string) £link('http://diem-project.org')->set('.beafh.myclass'), $expected, 'beafh link is ' . $expected);
$expected = sprintf('<a class="link beafv myclass" href="%s"><span class="beafore"></span><span class="beafin">%s</span><span class="beafter"></span></span></a>', 'http://diem-project.org', 'http://diem-project.org');
$t->is((string) £link('http://diem-project.org')->set('.beafv.myclass'), $expected, 'beafh link is ' . $expected);
$expected = sprintf('<a class="link" href="%s">%s</a>', $helper->getContext()->getRequest()->getPathInfoPrefix() . '/simple-url', 'simple route url');
$t->is((string) £link('@link_test_route_1')->text('simple route url'), $expected, 'route link is ' . $expected);
$expected = sprintf('<a class="link" href="%s">%s</a>', $helper->getContext()->getRequest()->getPathInfoPrefix() . '/simple-url?var1=value1', 'simple route url with extra query string');
$t->is((string) £link('@link_test_route_1')->param('var1', 'value1')->text('simple route url with extra query string'), $expected, 'route link is ' . $expected);
$expected = sprintf('<a class="link" href="%s">%s</a>', $helper->getContext()->getRequest()->getPathInfoPrefix() . '/advanced-parametered-url/value1/value2', 'advanced parametered route url');
$t->is((string) £link('@link_test_route_2')->params(array('var1' => 'value1', 'var2' => 'value2'))->text('advanced parametered route url'), $expected, 'route link is ' . $expected);
$expected = sprintf('<a class="link" href="%s">%s</a>', $helper->getContext()->getRequest()->getPathInfoPrefix() . '/advanced-parametered-url/value1/value2?var3=value3', 'advanced parametered route url with extrauery string');
$t->is((string) £link('@link_test_route_2')->params(array('var1' => 'value1', 'var2' => 'value2'))->param('var3', 'value3')->text('advanced parametered route url with extrauery string'), $expected, 'route link is ' . $expected);
sfConfig::set('sf_debug', true);
$expected = 'The "/advanced-parametered-url/:var1/:var2" route has some missing mandatory parameters (:var1, :var2).';
$t->is((string) £link('@link_test_route_2')->text('advanced parametered route url'), $expected, 'route link is ' . $expected);
sfConfig::set('sf_debug', false);
$t->comment('Nofollow attribute');
$expected = '<a class="link" href="http://site.com" nofollow="1">Site</a>';
$t->is((string) £link('http://site.com')->text('Site')->set('nofollow', true), $expected, '->set("nofollow", true)');
$expected = '<a class="link nofollow" href="http://site.com" nofollow="1">Site</a>';
Esempio n. 2
0
}
$menu = $helper->get('menu', 'dmMyMenu')->name('My menu');
$t->isa_ok($menu, 'dmMyMenu', 'Got a dmMyMenu instance');
$menu->addChild('Home', '@homepage')->end()->addChild('Sites')->ulClass('my_ul_class')->addChild('Diem', 'http://diem-project.org')->showId(true)->end()->addChild('Symfony', 'http://symfony-project.org')->end();
$html = _tag('ul', _tag('li.first', _link('@homepage')->text($helper->get('i18n')->__('Home'))) . _tag('li.last', 'Sites' . _tag('ul.my_ul_class', _tag('li#my-menu-diem.first', _link('http://diem-project.org')->text('Diem')) . _tag('li.last', _link('http://symfony-project.org')->text('Symfony')))));
$t->is($menu->render(), $html, $html);
$t->comment('Test getRoot');
$t->is($menu['Home']->getRoot(), $menu, 'Home root is $menu');
$t->is($menu['Sites']['Diem']->getRoot(), $menu, 'Diem root is menu');
$sitemap = $helper->get('sitemap_menu')->build();
$t->isa_ok($sitemap, 'dmSitemapMenu', 'Got a dmSitemapMenu');
$t->is($sitemap->getFirstChild()->renderLink(), (string) _link(), 'Sitemap first child is Home');
$t->like((string) $sitemap, '|^' . preg_quote('<ul><li class="first last"><a class="link" href="', '|') . '.*|', 'Sitemap html is valid');
$t->comment('Test current page');
$homePage = dmDb::table('DmPage')->getTree()->fetchRoot();
$helper->getContext()->setPage($homePage);
$menu = $helper->get('menu')->addChild('Home', '@homepage')->end();
$html = _tag('ul', _tag('li.first.last.dm_current', _link()->text($helper->get('i18n')->__('Home'))));
$t->is($menu->render(), $html, 'Current li has the dm_current class');
$helper->getContext()->setPage(dmDb::table('DmPage')->findOneByModuleAndAction('main', 'signin'));
$menu = $helper->get('menu')->addChild('Home', '@homepage')->end();
$html = _tag('ul', _tag('li.first.last.dm_parent', _link()->text($helper->get('i18n')->__('Home'))));
$t->is($menu->render(), $html, 'Parent li has the dm_parent class');
$menu = $helper->get('menu')->addChild('Home')->end()->addChild('Sites')->addChild('Diem')->end()->addChild('Symfony')->end()->end();
$html = _tag('ul', _tag('li.first', 'Home') . _tag('li.last', 'Sites' . _tag('ul', _tag('li.first', 'Diem') . _tag('li.last', 'Symfony'))));
$t->is($menu->render(), $html, $html);
$t->comment('->getSiblings()');
$t->is_deeply($menu['Home']->getSiblings(), array('Sites' => $menu['Sites']), '->getSiblings() works');
$t->is_deeply($menu['Home']->getSiblings(true), array('Home' => $menu['Home'], 'Sites' => $menu['Sites']), '->getSiblings(true) works');
$t->comment('Move menus');
$menu['Home']->moveToLast();