assertSame($expected, $slugger->slugify($subject), "«{$subject}»\nshould be slugified to\n«{$expected}»"); } protected function providerSlugify(): array { return [ 'identity' => [ 'abcdef', 'abcdef', ], 'html tags stripping' => [ 'abcdef', 'abcdef', ], 'more html tags stripping' => [ 'abcdef', 'abcdef', ], 'html entities conversion' => [ 'a «b»c def', 'a-b-c-def', ], 'html entities conversion and tags removal' => [ 'a «b»c def', 'a-b-c-def', ], 'french characters transliteration' => [ 'àbçdéf', 'abcdef', ], 'single special character conversion' => [ 'a{b-c_d@e^f', 'a-b-c-d-e-f', ], 'emoji conversion' => [ '😠 ab - 😓 - cd 😕 ef', 'ab-cd-ef', ], 'multiple special characters conversion' => [ "a b~|`c-d$\t \ne%:.,f", 'a-b-c-d-e-f', ], 'leading and trailing special characters removal' => [ "\n \t#_{a b~|`c-d$%e:.,f*^\t\n ", 'a-b-c-d-e-f', ], 'case conversion' => [ 'aBcDEf', 'abcdef', ], 'full example' => [ "😠#[ A «b\n \t\t»^"'^Ç dÉ
f %*
", 'a-b-c-def', ], ]; } }