diff --git a/tests/system/Helpers/TextHelperTest.php b/tests/system/Helpers/TextHelperTest.php index 2696b0cf46ae..bf412ef4af6c 100644 --- a/tests/system/Helpers/TextHelperTest.php +++ b/tests/system/Helpers/TextHelperTest.php @@ -24,7 +24,8 @@ #[Group('Others')] final class TextHelperTest extends CIUnitTestCase { - private string $_long_string = 'Once upon a time, a framework had no tests. It sad. So some nice people began to write tests. The more time that went on, the happier it became. Everyone was happy.'; + private string $longString = 'Once upon a time, a framework had no tests. It sad. So some nice people began to write tests. The more time that went on, the happier it became. Everyone was happy.'; + private string $mbLongString = 'Давным-давно во фреймворке не было тестов. Это печально. И вот несколько хороших людей начали писать тесты. Чем больше времени проходило, тем счастливее становилось. Все были счастливы.'; protected function setUp(): void { @@ -165,19 +166,29 @@ public function testIncrementString(): void public function testWordLimiter(): void { - $this->assertSame('Once upon a time,…', word_limiter($this->_long_string, 4)); - $this->assertSame('Once upon a time,…', word_limiter($this->_long_string, 4, '…')); + $this->assertSame('Once upon a time,…', word_limiter($this->longString, 4)); + $this->assertSame('Once upon a time,…', word_limiter($this->longString, 4, '…')); $this->assertSame('', word_limiter('', 4)); - $this->assertSame('Once upon a…', word_limiter($this->_long_string, 3, '…')); + $this->assertSame('Once upon a…', word_limiter($this->longString, 3, '…')); $this->assertSame('Once upon a time', word_limiter('Once upon a time', 4, '…')); + + $this->assertSame('Давным-давно во фреймворке не было тестов.…', word_limiter($this->mbLongString, 6)); + $this->assertSame('Давным-давно во фреймворке не было тестов.…', word_limiter($this->mbLongString, 6, '…')); + $this->assertSame('Давным-давно во фреймворке…', word_limiter($this->mbLongString, 3, '…')); + $this->assertSame('Давным-давно во фреймворке не было тестов.', word_limiter('Давным-давно во фреймворке не было тестов.', 6, '…')); } public function testCharacterLimiter(): void { - $this->assertSame('Once upon a time, a…', character_limiter($this->_long_string, 20)); - $this->assertSame('Once upon a time, a…', character_limiter($this->_long_string, 20, '…')); + $this->assertSame('Once upon a time, a…', character_limiter($this->longString, 20)); + $this->assertSame('Once upon a time, a…', character_limiter($this->longString, 20, '…')); $this->assertSame('Short', character_limiter('Short', 20)); $this->assertSame('Short', character_limiter('Short', 5)); + + $this->assertSame('Давным-давно во фреймворке не было тестов.…', character_limiter($this->mbLongString, 41)); + $this->assertSame('Давным-давно во фреймворке не было тестов.…', character_limiter($this->mbLongString, 41, '…')); + $this->assertSame('Короткий', character_limiter('Короткий', 20)); + $this->assertSame('Короткий', character_limiter('Короткий', 8)); } public function testAsciiToEntities(): void @@ -391,27 +402,25 @@ public function testDefaultWordWrapCharlim(): void public function testExcerpt(): void { - $string = $this->_long_string; + $string = $this->longString; $result = ' Once upon a time, a framework had no tests. It sad So some nice people began to write tests. The more time that went on, the happier it became. ...'; - $this->assertSame(excerpt($string), $result); + $this->assertSame($result, excerpt($string)); - $multibyteString = 'Давным-давно во фреймворке не было тестов. Это печально. И вот несколько хороших людей начали писать тесты. Чем больше времени проходило, тем счастливее становилось. Все были счастливы.'; $multibyteResult = ' Давным-давно во фреймворке не было тестов. Это печ льно. И вот несколько хороших людей начали писать тесты. Чем больше времени проходило, тем ...'; - $this->assertSame(excerpt($multibyteString), $multibyteResult); + $this->assertSame($multibyteResult, excerpt($this->mbLongString)); } public function testExcerptRadius(): void { - $string = $this->_long_string; + $string = $this->longString; $phrase = 'began'; $result = '... people began to ...'; $this->assertSame(excerpt($string, $phrase, 10), $result); - $multibyteString = 'Давным-давно во фреймворке не было тестов. Это печально. И вот несколько хороших людей начали писать тесты. Чем больше времени проходило, тем счастливее становилось. Все были счастливы.'; $multibyteResult = '... Это печально . И вот ...'; - $this->assertSame(excerpt($multibyteString, 'печально', 10), $multibyteResult); + $this->assertSame($multibyteResult, excerpt($this->mbLongString, 'печально', 10)); } public function testAlternator(): void