Exemple #1
0
 /**
  * Test that singularize() returns a single form, respecting irregularities and other locale specific rules.
  */
 public function testSingularize()
 {
     // irregular
     $this->assertEquals('atlas', Inflector::singularize('atlases'));
     $this->assertEquals('corpus', Inflector::singularize('corpuses'));
     $this->assertEquals('octopus', Inflector::singularize('octopuses'));
     $this->assertEquals('ox', Inflector::singularize('oxen'));
     $this->assertEquals('goose', Inflector::singularize('geese'));
     // uninflected
     $this->assertEquals('money', Inflector::singularize('money'));
     $this->assertEquals('flounder', Inflector::singularize('flounder'));
     $this->assertEquals('moose', Inflector::singularize('moose'));
     $this->assertEquals('species', Inflector::singularize('species'));
     $this->assertEquals('wildebeest', Inflector::singularize('wildebeest'));
     // singular
     $this->assertEquals('quiz', Inflector::singularize('quizzes'));
     $this->assertEquals('alias', Inflector::singularize('aliases'));
     $this->assertEquals('shoe', Inflector::singularize('shoes'));
     $this->assertEquals('person', Inflector::singularize('people'));
     $this->assertEquals('apple', Inflector::singularize('apples'));
     // already singular
     $this->assertEquals('atlas', Inflector::singularize('atlas'));
     $this->assertEquals('corpus', Inflector::singularize('corpus'));
     $this->assertEquals('octopus', Inflector::singularize('octopus'));
     $this->assertEquals('ox', Inflector::singularize('ox'));
     $this->assertEquals('goose', Inflector::singularize('goose'));
 }
Exemple #2
0
 /**
  * {@inheritdoc}
  */
 public static function className($string)
 {
     return static::cache([__METHOD__, $string], function () use($string) {
         return Inflector::camelCase(Inflector::singularize($string));
     });
 }