File "AutoliensTest.php"
Full Path: /home/spiraleeea/www/spirale/plugins-dist/textwheel/tests/AutoliensTest.php
File size: 2.21 KB
MIME-type: text/x-php
Charset: utf-8
<?php
/**
* SPIP, Système de publication pour l'internet
*
* Copyright © avec tendresse depuis 2001
* Arnaud Martin, Antoine Pitrou, Philippe Rivière, Emmanuel Saint-James
*
* Ce programme est un logiciel libre distribué sous licence GNU/GPL.
*/
namespace Spip\Core\Tests;
use PHPUnit\Framework\Attributes\DataProvider;
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 static 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;
}
}