mirror of
https://github.com/friendica/friendica
synced 2025-02-26 10:38:13 +00:00
86 lines
1.9 KiB
PHP
86 lines
1.9 KiB
PHP
|
<?php
|
||
|
/**
|
||
|
* @file tests/src/Util/StringsTest.php
|
||
|
*/
|
||
|
namespace Friendica\Test\Util;
|
||
|
|
||
|
use Friendica\Util\Strings;
|
||
|
use PHPUnit\Framework\TestCase;
|
||
|
|
||
|
/**
|
||
|
* @brief Strings utility test class
|
||
|
*/
|
||
|
class StringsTest extends TestCase
|
||
|
{
|
||
|
/**
|
||
|
* randomnames should be random, even length
|
||
|
*/
|
||
|
public function testRandomEven()
|
||
|
{
|
||
|
$randomname1 = Strings::getRandomName(10);
|
||
|
$randomname2 = Strings::getRandomName(10);
|
||
|
|
||
|
$this->assertNotEquals($randomname1, $randomname2);
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* randomnames should be random, odd length
|
||
|
*/
|
||
|
public function testRandomOdd()
|
||
|
{
|
||
|
$randomname1 = Strings::getRandomName(9);
|
||
|
$randomname2 = Strings::getRandomName(9);
|
||
|
|
||
|
$this->assertNotEquals($randomname1, $randomname2);
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* try to fail ramdonnames
|
||
|
*/
|
||
|
public function testRandomNameNoLength()
|
||
|
{
|
||
|
$randomname1 = Strings::getRandomName(0);
|
||
|
$this->assertEquals(0, strlen($randomname1));
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* try to fail it with invalid input
|
||
|
*
|
||
|
* @todo What's corect behaviour here? An exception?
|
||
|
*/
|
||
|
public function testRandomNameNegativeLength()
|
||
|
{
|
||
|
$randomname1 = Strings::getRandomName(-23);
|
||
|
$this->assertEquals(0, strlen($randomname1));
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* test with a length, that may be too short
|
||
|
*/
|
||
|
public function testRandomNameLength1()
|
||
|
{
|
||
|
$randomname1 = Strings::getRandomName(1);
|
||
|
$this->assertEquals(1, strlen($randomname1));
|
||
|
|
||
|
$randomname2 = Strings::getRandomName(1);
|
||
|
$this->assertEquals(1, strlen($randomname2));
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* test, that tags are escaped
|
||
|
*/
|
||
|
public function testEscapeTags()
|
||
|
{
|
||
|
$invalidstring='<submit type="button" onclick="alert(\'failed!\');" />';
|
||
|
|
||
|
$validstring = Strings::removeTags($invalidstring);
|
||
|
$escapedString = Strings::escapeTags($invalidstring);
|
||
|
|
||
|
$this->assertEquals('[submit type="button" onclick="alert(\'failed!\');" /]', $validstring);
|
||
|
$this->assertEquals(
|
||
|
"<submit type="button" onclick="alert('failed!');" />",
|
||
|
$escapedString
|
||
|
);
|
||
|
}
|
||
|
}
|