$t->is((string) £link('media:' . $media->id), $mediaLink, 'media:' . $media->id . ' -> ' . $mediaLink); $t->is((string) £link('/' . $media->webPath)->text($media->file), $expected = str_replace($helper->get('request')->getAbsoluteUrlRoot(), '', $mediaLink), $media->webPath . ' -> ' . $expected); sfConfig::set('sf_debug', true); $badSource = dmString::random() . '/' . dmString::random(); $errorText = '[EXCEPTION] ' . $badSource . ' is not a valid link resource'; $expr = '_^<a class="link" href="\\?dm\\_debug=1" title="[^"]+">' . preg_quote($errorText, '_') . '</a>$_'; $errorLink = (string) £link($badSource); $t->like($errorLink, $expr, $errorLink); sfConfig::set('sf_debug', false); $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');
<?php require_once dirname(__FILE__) . '/helper/dmUnitTestHelper.php'; $helper = new dmUnitTestHelper(); $helper->boot(); $sc = $helper->getServiceContainer(); // Configuration // -- this script is needed for some tests. It is located in plugin's test/unit/utils folder $dump_headers_url = 'http://diem-project.org/misc/dmWebBrowserTestDumpHeaders.php'; // tests $nb_test_orig = 63; $adapter_list = array('sfCurlAdapter', 'sfFopenAdapter', 'sfSocketsAdapter'); // -- sites used for testing requests $example_site_url = 'http://www.google.com'; $askeet_params = array('url' => 'http://www.askeet.com', 'login' => 'francois', 'password' => 'llactnevda2'); // -- cookies, file and directory automatically created $cookies_dir = dirname(__FILE__) . '/../data/sfCurlAdapter'; $cookies_file = $cookies_dir . '/cookies.txt'; /** * stub class * **/ class myTestWebBrowser extends dmWebBrowser { protected $requestMethod; public function call($uri, $method = 'GET', $parameters = array(), $headers = array(), $changeStack = true) { parent::call($uri, $method, $parameters, $headers, $changeStack); $this->requestMethod = $this->stack[$this->stackPosition]['method']; } public function getRequestMethod()