[Д] [StringExtension::Replace] Функция заменяет все вхождения строки поиска на строку замены в заданной строке (аналог mb_str_replace). [Д] [StringExtension::ReplaceAll] Функция заменяет все вхождения строк поиск на соответствующие строки замены в заданной строке.
82 lines
2.6 KiB
PHP
82 lines
2.6 KiB
PHP
<?php
|
||
|
||
namespace goodboyalex\php_components_pack\tests\extensions;
|
||
|
||
use goodboyalex\php_components_pack\extensions\StringExtension;
|
||
use PHPUnit\Framework\TestCase;
|
||
|
||
class StringExtensionTest extends TestCase
|
||
{
|
||
|
||
public function testIsNullOrWhitespace ()
|
||
{
|
||
$this->PrepareForTest();
|
||
|
||
$this->assertTrue(StringExtension::isNullOrWhitespace(''));
|
||
$this->assertTrue(StringExtension::isNullOrWhitespace(' '));
|
||
$this->assertTrue(StringExtension::isNullOrWhitespace(null));
|
||
$this->assertFalse(StringExtension::isNullOrWhitespace('TEST'));
|
||
|
||
}
|
||
|
||
private function PrepareForTest (): void
|
||
{
|
||
require_once __DIR__ . '/../../sources/extensions/StringExtension.php';
|
||
}
|
||
|
||
public function testConvertToLatin ()
|
||
{
|
||
$this->PrepareForTest();
|
||
|
||
$this->assertEquals('test', StringExtension::ConvertToLatin('тест'));
|
||
$this->assertEquals('test', StringExtension::ConvertToLatin('test'));
|
||
|
||
}
|
||
|
||
public function testIsNullOrEmpty ()
|
||
{
|
||
$this->PrepareForTest();
|
||
|
||
$this->assertTrue(StringExtension::isNullOrEmpty(''));
|
||
$this->assertTrue(StringExtension::isNullOrEmpty(null));
|
||
$this->assertFalse(StringExtension::isNullOrEmpty('TEST'));
|
||
|
||
}
|
||
|
||
public function testCompare ()
|
||
{
|
||
$this->PrepareForTest();
|
||
|
||
$this->assertEquals(0, StringExtension::Compare('test', 'test'));
|
||
$this->assertEquals(-1, StringExtension::Compare('test', 'test1'));
|
||
$this->assertEquals(1, StringExtension::Compare('test2', 'test'));
|
||
}
|
||
|
||
public function testGetShortText ()
|
||
{
|
||
$this->PrepareForTest();
|
||
|
||
$this->assertEquals('test', StringExtension::GetShortText('test', 4));
|
||
$this->assertEquals('test', StringExtension::GetShortText('test', 10));
|
||
$this->assertEquals('test', StringExtension::GetShortText('test of this', 4));
|
||
$this->assertEquals('t', StringExtension::GetShortText('test', 1));
|
||
$this->assertEquals('', StringExtension::GetShortText('test', 0));
|
||
|
||
}
|
||
|
||
public function testReplace ()
|
||
{
|
||
$this->PrepareForTest();
|
||
|
||
$this->assertEquals('Все 2 ночи и 2 дня 2 друга искали тебя!',
|
||
StringExtension::Replace("4", "2", "Все 4 ночи и 4 дня 2 друга искали тебя!"));
|
||
}
|
||
|
||
public function testReplaceAll ()
|
||
{
|
||
$this->PrepareForTest();
|
||
|
||
$this->assertEquals('Все 5 ночи и 5 дня 2 друга искали тебя!',
|
||
StringExtension::ReplaceAll(["4" => "5", "3" => "2"], "Все 4 ночи и 4 дня 3 друга искали тебя!"));
|
||
}
|
||
} |