Fix more tests
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
This commit is contained in:
parent
740659a04c
commit
83e7cfd13a
|
@ -24,6 +24,8 @@
|
||||||
namespace OCA\Files\Tests;
|
namespace OCA\Files\Tests;
|
||||||
|
|
||||||
use OCA\Files\Activity;
|
use OCA\Files\Activity;
|
||||||
|
use OCP\IL10N;
|
||||||
|
use OCP\L10N\IFactory;
|
||||||
use Test\TestCase;
|
use Test\TestCase;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -77,12 +79,8 @@ class ActivityTest extends TestCase {
|
||||||
$this->config
|
$this->config
|
||||||
);
|
);
|
||||||
|
|
||||||
$this->l10nFactory = $this->getMockBuilder('OCP\L10N\IFactory')
|
$this->l10nFactory = $this->createMock(IFactory::class);
|
||||||
->disableOriginalConstructor()
|
$deL10n = $this->createMock(IL10N::class);
|
||||||
->getMock();
|
|
||||||
$deL10n = $this->getMockBuilder('OC_L10N')
|
|
||||||
->disableOriginalConstructor()
|
|
||||||
->getMock();
|
|
||||||
$deL10n->expects($this->any())
|
$deL10n->expects($this->any())
|
||||||
->method('t')
|
->method('t')
|
||||||
->willReturnCallback(function ($argument) {
|
->willReturnCallback(function ($argument) {
|
||||||
|
@ -92,8 +90,8 @@ class ActivityTest extends TestCase {
|
||||||
$this->l10nFactory->expects($this->any())
|
$this->l10nFactory->expects($this->any())
|
||||||
->method('get')
|
->method('get')
|
||||||
->willReturnMap([
|
->willReturnMap([
|
||||||
['files', null, new \OC_L10N('files', 'en')],
|
['files', null, \OC::$server->getL10N('files', 'en')],
|
||||||
['files', 'en', new \OC_L10N('files', 'en')],
|
['files', 'en', \OC::$server->getL10N('files', 'en')],
|
||||||
['files', 'de', $deL10n],
|
['files', 'de', $deL10n],
|
||||||
]);
|
]);
|
||||||
|
|
||||||
|
|
|
@ -137,7 +137,7 @@ class ViewControllerTest extends TestCase {
|
||||||
'appname' => 'files',
|
'appname' => 'files',
|
||||||
'script' => 'list.php',
|
'script' => 'list.php',
|
||||||
'order' => 0,
|
'order' => 0,
|
||||||
'name' => (string)new \OC_L10N_String(new \OC_L10N('files'), 'All files', []),
|
'name' => \OC::$server->getL10N('files')->t('All files'),
|
||||||
'active' => false,
|
'active' => false,
|
||||||
'icon' => '',
|
'icon' => '',
|
||||||
],
|
],
|
||||||
|
@ -146,7 +146,7 @@ class ViewControllerTest extends TestCase {
|
||||||
'appname' => 'files',
|
'appname' => 'files',
|
||||||
'script' => 'recentlist.php',
|
'script' => 'recentlist.php',
|
||||||
'order' => 2,
|
'order' => 2,
|
||||||
'name' => (string)new \OC_L10N_String(new \OC_L10N('files'), 'Recent', []),
|
'name' => \OC::$server->getL10N('files')->t('Recent'),
|
||||||
'active' => false,
|
'active' => false,
|
||||||
'icon' => '',
|
'icon' => '',
|
||||||
],
|
],
|
||||||
|
@ -164,7 +164,7 @@ class ViewControllerTest extends TestCase {
|
||||||
'appname' => 'files_sharing',
|
'appname' => 'files_sharing',
|
||||||
'script' => 'list.php',
|
'script' => 'list.php',
|
||||||
'order' => 10,
|
'order' => 10,
|
||||||
'name' => (string)new \OC_L10N_String(new \OC_L10N('files_sharing'), 'Shared with you', []),
|
'name' => \OC::$server->getL10N('files_sharing')->t('Shared with you'),
|
||||||
'active' => false,
|
'active' => false,
|
||||||
'icon' => '',
|
'icon' => '',
|
||||||
],
|
],
|
||||||
|
@ -173,7 +173,7 @@ class ViewControllerTest extends TestCase {
|
||||||
'appname' => 'files_sharing',
|
'appname' => 'files_sharing',
|
||||||
'script' => 'list.php',
|
'script' => 'list.php',
|
||||||
'order' => 15,
|
'order' => 15,
|
||||||
'name' => (string)new \OC_L10N_String(new \OC_L10N('files_sharing'), 'Shared with others', []),
|
'name' => \OC::$server->getL10N('files_sharing')->t('Shared with others'),
|
||||||
'active' => false,
|
'active' => false,
|
||||||
'icon' => '',
|
'icon' => '',
|
||||||
],
|
],
|
||||||
|
@ -182,7 +182,7 @@ class ViewControllerTest extends TestCase {
|
||||||
'appname' => 'files_sharing',
|
'appname' => 'files_sharing',
|
||||||
'script' => 'list.php',
|
'script' => 'list.php',
|
||||||
'order' => 20,
|
'order' => 20,
|
||||||
'name' => (string)new \OC_L10N_String(new \OC_L10N('files_sharing'), 'Shared by link', []),
|
'name' => \OC::$server->getL10N('files_sharing')->t('Shared by link', []),
|
||||||
'active' => false,
|
'active' => false,
|
||||||
'icon' => '',
|
'icon' => '',
|
||||||
],
|
],
|
||||||
|
@ -191,7 +191,7 @@ class ViewControllerTest extends TestCase {
|
||||||
'appname' => 'systemtags',
|
'appname' => 'systemtags',
|
||||||
'script' => 'list.php',
|
'script' => 'list.php',
|
||||||
'order' => 25,
|
'order' => 25,
|
||||||
'name' => (string)new \OC_L10N_String(new \OC_L10N('systemtags'), 'Tags', []),
|
'name' => \OC::$server->getL10N('systemtags')->t('Tags'),
|
||||||
'active' => false,
|
'active' => false,
|
||||||
'icon' => '',
|
'icon' => '',
|
||||||
],
|
],
|
||||||
|
@ -200,7 +200,7 @@ class ViewControllerTest extends TestCase {
|
||||||
'appname' => 'files_trashbin',
|
'appname' => 'files_trashbin',
|
||||||
'script' => 'list.php',
|
'script' => 'list.php',
|
||||||
'order' => 50,
|
'order' => 50,
|
||||||
'name' => (string)new \OC_L10N_String(new \OC_L10N('files_trashbin'), 'Deleted files', []),
|
'name' => \OC::$server->getL10N('files_trashbin')->t('Deleted files'),
|
||||||
'active' => false,
|
'active' => false,
|
||||||
'icon' => '',
|
'icon' => '',
|
||||||
],
|
],
|
||||||
|
|
|
@ -27,7 +27,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
class OC_L10N_String implements JsonSerializable {
|
class OC_L10N_String implements JsonSerializable {
|
||||||
/** @var \OC_L10N|\OC\L10N\L10N */
|
/** @var \OC\L10N\L10N */
|
||||||
protected $l10n;
|
protected $l10n;
|
||||||
|
|
||||||
/** @var string */
|
/** @var string */
|
||||||
|
@ -40,12 +40,12 @@ class OC_L10N_String implements JsonSerializable {
|
||||||
protected $count;
|
protected $count;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param \OC_L10N|\OC\L10N\L10N $l10n
|
* @param \OC\L10N\L10N $l10n
|
||||||
* @param string|string[] $text
|
* @param string|string[] $text
|
||||||
* @param array $parameters
|
* @param array $parameters
|
||||||
* @param int $count
|
* @param int $count
|
||||||
*/
|
*/
|
||||||
public function __construct($l10n, $text, $parameters, $count = 1) {
|
public function __construct(\OC\L10N\L10N $l10n, $text, $parameters, $count = 1) {
|
||||||
$this->l10n = $l10n;
|
$this->l10n = $l10n;
|
||||||
$this->text = $text;
|
$this->text = $text;
|
||||||
$this->parameters = $parameters;
|
$this->parameters = $parameters;
|
||||||
|
|
|
@ -34,7 +34,7 @@ class DateTimeFormatterTest extends TestCase {
|
||||||
|
|
||||||
protected function setUp() {
|
protected function setUp() {
|
||||||
parent::setUp();
|
parent::setUp();
|
||||||
$this->formatter = new \OC\DateTimeFormatter(new \DateTimeZone('UTC'), new \OC_L10N('lib', 'en'));
|
$this->formatter = new \OC\DateTimeFormatter(new \DateTimeZone('UTC'), \OC::$server->getL10N('lib', 'en'));
|
||||||
}
|
}
|
||||||
|
|
||||||
protected function getTimestampAgo($time, $seconds = 0, $minutes = 0, $hours = 0, $days = 0, $years = 0) {
|
protected function getTimestampAgo($time, $seconds = 0, $minutes = 0, $hours = 0, $days = 0, $years = 0) {
|
||||||
|
@ -43,7 +43,7 @@ class DateTimeFormatterTest extends TestCase {
|
||||||
|
|
||||||
public function formatTimeSpanData() {
|
public function formatTimeSpanData() {
|
||||||
$time = 1416916800; // Use a fixed timestamp so we don't switch days/years with the getTimestampAgo
|
$time = 1416916800; // Use a fixed timestamp so we don't switch days/years with the getTimestampAgo
|
||||||
$deL10N = new \OC_L10N('lib', 'de');
|
$deL10N = \OC::$server->getL10N('lib', 'de');
|
||||||
return array(
|
return array(
|
||||||
array('seconds ago', $time, $time),
|
array('seconds ago', $time, $time),
|
||||||
array('1 minute ago', $this->getTimestampAgo($time, 30, 1), $time),
|
array('1 minute ago', $this->getTimestampAgo($time, 30, 1), $time),
|
||||||
|
@ -81,7 +81,7 @@ class DateTimeFormatterTest extends TestCase {
|
||||||
|
|
||||||
public function formatDateSpanData() {
|
public function formatDateSpanData() {
|
||||||
$time = 1416916800; // Use a fixed timestamp so we don't switch days/years with the getTimestampAgo
|
$time = 1416916800; // Use a fixed timestamp so we don't switch days/years with the getTimestampAgo
|
||||||
$deL10N = new \OC_L10N('lib', 'de');
|
$deL10N = \OC::$server->getL10N('lib', 'de');
|
||||||
return array(
|
return array(
|
||||||
// Normal testing
|
// Normal testing
|
||||||
array('today', $this->getTimestampAgo($time, 30, 15), $time),
|
array('today', $this->getTimestampAgo($time, 30, 15), $time),
|
||||||
|
|
|
@ -1,139 +0,0 @@
|
||||||
<?php
|
|
||||||
/**
|
|
||||||
* Copyright (c) 2013 Thomas Müller <thomas.mueller@tmit.eu>
|
|
||||||
* This file is licensed under the Affero General Public License version 3 or
|
|
||||||
* later.
|
|
||||||
* See the COPYING-README file.
|
|
||||||
*/
|
|
||||||
|
|
||||||
namespace Test\L10N;
|
|
||||||
|
|
||||||
|
|
||||||
use OC_L10N;
|
|
||||||
use DateTime;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Class Test_L10n
|
|
||||||
*/
|
|
||||||
class L10nLegacyTest extends \Test\TestCase {
|
|
||||||
|
|
||||||
public function testGermanPluralTranslations() {
|
|
||||||
$l = new OC_L10N('test');
|
|
||||||
$transFile = \OC::$SERVERROOT.'/tests/data/l10n/de.json';
|
|
||||||
|
|
||||||
$l->load($transFile);
|
|
||||||
$this->assertEquals('1 Datei', (string)$l->n('%n file', '%n files', 1));
|
|
||||||
$this->assertEquals('2 Dateien', (string)$l->n('%n file', '%n files', 2));
|
|
||||||
}
|
|
||||||
|
|
||||||
public function testRussianPluralTranslations() {
|
|
||||||
$l = new OC_L10N('test');
|
|
||||||
$transFile = \OC::$SERVERROOT.'/tests/data/l10n/ru.json';
|
|
||||||
|
|
||||||
$l->load($transFile);
|
|
||||||
$this->assertEquals('1 файл', (string)$l->n('%n file', '%n files', 1));
|
|
||||||
$this->assertEquals('2 файла', (string)$l->n('%n file', '%n files', 2));
|
|
||||||
$this->assertEquals('6 файлов', (string)$l->n('%n file', '%n files', 6));
|
|
||||||
$this->assertEquals('21 файл', (string)$l->n('%n file', '%n files', 21));
|
|
||||||
$this->assertEquals('22 файла', (string)$l->n('%n file', '%n files', 22));
|
|
||||||
$this->assertEquals('26 файлов', (string)$l->n('%n file', '%n files', 26));
|
|
||||||
|
|
||||||
/*
|
|
||||||
1 file 1 файл 1 папка
|
|
||||||
2-4 files 2-4 файла 2-4 папки
|
|
||||||
5-20 files 5-20 файлов 5-20 папок
|
|
||||||
21 files 21 файл 21 папка
|
|
||||||
22-24 files 22-24 файла 22-24 папки
|
|
||||||
25-30 files 25-30 файлов 25-30 папок
|
|
||||||
etc
|
|
||||||
100 files 100 файлов, 100 папок
|
|
||||||
1000 files 1000 файлов 1000 папок
|
|
||||||
*/
|
|
||||||
}
|
|
||||||
|
|
||||||
public function testCzechPluralTranslations() {
|
|
||||||
$l = new OC_L10N('test');
|
|
||||||
$transFile = \OC::$SERVERROOT.'/tests/data/l10n/cs.json';
|
|
||||||
|
|
||||||
$l->load($transFile);
|
|
||||||
$this->assertEquals('1 okno', (string)$l->n('%n window', '%n windows', 1));
|
|
||||||
$this->assertEquals('2 okna', (string)$l->n('%n window', '%n windows', 2));
|
|
||||||
$this->assertEquals('5 oken', (string)$l->n('%n window', '%n windows', 5));
|
|
||||||
}
|
|
||||||
|
|
||||||
public function localizationDataProvider() {
|
|
||||||
return array(
|
|
||||||
// timestamp as string
|
|
||||||
array('February 13, 2009 at 11:31:30 PM GMT+0', 'en', 'datetime', '1234567890'),
|
|
||||||
array('13. Februar 2009 um 23:31:30 GMT+0', 'de', 'datetime', '1234567890'),
|
|
||||||
array('February 13, 2009', 'en', 'date', '1234567890'),
|
|
||||||
array('13. Februar 2009', 'de', 'date', '1234567890'),
|
|
||||||
array('11:31:30 PM GMT+0', 'en', 'time', '1234567890'),
|
|
||||||
array('23:31:30 GMT+0', 'de', 'time', '1234567890'),
|
|
||||||
|
|
||||||
// timestamp as int
|
|
||||||
array('February 13, 2009 at 11:31:30 PM GMT+0', 'en', 'datetime', 1234567890),
|
|
||||||
array('13. Februar 2009 um 23:31:30 GMT+0', 'de', 'datetime', 1234567890),
|
|
||||||
array('February 13, 2009', 'en', 'date', 1234567890),
|
|
||||||
array('13. Februar 2009', 'de', 'date', 1234567890),
|
|
||||||
array('11:31:30 PM GMT+0', 'en', 'time', 1234567890),
|
|
||||||
array('23:31:30 GMT+0', 'de', 'time', 1234567890),
|
|
||||||
|
|
||||||
// DateTime object
|
|
||||||
array('February 13, 2009 at 11:31:30 PM GMT+0', 'en', 'datetime', new DateTime('@1234567890')),
|
|
||||||
array('13. Februar 2009 um 23:31:30 GMT+0', 'de', 'datetime', new DateTime('@1234567890')),
|
|
||||||
array('February 13, 2009', 'en', 'date', new DateTime('@1234567890')),
|
|
||||||
array('13. Februar 2009', 'de', 'date', new DateTime('@1234567890')),
|
|
||||||
array('11:31:30 PM GMT+0', 'en', 'time', new DateTime('@1234567890')),
|
|
||||||
array('23:31:30 GMT+0', 'de', 'time', new DateTime('@1234567890')),
|
|
||||||
|
|
||||||
// en_GB
|
|
||||||
array('13 February 2009 at 23:31:30 GMT+0', 'en_GB', 'datetime', new DateTime('@1234567890')),
|
|
||||||
array('13 February 2009', 'en_GB', 'date', new DateTime('@1234567890')),
|
|
||||||
array('23:31:30 GMT+0', 'en_GB', 'time', new DateTime('@1234567890')),
|
|
||||||
array('13 February 2009 at 23:31:30 GMT+0', 'en-GB', 'datetime', new DateTime('@1234567890')),
|
|
||||||
array('13 February 2009', 'en-GB', 'date', new DateTime('@1234567890')),
|
|
||||||
array('23:31:30 GMT+0', 'en-GB', 'time', new DateTime('@1234567890')),
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @dataProvider localizationDataProvider
|
|
||||||
*/
|
|
||||||
public function testNumericStringLocalization($expectedDate, $lang, $type, $value) {
|
|
||||||
$l = new OC_L10N('test', $lang);
|
|
||||||
$this->assertSame($expectedDate, $l->l($type, $value));
|
|
||||||
}
|
|
||||||
|
|
||||||
public function firstDayDataProvider() {
|
|
||||||
return array(
|
|
||||||
array(1, 'de'),
|
|
||||||
array(0, 'en'),
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @dataProvider firstDayDataProvider
|
|
||||||
* @param $expected
|
|
||||||
* @param $lang
|
|
||||||
*/
|
|
||||||
public function testFirstWeekDay($expected, $lang) {
|
|
||||||
$l = new OC_L10N('test', $lang);
|
|
||||||
$this->assertSame($expected, $l->l('firstday', 'firstday'));
|
|
||||||
}
|
|
||||||
|
|
||||||
public function testFactoryGetLanguageCode() {
|
|
||||||
$factory = new \OC\L10N\Factory(
|
|
||||||
$this->getMockBuilder('OCP\IConfig')->getMock(),
|
|
||||||
$this->getMockBuilder('OCP\IRequest')->getMock(),
|
|
||||||
$this->getMockBuilder('OCP\IUserSession')->getMock(),
|
|
||||||
\OC::$SERVERROOT);
|
|
||||||
$l = $factory->get('lib', 'de');
|
|
||||||
$this->assertEquals('de', $l->getLanguageCode());
|
|
||||||
}
|
|
||||||
|
|
||||||
public function testServiceGetLanguageCode() {
|
|
||||||
$l = \OC::$server->getL10N('lib', 'de');
|
|
||||||
$this->assertEquals('de', $l->getLanguageCode());
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -91,7 +91,7 @@ class UtilTest extends \Test\TestCase {
|
||||||
|
|
||||||
$selectedTimeZone = \OC::$server->getDateTimeZone()->getTimeZone(1350129205);
|
$selectedTimeZone = \OC::$server->getDateTimeZone()->getTimeZone(1350129205);
|
||||||
$this->assertEquals($expectedTimeZone, $selectedTimeZone->getName());
|
$this->assertEquals($expectedTimeZone, $selectedTimeZone->getName());
|
||||||
$newDateTimeFormatter = new \OC\DateTimeFormatter($selectedTimeZone, new \OC_L10N('lib', 'en'));
|
$newDateTimeFormatter = new \OC\DateTimeFormatter($selectedTimeZone, \OC::$server->getL10N('lib', 'en'));
|
||||||
$this->overwriteService('DateTimeFormatter', $newDateTimeFormatter);
|
$this->overwriteService('DateTimeFormatter', $newDateTimeFormatter);
|
||||||
|
|
||||||
$result = OC_Util::formatDate(1350129205, false);
|
$result = OC_Util::formatDate(1350129205, false);
|
||||||
|
|
Loading…
Reference in New Issue