diff --git a/cake/libs/inflector.php b/cake/libs/inflector.php index e046157a834..e34177f9deb 100644 --- a/cake/libs/inflector.php +++ b/cake/libs/inflector.php @@ -134,7 +134,7 @@ class Inflector { '/(drive)s$/i' => '\1', '/([^fo])ves$/i' => '\1fe', '/(^analy)ses$/i' => '\1sis', - '/(analy|ba|diagno|(p)arenthe|(p)rogno|(s)ynop|(t)he)ses$/i' => '\1\2sis', + '/(analy|diagno|^ba|(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 d728d5a84f5..fbbc86f487a 100644 --- a/cake/tests/cases/libs/inflector.test.php +++ b/cake/tests/cases/libs/inflector.test.php @@ -120,6 +120,7 @@ function testInflectingSingulars() { $this->assertEqual(Inflector::singularize('cafes'), 'cafe'); $this->assertEqual(Inflector::singularize('roofs'), 'roof'); $this->assertEqual(Inflector::singularize('foes'), 'foe'); + $this->assertEqual(Inflector::singularize('databases'), 'database'); $this->assertEqual(Inflector::singularize(''), ''); } @@ -172,6 +173,7 @@ function testInflectingPlurals() { $this->assertEqual(Inflector::pluralize('cafe'), 'cafes'); $this->assertEqual(Inflector::pluralize('roof'), 'roofs'); $this->assertEqual(Inflector::pluralize('foe'), 'foes'); + $this->assertEqual(Inflector::pluralize('database'), 'databases'); $this->assertEqual(Inflector::pluralize(''), ''); }