File "AutoliensTest.php"
Full path: /home/argothem/www/v4_old/plugins-dist/textwheel/tests/AutoliensTest.php
File size: 2.62 KB
MIME-type: text/x-php
Charset: 8 bit
<?php
/***************************************************************************\
* SPIP, Systme de publication pour l'internet *
* *
* Copyright avec tendresse depuis 2001 *
* Arnaud Martin, Antoine Pitrou, Philippe Rivire, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribu sous licence GNU/GPL. *
* Pour plus de dtails voir le fichier COPYING.txt ou l'aide en ligne. *
\***************************************************************************/
namespace Spip\Core\Tests;
use PHPUnit\Framework\TestCase;
/**
* TypographieFrTest test
*/
class AutoliensTest extends TestCase {
protected static $lang = 'fr';
protected static $filtrer_javascript;
public static function setUpBeforeClass(): void{
static::$filtrer_javascript = $GLOBALS['filtrer_javascript'];
include_spip('inc/texte');
changer_langue(static::$lang);
}
public function providerAutoLiens() {
$list = [
'https://www.spip.net' => '<p><a href="https://www.spip.net" class=\'spip_url spip_out auto\' rel=\'nofollow external\'>https://www.spip.net</a></p>',
'https://www.spip.net/' => '<p><a href="https://www.spip.net/" class=\'spip_url spip_out auto\' rel=\'nofollow external\'>https://www.spip.net/</a></p>',
'http://www.spip.net/' => '<p><a href="http://www.spip.net/" class=\'spip_url spip_out auto\' rel=\'nofollow external\'>http://www.spip.net/</a></p>',
'www.spip.net' => '<p><a href="http://www.spip.net" class=\'spip_url spip_out auto\' rel=\'nofollow external\'>www.spip.net</a></p>',
'http://eur-lex.europa.eu/LexUriServ/LexUriServ.do?uri=OJ:L:2013:020:0033:0043:FR:PDF' => '<p><a href="http://eur-lex.europa.eu/LexUriServ/LexUriServ.do?uri=OJ:L:2013:020:0033:0043:FR:PDF" class=\'spip_url spip_out auto\' rel=\'nofollow external\'>http://eur-lex.europa.eu/LexUriServ/LexUriServ.do?uri=OJ:L:2013:020:0033:0043:FR:PDF</a></p>',
];
return array_map(null, array_keys($list), array_values($list));
}
/**
* @dataProvider providerAutoLiens
*/
public function testAutoliensNormal($source, $expected) {
$GLOBALS['filtrer_javascript'] = 0;
$this->assertEquals($expected, propre($source));
}
/**
* @dataProvider providerAutoLiens
*/
public function testAutoliensParano($source, $expected) {
$GLOBALS['filtrer_javascript'] = -1;
$this->assertEquals($expected, propre($source));
}
public static function tearDownAfterClass(): void{
$GLOBALS['filtrer_javascript'] = static::$filtrer_javascript;
}
}