mirror of
https://github.com/wiosna-dev/common-library.git
synced 2026-03-12 09:31:51 +01:00
Add Regex::clearBeginningSlash() and Regex::clearEndingSlash() methods (that remove slash from the beginning and the end of given string)
This commit is contained in:
@@ -649,6 +649,28 @@ class RegexTest extends BaseTestCase
|
||||
self::assertSame($expected, Regex::createSlug($value));
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $string
|
||||
* @param string $expected
|
||||
*
|
||||
* @dataProvider provideStringToClearBeginningSlash
|
||||
*/
|
||||
public function testClearBeginningSlash(string $string, string $expected): void
|
||||
{
|
||||
static::assertSame($expected, Regex::clearBeginningSlash($string));
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $string
|
||||
* @param string $expected
|
||||
*
|
||||
* @dataProvider provideStringToClearEndingSlash
|
||||
*/
|
||||
public function testClearEndingSlash(string $string, string $expected): void
|
||||
{
|
||||
static::assertSame($expected, Regex::clearEndingSlash($string));
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides name of bundle and information if it's valid name
|
||||
*
|
||||
@@ -1983,6 +2005,212 @@ class RegexTest extends BaseTestCase
|
||||
];
|
||||
}
|
||||
|
||||
public function provideStringToClearBeginningSlash(): ?Generator
|
||||
{
|
||||
yield[
|
||||
'',
|
||||
'',
|
||||
];
|
||||
|
||||
yield[
|
||||
'/',
|
||||
'',
|
||||
];
|
||||
|
||||
yield[
|
||||
'\\',
|
||||
'\\',
|
||||
];
|
||||
|
||||
yield[
|
||||
'//',
|
||||
'/',
|
||||
];
|
||||
|
||||
yield[
|
||||
'lorem ipsum',
|
||||
'lorem ipsum',
|
||||
];
|
||||
|
||||
yield[
|
||||
'1234',
|
||||
'1234',
|
||||
];
|
||||
|
||||
yield[
|
||||
'lorem/ipsum',
|
||||
'lorem/ipsum',
|
||||
];
|
||||
|
||||
yield[
|
||||
'lorem / ipsum',
|
||||
'lorem / ipsum',
|
||||
];
|
||||
|
||||
yield[
|
||||
'lorem\ipsum',
|
||||
'lorem\ipsum',
|
||||
];
|
||||
|
||||
yield[
|
||||
'lorem \ ipsum',
|
||||
'lorem \ ipsum',
|
||||
];
|
||||
|
||||
yield[
|
||||
'\lorem ipsum',
|
||||
'\lorem ipsum',
|
||||
];
|
||||
|
||||
yield[
|
||||
'\ lorem ipsum',
|
||||
'\ lorem ipsum',
|
||||
];
|
||||
|
||||
yield[
|
||||
'lorem ipsum/',
|
||||
'lorem ipsum/',
|
||||
];
|
||||
|
||||
yield[
|
||||
'lorem ipsum /',
|
||||
'lorem ipsum /',
|
||||
];
|
||||
|
||||
yield[
|
||||
'/lorem ipsum',
|
||||
'lorem ipsum',
|
||||
];
|
||||
|
||||
yield[
|
||||
'/ lorem ipsum',
|
||||
' lorem ipsum',
|
||||
];
|
||||
|
||||
yield[
|
||||
'/123 456',
|
||||
'123 456',
|
||||
];
|
||||
|
||||
yield[
|
||||
'/ 123 456',
|
||||
' 123 456',
|
||||
];
|
||||
|
||||
yield[
|
||||
'/lorem 123 ipsum 456',
|
||||
'lorem 123 ipsum 456',
|
||||
];
|
||||
|
||||
yield[
|
||||
'/ lorem 123 ipsum 456',
|
||||
' lorem 123 ipsum 456',
|
||||
];
|
||||
}
|
||||
|
||||
public function provideStringToClearEndingSlash(): ?Generator
|
||||
{
|
||||
yield[
|
||||
'',
|
||||
'',
|
||||
];
|
||||
|
||||
yield[
|
||||
'/',
|
||||
'',
|
||||
];
|
||||
|
||||
yield[
|
||||
'\\',
|
||||
'\\',
|
||||
];
|
||||
|
||||
yield[
|
||||
'//',
|
||||
'/',
|
||||
];
|
||||
|
||||
yield[
|
||||
'lorem ipsum',
|
||||
'lorem ipsum',
|
||||
];
|
||||
|
||||
yield[
|
||||
'1234',
|
||||
'1234',
|
||||
];
|
||||
|
||||
yield[
|
||||
'lorem/ipsum',
|
||||
'lorem/ipsum',
|
||||
];
|
||||
|
||||
yield[
|
||||
'lorem / ipsum',
|
||||
'lorem / ipsum',
|
||||
];
|
||||
|
||||
yield[
|
||||
'lorem\ipsum',
|
||||
'lorem\ipsum',
|
||||
];
|
||||
|
||||
yield[
|
||||
'lorem \ ipsum',
|
||||
'lorem \ ipsum',
|
||||
];
|
||||
|
||||
yield[
|
||||
'\lorem ipsum',
|
||||
'\lorem ipsum',
|
||||
];
|
||||
|
||||
yield[
|
||||
'\ lorem ipsum',
|
||||
'\ lorem ipsum',
|
||||
];
|
||||
|
||||
yield[
|
||||
'/lorem ipsum',
|
||||
'/lorem ipsum',
|
||||
];
|
||||
|
||||
yield[
|
||||
'/ lorem ipsum',
|
||||
'/ lorem ipsum',
|
||||
];
|
||||
|
||||
yield[
|
||||
'lorem ipsum/',
|
||||
'lorem ipsum',
|
||||
];
|
||||
|
||||
yield[
|
||||
'lorem ipsum /',
|
||||
'lorem ipsum ',
|
||||
];
|
||||
|
||||
yield[
|
||||
'123 456/',
|
||||
'123 456',
|
||||
];
|
||||
|
||||
yield[
|
||||
'123 456 /',
|
||||
'123 456 ',
|
||||
];
|
||||
|
||||
yield[
|
||||
'lorem 123 ipsum 456/',
|
||||
'lorem 123 ipsum 456',
|
||||
];
|
||||
|
||||
yield[
|
||||
'lorem 123 ipsum 456 /',
|
||||
'lorem 123 ipsum 456 ',
|
||||
];
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user