class TranslationsToolWrapperNaayaTest(NaayaTestCase): def setUp(self): # step 1: fix request patch, for Localizer try: # needed for some Localizer Patching: from thread import get_ident from Products.Localizer.patches import _requests _requests[get_ident()] = self.portal.REQUEST except: pass # step 2: add language in site and catalog self.portal.gl_add_site_language('de') try: # for old code, we also need to add language in trans. catalog self.portal.getPortalTranslations().add_language('de') except: pass # step 3: force negotiation to de, regardless of negotiator self.portal.REQUEST['EDW_SelectedLanguage'] = {('en', 'de'): 'de'} self.portal.REQUEST['TraversalRequestNameStack'] = ['de'] def test_translate(self): # add message and translation self.portal.getPortalTranslations().gettext('${count} dogs', 'en') try: self.portal.getPortalTranslations().message_edit( '${count} dogs', 'de', '${count} Hunde', '') except AttributeError: self.portal.getPortalTranslations().edit_message( '${count} dogs', 'de', '${count} Hunde') # and test! in_de = self.portal.getPortalTranslations().trans('${count} dogs', count='3') self.assertEqual(in_de, '3 Hunde') def test_template_translation(self): self.tmpl = PageTemplate(id='test_tmpl') self.tmpl.pt_edit( '<p i18n:translate="">Home for' ' <span i18n:name="hours">3</span> hours</p>', 'text/html') self.assertEqual( self.tmpl.__of__(self.portal)(), '<p>Home for <span>3</span> hours</p>') self.portal.getLocalizer().edit_message( 'Home for ${hours} hours', 'en', 'Home für ${hours} Stunden') self.assertEqual( self.tmpl.__of__(self.portal)(), '<p>Home für <span>${hours}</span> Stunden</p>')
class TranslationsToolWrapperNaayaTest(NaayaTestCase): def setUp(self): # step 1: fix request patch, for Localizer try: # needed for some Localizer Patching: from thread import get_ident from Products.Localizer.patches import _requests _requests[get_ident()] = self.portal.REQUEST except: pass # step 2: add language in site and catalog self.portal.gl_add_site_language('de') try: # for old code, we also need to add language in trans. catalog self.portal.getPortalTranslations().add_language('de') except: pass # step 3: force negotiation to de, regardless of negotiator self.portal.REQUEST['EDW_SelectedLanguage'] = {('en', 'de'): 'de'} self.portal.REQUEST['TraversalRequestNameStack'] = ['de'] def test_translate(self): # add message and translation self.portal.getPortalTranslations().gettext('${count} dogs', 'en') try: self.portal.getPortalTranslations().message_edit('${count} dogs', 'de', '${count} Hunde', '') except AttributeError: self.portal.getPortalTranslations().edit_message('${count} dogs', 'de', '${count} Hunde') # and test! in_de = self.portal.getPortalTranslations().trans('${count} dogs', count='3') self.assertEqual(in_de, '3 Hunde') def test_template_translation(self): self.tmpl = PageTemplate(id='test_tmpl') self.tmpl.pt_edit('<p i18n:translate="">Home for' ' <span i18n:name="hours">3</span> hours</p>', 'text/html') self.assertEqual(self.tmpl.__of__(self.portal)(), '<p>Home for <span>3</span> hours</p>') self.portal.getLocalizer().edit_message('Home for ${hours} hours', 'en', 'Home für ${hours} Stunden') self.assertEqual(self.tmpl.__of__(self.portal)(), '<p>Home für <span>${hours}</span> Stunden</p>')