toBeTrue(); })->with(['ruLrlotwaCoVStmZetSxD', 'VBwauClhcuUvMvksdgWnjr', 'iOmGRYDQjETnnHmPKzjgGe']); test('real person names are never random', function (string $name) { expect(GibberishDetector::isRandomPersonName($name))->toBeFalse(); })->with(['Paula Presse', 'MacGregor', 'Anna-Lena Müller', 'McDonaldSmith', 'RobertHix', 'ABCDEFGHIJKLMN']); test('the contact name check spares company names but catches bot tokens', function (string $value, bool $random) { expect(GibberishDetector::isRandomToken($value))->toBe($random); })->with([ 'company with camel case' => ['StammZellenPowerTeam', false], 'company with caps' => ['KUUNSTPavillon', false], 'bot name' => ['ruLrlotwaCoVStmZetSxD', true], 'letter-digit block' => ['NAEWTRER2720160NEYRTHYT', true], 'normal sentence' => ['Guten Tag, ich habe eine Frage.', false], ]);