Added support for language LDAP attribute
This commit is contained in:
@@ -6,66 +6,6 @@ use Kanboard\Model\Config;
|
||||
|
||||
class ConfigTest extends Base
|
||||
{
|
||||
public function testGetTimezones()
|
||||
{
|
||||
$configModel = new Config($this->container);
|
||||
$this->assertNotEmpty($configModel->getTimezones());
|
||||
$this->assertArrayHasKey('Europe/Paris', $configModel->getTimezones());
|
||||
$this->assertContains('Europe/Paris', $configModel->getTimezones());
|
||||
$this->assertArrayNotHasKey('', $configModel->getTimezones());
|
||||
|
||||
$this->assertArrayHasKey('', $configModel->getTimezones(true));
|
||||
$this->assertContains('Application default', $configModel->getTimezones(true));
|
||||
}
|
||||
|
||||
public function testGetLanguages()
|
||||
{
|
||||
$configModel = new Config($this->container);
|
||||
$this->assertNotEmpty($configModel->getLanguages());
|
||||
$this->assertArrayHasKey('fr_FR', $configModel->getLanguages());
|
||||
$this->assertContains('Français', $configModel->getLanguages());
|
||||
$this->assertArrayNotHasKey('', $configModel->getLanguages());
|
||||
|
||||
$this->assertArrayHasKey('', $configModel->getLanguages(true));
|
||||
$this->assertContains('Application default', $configModel->getLanguages(true));
|
||||
}
|
||||
|
||||
public function testGetJsLanguage()
|
||||
{
|
||||
$configModel = new Config($this->container);
|
||||
$this->assertEquals('en', $configModel->getJsLanguageCode());
|
||||
|
||||
$this->container['sessionStorage']->user = array('language' => 'fr_FR');
|
||||
$this->assertEquals('fr', $configModel->getJsLanguageCode());
|
||||
|
||||
$this->container['sessionStorage']->user = array('language' => 'xx_XX');
|
||||
$this->assertEquals('en', $configModel->getJsLanguageCode());
|
||||
}
|
||||
|
||||
public function testGetCurrentLanguage()
|
||||
{
|
||||
$configModel = new Config($this->container);
|
||||
$this->assertEquals('en_US', $configModel->getCurrentLanguage());
|
||||
|
||||
$this->container['sessionStorage']->user = array('language' => 'fr_FR');
|
||||
$this->assertEquals('fr_FR', $configModel->getCurrentLanguage());
|
||||
|
||||
$this->container['sessionStorage']->user = array('language' => 'xx_XX');
|
||||
$this->assertEquals('xx_XX', $configModel->getCurrentLanguage());
|
||||
}
|
||||
|
||||
public function testGetCurrentTimezone()
|
||||
{
|
||||
$configModel = new Config($this->container);
|
||||
$this->assertEquals('UTC', $configModel->getCurrentTimezone());
|
||||
|
||||
$this->container['sessionStorage']->user = array('timezone' => 'Europe/Paris');
|
||||
$this->assertEquals('Europe/Paris', $configModel->getCurrentTimezone());
|
||||
|
||||
$this->container['sessionStorage']->user = array('timezone' => 'Something');
|
||||
$this->assertEquals('Something', $configModel->getCurrentTimezone());
|
||||
}
|
||||
|
||||
public function testRegenerateToken()
|
||||
{
|
||||
$configModel = new Config($this->container);
|
||||
|
||||
58
tests/units/Model/LanguageTest.php
Normal file
58
tests/units/Model/LanguageTest.php
Normal file
@@ -0,0 +1,58 @@
|
||||
<?php
|
||||
|
||||
use Kanboard\Model\Language;
|
||||
|
||||
require_once __DIR__.'/../Base.php';
|
||||
|
||||
class LanguageTest extends Base
|
||||
{
|
||||
public function testGetCodes()
|
||||
{
|
||||
$codes = Language::getCodes();
|
||||
$this->assertContains('fr_FR', $codes);
|
||||
$this->assertContains('en_US', $codes);
|
||||
}
|
||||
|
||||
public function testFindCode()
|
||||
{
|
||||
$this->assertSame('', Language::findCode('xx-XX'));
|
||||
$this->assertSame('fr_FR', Language::findCode('fr-FR'));
|
||||
$this->assertSame('en_US', Language::findCode('en-US'));
|
||||
}
|
||||
|
||||
public function testGetJsLanguage()
|
||||
{
|
||||
$languageModel = new Language($this->container);
|
||||
$this->assertEquals('en', $languageModel->getJsLanguageCode());
|
||||
|
||||
$this->container['sessionStorage']->user = array('language' => 'fr_FR');
|
||||
$this->assertEquals('fr', $languageModel->getJsLanguageCode());
|
||||
|
||||
$this->container['sessionStorage']->user = array('language' => 'xx_XX');
|
||||
$this->assertEquals('en', $languageModel->getJsLanguageCode());
|
||||
}
|
||||
|
||||
public function testGetCurrentLanguage()
|
||||
{
|
||||
$languageModel = new Language($this->container);
|
||||
$this->assertEquals('en_US', $languageModel->getCurrentLanguage());
|
||||
|
||||
$this->container['sessionStorage']->user = array('language' => 'fr_FR');
|
||||
$this->assertEquals('fr_FR', $languageModel->getCurrentLanguage());
|
||||
|
||||
$this->container['sessionStorage']->user = array('language' => 'xx_XX');
|
||||
$this->assertEquals('xx_XX', $languageModel->getCurrentLanguage());
|
||||
}
|
||||
|
||||
public function testGetLanguages()
|
||||
{
|
||||
$languageModel = new Language($this->container);
|
||||
$this->assertNotEmpty($languageModel->getLanguages());
|
||||
$this->assertArrayHasKey('fr_FR', $languageModel->getLanguages());
|
||||
$this->assertContains('Français', $languageModel->getLanguages());
|
||||
$this->assertArrayNotHasKey('', $languageModel->getLanguages());
|
||||
|
||||
$this->assertArrayHasKey('', $languageModel->getLanguages(true));
|
||||
$this->assertContains('Application default', $languageModel->getLanguages(true));
|
||||
}
|
||||
}
|
||||
@@ -15,10 +15,10 @@ class ProjectTest extends Base
|
||||
{
|
||||
public function testCreationForAllLanguages()
|
||||
{
|
||||
$c = new Config($this->container);
|
||||
$p = new Project($this->container);
|
||||
|
||||
foreach ($c->getLanguages() as $locale => $language) {
|
||||
foreach ($this->container['language']->getLanguages() as $locale => $language) {
|
||||
Translator::unload();
|
||||
Translator::load($locale);
|
||||
$this->assertNotFalse($p->create(array('name' => 'UnitTest '.$locale)), 'Unable to create project with '.$locale.':'.$language);
|
||||
}
|
||||
|
||||
32
tests/units/Model/TimezoneTest.php
Normal file
32
tests/units/Model/TimezoneTest.php
Normal file
@@ -0,0 +1,32 @@
|
||||
<?php
|
||||
|
||||
require_once __DIR__.'/../Base.php';
|
||||
|
||||
use Kanboard\Model\Timezone;
|
||||
|
||||
class TimezoneTest extends Base
|
||||
{
|
||||
public function testGetTimezones()
|
||||
{
|
||||
$timezoneModel = new Timezone($this->container);
|
||||
$this->assertNotEmpty($timezoneModel->getTimezones());
|
||||
$this->assertArrayHasKey('Europe/Paris', $timezoneModel->getTimezones());
|
||||
$this->assertContains('Europe/Paris', $timezoneModel->getTimezones());
|
||||
$this->assertArrayNotHasKey('', $timezoneModel->getTimezones());
|
||||
|
||||
$this->assertArrayHasKey('', $timezoneModel->getTimezones(true));
|
||||
$this->assertContains('Application default', $timezoneModel->getTimezones(true));
|
||||
}
|
||||
|
||||
public function testGetCurrentTimezone()
|
||||
{
|
||||
$timezoneModel = new Timezone($this->container);
|
||||
$this->assertEquals('UTC', $timezoneModel->getCurrentTimezone());
|
||||
|
||||
$this->container['sessionStorage']->user = array('timezone' => 'Europe/Paris');
|
||||
$this->assertEquals('Europe/Paris', $timezoneModel->getCurrentTimezone());
|
||||
|
||||
$this->container['sessionStorage']->user = array('timezone' => 'Something');
|
||||
$this->assertEquals('Something', $timezoneModel->getCurrentTimezone());
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user