def test_translator_with_interpolation(self): translations = self._makeTranslations() from translationstring import Translator from translationstring import dugettext_policy from translationstring import TranslationString translator = Translator(translations, dugettext_policy) tstring = TranslationString('Visit ${url}', mapping={'url': 'url'}) result = translator(tstring) self.assertEqual(result, 'Besuchen url')
def test_translator_dugettext_policy(self): translations = self._makeTranslations() from translationstring import Translator from translationstring import dugettext_policy from translationstring import TranslationString translator = Translator(translations, dugettext_policy) tstring = TranslationString( 'Enter a comma separated list of user names.') result = translator(tstring) self.assertEqual(result, 'Eine kommagetrennte Liste von Benutzernamen.')
def test_translator_with_interpolation_partially_overridden_in_translate(self): translations = self._makeTranslations() from translationstring import Translator from translationstring import dugettext_policy from translationstring import TranslationString translator = Translator(translations, dugettext_policy) # Partial initial mapping tstring = TranslationString('${one} ${two} ${three}', mapping={ 'one': 'yksi', 'two': 'kaksi'}) # Partial override result = translator(tstring, mapping={'two': 'kakkonen'}) self.assertEqual(result, 'yksi kakkonen ${three}') # Make sure original mapping is not touched self.assertEqual(tstring.mapping, {'one': 'yksi', 'two': 'kaksi'})