public function testGetModuleLabelByTypeAndLanguage() { $this->assertEquals('en', Yii::app()->languageHelper->getForCurrentUser()); $this->assertEquals('Tes', TestModule::getModuleLabelByTypeAndLanguage('Singular')); $this->assertEquals('Test', TestModule::getModuleLabelByTypeAndLanguage('Plural')); $this->assertEquals('tes', TestModule::getModuleLabelByTypeAndLanguage('SingularLowerCase')); $this->assertEquals('test', TestModule::getModuleLabelByTypeAndLanguage('PluralLowerCase')); $metadata = TestModule::getMetadata(); $metadata['global']['singularModuleLabels'] = array('en' => 'company', 'de' => 'gesellschaft'); $metadata['global']['pluralModuleLabels'] = array('en' => 'companies', 'de' => 'gesellschaften'); TestModule::setMetadata($metadata); $this->assertEquals('Company', TestModule::getModuleLabelByTypeAndLanguage('Singular')); $this->assertEquals('Companies', TestModule::getModuleLabelByTypeAndLanguage('Plural')); $this->assertEquals('company', TestModule::getModuleLabelByTypeAndLanguage('SingularLowerCase')); $this->assertEquals('companies', TestModule::getModuleLabelByTypeAndLanguage('PluralLowerCase')); Yii::app()->language = 'de'; $this->assertEquals('Gesellschaft', TestModule::getModuleLabelByTypeAndLanguage('Singular')); $this->assertEquals('Gesellschaften', TestModule::getModuleLabelByTypeAndLanguage('Plural')); $this->assertEquals('gesellschaft', TestModule::getModuleLabelByTypeAndLanguage('SingularLowerCase')); $this->assertEquals('gesellschaften', TestModule::getModuleLabelByTypeAndLanguage('PluralLowerCase')); Yii::app()->language = 'en'; //Demonstrate getSingularModuleLabel and getPluralModuleLabel and how if they are not overriden, they //will not necessarily produce desired results. $this->assertEquals('Zurmo', ZurmoModule::getModuleLabelByTypeAndLanguage('Singular')); $this->assertEquals('Zurmo', ZurmoModule::getModuleLabelByTypeAndLanguage('Plural')); }