Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/matomo-org/matomo.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/LanguagesManager/Test/Integration/LanguagesManagerTest.php')
-rwxr-xr-xplugins/LanguagesManager/Test/Integration/LanguagesManagerTest.php26
1 files changed, 26 insertions, 0 deletions
diff --git a/plugins/LanguagesManager/Test/Integration/LanguagesManagerTest.php b/plugins/LanguagesManager/Test/Integration/LanguagesManagerTest.php
index 0ff66919ce..59124a79cd 100755
--- a/plugins/LanguagesManager/Test/Integration/LanguagesManagerTest.php
+++ b/plugins/LanguagesManager/Test/Integration/LanguagesManagerTest.php
@@ -156,6 +156,32 @@ class LanguagesManagerTest extends \PHPUnit_Framework_TestCase
}
/**
+ * check all english translations do not contain unescaped % symbols
+ *
+ * @group Plugins
+ * @group numbered2
+ */
+ function testTranslationsUseEscapedPercentSigns()
+ {
+ Cache::flushAll();
+ $translator = StaticContainer::get('Piwik\Translation\Translator');
+ $translator->reset();
+ Translate::loadAllTranslations();
+ $translations = $translator->getAllTranslations();
+ foreach ($translations AS $plugin => $pluginTranslations) {
+ if ($plugin == 'Intl') {
+ continue; // skip generated stuff
+ }
+ foreach ($pluginTranslations as $key => $pluginTranslation) {
+ $pluginTranslation = preg_replace('/(%(?:[1-9]\$)?[a-z])/', '', $pluginTranslation); // remove placeholders
+ $pluginTranslation = str_replace('%%', '', $pluginTranslation); // remove already escaped symbols
+ $this->assertEquals(0, substr_count($pluginTranslation, '%'),
+ sprintf('%s.%s must use escaped %% symbols', $plugin, $key));
+ }
+ }
+ }
+
+ /**
* test English short name for language
*
* @group Plugins