1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72
|
<?php
/*
* This file is part of the Symfony package.
*
* (c) Fabien Potencier <fabien@symfony.com>
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Symfony\Component\HtmlSanitizer\Tests\TextSanitizer;
use PHPUnit\Framework\TestCase;
use Symfony\Component\HtmlSanitizer\TextSanitizer\StringSanitizer;
class StringSanitizerTest extends TestCase
{
public static function provideHtmlLower()
{
$cases = [
'exampleAttr' => 'exampleattr',
'aTTrΔ' => 'attrΔ',
'data-attr' => 'data-attr',
'test with space' => 'test with space',
];
foreach ($cases as $input => $expected) {
yield $input => [$input, $expected];
}
}
#[\PHPUnit\Framework\Attributes\DataProvider('provideHtmlLower')]
public function testHtmlLower(string $input, string $expected)
{
$this->assertSame($expected, StringSanitizer::htmlLower($input));
}
public static function provideEncodeHtmlEntites()
{
$cases = [
'' => '',
'"' => '"',
'\'' => ''',
'&' => '&',
'<' => '<',
'>' => '>',
'<' => '&lt;',
'>' => '&gt;',
'+' => '+',
'=' => '=',
'@' => '@',
'`' => '`',
'<' => '<',
'>' => '>',
'+' => '+',
'=' => '=',
'@' => '@',
'`' => '`',
];
foreach ($cases as $input => $expected) {
yield $input => [$input, $expected];
}
}
#[\PHPUnit\Framework\Attributes\DataProvider('provideEncodeHtmlEntites')]
public function testEncodeHtmlEntites(string $input, string $expected)
{
$this->assertSame($expected, StringSanitizer::encodeHtmlEntities($input));
}
}
|