diff options
author | ArthurHoaro <arthur@hoa.ro> | 2018-02-26 22:53:00 +0100 |
---|---|---|
committer | ArthurHoaro <arthur@hoa.ro> | 2018-03-26 19:20:25 +0200 |
commit | 68c6afc56f3758154cfb96cba6fd48a6b5535590 (patch) | |
tree | babc499a94679e8897f70d3024d7b2c359f387e4 /tests | |
parent | ddd3c19f4336495bbc8927fd552db0c4d9fe6662 (diff) | |
download | Shaarli-68c6afc56f3758154cfb96cba6fd48a6b5535590.tar.gz Shaarli-68c6afc56f3758154cfb96cba6fd48a6b5535590.tar.zst Shaarli-68c6afc56f3758154cfb96cba6fd48a6b5535590.zip |
Load theme translations files automatically
Fixes #1077
Take a look at the docs update to see how it works
Diffstat (limited to 'tests')
-rw-r--r-- | tests/LanguagesTest.php | 26 | ||||
-rw-r--r-- | tests/languages/fr/LanguagesFrTest.php | 26 | ||||
-rw-r--r-- | tests/utils/customtpl/dummy/language/fr/LC_MESSAGES/dummy.mo | bin | 0 -> 431 bytes | |||
-rw-r--r-- | tests/utils/customtpl/dummy/language/fr/LC_MESSAGES/dummy.po | 16 |
4 files changed, 68 insertions, 0 deletions
diff --git a/tests/LanguagesTest.php b/tests/LanguagesTest.php index 864ce630..4951e09a 100644 --- a/tests/LanguagesTest.php +++ b/tests/LanguagesTest.php | |||
@@ -176,6 +176,32 @@ class LanguagesTest extends \PHPUnit_Framework_TestCase | |||
176 | } | 176 | } |
177 | 177 | ||
178 | /** | 178 | /** |
179 | * Test t() with an extension language file coming from the theme in gettext mode | ||
180 | */ | ||
181 | public function testTranslationThemeExtensionGettext() | ||
182 | { | ||
183 | $this->conf->set('translation.mode', 'gettext'); | ||
184 | $this->conf->set('raintpl_tpl', 'tests/utils/customtpl/'); | ||
185 | $this->conf->set('theme', 'dummy'); | ||
186 | new Languages('en', $this->conf); | ||
187 | $txt = 'rooster'; // ignore me poedit | ||
188 | $this->assertEquals('rooster', t($txt, $txt, 1, 'dummy')); | ||
189 | } | ||
190 | |||
191 | /** | ||
192 | * Test t() with an extension language file coming from the theme in PHP mode | ||
193 | */ | ||
194 | public function testTranslationThemeExtensionPhp() | ||
195 | { | ||
196 | $this->conf->set('translation.mode', 'php'); | ||
197 | $this->conf->set('raintpl_tpl', 'tests/utils/customtpl/'); | ||
198 | $this->conf->set('theme', 'dummy'); | ||
199 | new Languages('en', $this->conf); | ||
200 | $txt = 'rooster'; // ignore me poedit | ||
201 | $this->assertEquals('rooster', t($txt, $txt, 1, 'dummy')); | ||
202 | } | ||
203 | |||
204 | /** | ||
179 | * Test t() with an extension language file in gettext mode | 205 | * Test t() with an extension language file in gettext mode |
180 | */ | 206 | */ |
181 | public function testTranslationExtensionGettext() | 207 | public function testTranslationExtensionGettext() |
diff --git a/tests/languages/fr/LanguagesFrTest.php b/tests/languages/fr/LanguagesFrTest.php index 79d05172..0cf74891 100644 --- a/tests/languages/fr/LanguagesFrTest.php +++ b/tests/languages/fr/LanguagesFrTest.php | |||
@@ -172,4 +172,30 @@ class LanguagesFrTest extends \PHPUnit_Framework_TestCase | |||
172 | $this->assertEquals('voiture', t($txt, $txt, 1, 'test')); | 172 | $this->assertEquals('voiture', t($txt, $txt, 1, 'test')); |
173 | $this->assertEquals('Fouille', t('Search', 'Search', 1, 'test')); | 173 | $this->assertEquals('Fouille', t('Search', 'Search', 1, 'test')); |
174 | } | 174 | } |
175 | |||
176 | /** | ||
177 | * Test t() with an extension language file coming from the theme in gettext mode | ||
178 | */ | ||
179 | public function testTranslationThemeExtensionGettext() | ||
180 | { | ||
181 | $this->conf->set('translation.mode', 'gettext'); | ||
182 | $this->conf->set('raintpl_tpl', 'tests/utils/customtpl/'); | ||
183 | $this->conf->set('theme', 'dummy'); | ||
184 | new Languages('en', $this->conf); | ||
185 | $txt = 'rooster'; // ignore me poedit | ||
186 | $this->assertEquals('coq', t($txt, $txt, 1, 'dummy')); | ||
187 | } | ||
188 | |||
189 | /** | ||
190 | * Test t() with an extension language file coming from the theme in PHP mode | ||
191 | */ | ||
192 | public function testTranslationThemeExtensionPhp() | ||
193 | { | ||
194 | $this->conf->set('translation.mode', 'php'); | ||
195 | $this->conf->set('raintpl_tpl', 'tests/utils/customtpl/'); | ||
196 | $this->conf->set('theme', 'dummy'); | ||
197 | new Languages('en', $this->conf); | ||
198 | $txt = 'rooster'; // ignore me poedit | ||
199 | $this->assertEquals('coq', t($txt, $txt, 1, 'dummy')); | ||
200 | } | ||
175 | } | 201 | } |
diff --git a/tests/utils/customtpl/dummy/language/fr/LC_MESSAGES/dummy.mo b/tests/utils/customtpl/dummy/language/fr/LC_MESSAGES/dummy.mo new file mode 100644 index 00000000..8daae0c9 --- /dev/null +++ b/tests/utils/customtpl/dummy/language/fr/LC_MESSAGES/dummy.mo | |||
Binary files differ | |||
diff --git a/tests/utils/customtpl/dummy/language/fr/LC_MESSAGES/dummy.po b/tests/utils/customtpl/dummy/language/fr/LC_MESSAGES/dummy.po new file mode 100644 index 00000000..90d1abb0 --- /dev/null +++ b/tests/utils/customtpl/dummy/language/fr/LC_MESSAGES/dummy.po | |||
@@ -0,0 +1,16 @@ | |||
1 | msgid "" | ||
2 | msgstr "" | ||
3 | "Project-Id-Version: Theme extension test\n" | ||
4 | "POT-Creation-Date: 2017-05-20 13:54+0200\n" | ||
5 | "PO-Revision-Date: 2018-03-26 19:09+0200\n" | ||
6 | "Last-Translator: \n" | ||
7 | "Language-Team: Shaarli\n" | ||
8 | "Language: fr_FR\n" | ||
9 | "MIME-Version: 1.0\n" | ||
10 | "Content-Type: text/plain; charset=UTF-8\n" | ||
11 | "Content-Transfer-Encoding: 8bit\n" | ||
12 | "Plural-Forms: nplurals=2; plural=(n > 1);\n" | ||
13 | "X-Generator: Poedit 2.0.6\n" | ||
14 | |||
15 | msgid "rooster" | ||
16 | msgstr "coq" | ||