public function setUp() { $this->_backups['catalogConfig'] = Catalog::config(); Catalog::reset(); Catalog::config(array('runtime' => array('adapter' => new Memory()))); Inflector::reset(); }
public function tearDown() { Inflector::reset(); Catalog::reset(); Catalog::config($this->_backup['catalogConfig']); }
/** * Tests adding transliterated characters to the map used in `Inflector::slug()`. * * @return void */ public function testAddTransliterations() { $this->assertEqual(Inflector::slug('Montréal'), 'Montreal'); $this->assertNotEqual(Inflector::slug('Écaussines'), 'Ecaussines'); Inflector::rules('transliteration', array('/É|Ê/' => 'E')); $this->assertEqual(Inflector::slug('Écaussines-d\'Enghien'), 'Ecaussines-d-Enghien'); $this->assertNotEqual(Inflector::slug('JØRGEN'), 'JORGEN'); Inflector::rules('transliteration', array('/Ø/' => 'O')); $this->assertEqual(Inflector::slug('JØRGEN'), 'JORGEN'); $this->assertNotEqual(Inflector::slug('ÎÍ'), 'II'); Inflector::rules('transliteration', array('/Î|Í/' => 'I')); $this->assertEqual(Inflector::slug('ÎÍ'), 'II'); $this->assertEqual(Inflector::slug('ABc'), 'ABc'); Inflector::rules('transliteration', array('AB' => 'a')); Inflector::reset(); $this->assertEqual(Inflector::slug('ABc'), 'aac'); }
/** * Tests the storage mechanism for `$_underscored`, `$_camelized`, * `$_humanized` and `$_pluralized`. * * @return void */ public function testStorageMechanism() { Inflector::reset(); $expected = array('TestField' => 'test_field'); $this->assertFalse($this->getProtectedValue('$_underscored')); $this->assertEqual(Inflector::underscore('TestField'), 'test_field'); $this->assertEqual($expected, $this->getProtectedValue('$_underscored')); $this->assertEqual(Inflector::underscore('TestField'), 'test_field'); $expected = array('test_field' => 'TestField'); $this->assertFalse($this->getProtectedValue('$_camelized')); $this->assertEqual(Inflector::camelize('test_field', true), 'TestField'); $this->assertEqual($expected, $this->getProtectedValue('$_camelized')); $this->assertEqual(Inflector::camelize('test_field', true), 'TestField'); $expected = array('test_field:_' => 'Test Field'); $this->assertFalse($this->getProtectedValue('$_humanized')); $this->assertEqual(Inflector::humanize('test_field'), 'Test Field'); $this->assertEqual($expected, $this->getProtectedValue('$_humanized')); $this->assertEqual(Inflector::humanize('test_field'), 'Test Field'); $expected = array('field' => 'fields'); $this->assertFalse($this->getProtectedValue('$_pluralized')); $this->assertEqual(Inflector::pluralize('field'), 'fields'); $this->assertEqual($expected, $this->getProtectedValue('$_pluralized')); $this->assertEqual(Inflector::pluralize('field'), 'fields'); }
public function testAddingSingularizationRules() { $before = Inflector::rules('singular'); $result = Inflector::singularize('errata'); $this->assertNull(Inflector::rules('singular', array('/rata/' => '\\1ratus'))); $this->assertEqual(Inflector::singularize('errata'), $result); Inflector::reset(); $this->assertNotEqual(Inflector::singularize('errata'), $result); $after = Inflector::rules('singular'); $expected = array('rules', 'irregular', 'uninflected', 'regexUninflected', 'regexIrregular'); $this->assertEqual(array_keys($before), $expected); $this->assertEqual(array_keys($after), $expected); $result = array_diff($after['rules'], $before['rules']); $this->assertEqual($result, array('/rata/' => '\\1ratus')); foreach (array('irregular', 'uninflected', 'regexUninflected', 'regexIrregular') as $key) { $this->assertIdentical($before[$key], $after[$key]); } $this->assertNull(Inflector::rules('singular', array('rules' => array('/rata/' => '\\1ratus')))); $this->assertIdentical(Inflector::rules('singular'), $after); }