for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace Ionut\Sylar\Tests\Unit\Normalizers;
use Ionut\Sylar\Normalizers\PHPIDSConverter;
use Ionut\Sylar\Tests\TestCase;
class PHPIDSConverterTest extends TestCase
{
/**
* @var PHPIDSConverter
*/
protected $converter;
public function setUp()
$this->converter = new PHPIDSConverter();
}
public function testConversion()
$exploits = [
"<IMG SRC=javascript:alert('XSS')>" => '<IMG SRC=javascript:alert("XSS")>',
"<IMG SRC=\"jav ascript:alert('XSS');\">" => '<IMG SRC="javascript:alert("XSS");',
"<IMG SRC=\"jav	ascript:alert('XSS');\">" => '<IMG SRC="javascript:alert("XSS");">',
"\ntest\n" => ' test ',
"\\ntest\\n" => ';test;',
"t--damn-est" => "t;est",
"damn#test\na" => 'damna'
];
foreach ($exploits as $exploit => $converted) {
$this->assertContains(
$converted,
$this->converter->normalize([$exploit])[0]->variants[PHPIDSConverter::class]->getValue()
);