diff --git a/cake/libs/inflector.php b/cake/libs/inflector.php index 4012b1a8d48..73a73960e97 100644 --- a/cake/libs/inflector.php +++ b/cake/libs/inflector.php @@ -298,7 +298,7 @@ function __initSingularRules() { '/(drive)s$/i' => '\1', '/([^fo])ves$/i' => '\1fe', '/(^analy)ses$/i' => '\1sis', - '/((a)naly|(b)a|(d)iagno|(p)arenthe|(p)rogno|(s)ynop|(t)he)ses$/i' => '\1\2sis', + '/(analy|(b)a|(d)iagno|(p)arenthe|(p)rogno|(s)ynop|(t)he)ses$/i' => '\1\2sis', '/([ti])a$/i' => '\1um', '/(p)eople$/i' => '\1\2erson', '/(m)en$/i' => '\1an', diff --git a/cake/tests/cases/libs/inflector.test.php b/cake/tests/cases/libs/inflector.test.php index b896805a35d..7fd758213dd 100644 --- a/cake/tests/cases/libs/inflector.test.php +++ b/cake/tests/cases/libs/inflector.test.php @@ -109,6 +109,10 @@ function testInflectingSingulars() { $this->assertEqual(Inflector::singularize('waxes'), 'wax'); $this->assertEqual(Inflector::singularize('waves'), 'wave'); $this->assertEqual(Inflector::singularize('bureaus'), 'bureau'); + $this->assertEqual(Inflector::singularize('genetic_analyses'), 'genetic_analysis'); + $this->assertEqual(Inflector::singularize('doctor_diagnoses'), 'doctor_diagnosis'); + $this->assertEqual(Inflector::singularize('parantheses'), 'paranthesis'); + $this->assertEqual(Inflector::singularize(''), ''); } /**