Ejemplo n.º 1
0
    def testTransWithFallbackLocaleFile(self):
        for format, loader in self.getTransFileTests():
            loader_class = getattr(loaders, loader)
            translator = Translator('en_GB')
            translator.add_loader(format, loader_class())
            translator.add_resource(
                format,
                __DIR__ +
                '/fixtures/non-existing',
                'en_GB')
            translator.add_resource(
                format,
                __DIR__ +
                '/fixtures/resources.' +
                format,
                'en',
                'resources')

            self.assertRaises(
                loaders.NotFoundResourceException,
                self.assertEquals(
                    'bar',
                    translator.trans(
                        'foo',
                        {},
                        'resources')))
Ejemplo n.º 2
0
    def testtranschoiceValidLocale(self):
        for locale, in self.getValidLocalesTests():
            translator = Translator('en')
            translator.add_loader('dict', loaders.DictLoader())
            translator.add_resource('dict', {'foo': 'foofoo'}, 'en')

            translator.transchoice('foo', 1, {}, '', locale)
Ejemplo n.º 3
0
    def testFlattenedTrans(self):
        for expected, messages, id in self.getFlattenedTransTests():
            translator = Translator('en')
            translator.add_loader('dict', loaders.DictLoader())
            translator.add_resource('dict', messages, 'fr', '')

            self.assertEquals(expected, translator.trans(id, {}, '', 'fr'))
Ejemplo n.º 4
0
    def testtranschoiceValidLocale(self):
        for locale, in self.getValidLocalesTests():
            translator = Translator('en')
            translator.add_loader('dict', loaders.DictLoader())
            translator.add_resource('dict', {'foo': 'foofoo'}, 'en')

            translator.transchoice('foo', 1, {}, '', locale)
Ejemplo n.º 5
0
    def testFlattenedTrans(self):
        for expected, messages, id in self. getFlattenedTransTests():
            translator = Translator('en')
            translator.add_loader('dict', loaders.DictLoader())
            translator.add_resource('dict', messages, 'fr', '')

            self.assertEquals(expected, translator.trans(id, {}, '', 'fr'))
Ejemplo n.º 6
0
    def testTransInvalidLocale(self):
        for locale, in self.getInvalidLocalesTests():
            translator = Translator('en')
            translator.add_loader('dict', loaders.DictLoader())
            translator.add_resource('dict', {'foo': 'foofoo'}, 'en')

            self.assertRaises(ValueError,
                              lambda: translator.trans('foo', {}, '', locale))
Ejemplo n.º 7
0
    def testTransWithFallbackLocale(self):
        translator = Translator('fr_FR')
        translator.add_loader('dict', loaders.DictLoader())
        translator.add_resource('dict', {'foo': 'foofoo'}, 'en_US')
        translator.add_resource('dict', {'bar': 'foobar'}, 'en')

        translator.set_fallback_locales(['en'])

        self.assertEquals('foobar', translator.trans('bar'))
Ejemplo n.º 8
0
    def testTransWithFallbackLocale(self):
        translator = Translator('fr_FR')
        translator.add_loader('dict', loaders.DictLoader())
        translator.add_resource('dict', {'foo': 'foofoo'}, 'en_US')
        translator.add_resource('dict', {'bar': 'foobar'}, 'en')

        translator.set_fallback_locales(['en'])

        self.assertEquals('foobar', translator.trans('bar'))
Ejemplo n.º 9
0
    def testTrans(self):
        for expected, id, translation, parameters, locale, domain in self.getTransTests(
        ):
            translator = Translator('en')
            translator.add_loader('dict', loaders.DictLoader())
            translator.add_resource('dict', {str(id): translation}, locale,
                                    domain)

            self.assertEquals(expected,
                              translator.trans(id, parameters, domain, locale))
Ejemplo n.º 10
0
    def testset_fallback_localesMultiple(self):
        translator = Translator('en')
        translator.add_loader('dict', loaders.DictLoader())
        translator.add_resource('dict', {'foo': 'foo (en)'}, 'en')
        translator.add_resource('dict', {'bar': 'bar (fr)'}, 'fr')

        # force catalogue loading
        translator.trans('bar')

        translator.set_fallback_locales(['fr_FR', 'fr'])
        self.assertEquals('bar (fr)', translator.trans('bar'))
Ejemplo n.º 11
0
    def testadd_resourceAfterTrans(self):
        translator = Translator('fr')
        translator.add_loader('dict', loaders.DictLoader())

        translator.set_fallback_locales(['en'])

        translator.add_resource('dict', {'foo': 'foofoo'}, 'en')
        self.assertEquals('foofoo', translator.trans('foo'))

        translator.add_resource('dict', {'bar': 'foobar'}, 'en')
        self.assertEquals('foobar', translator.trans('bar'))
Ejemplo n.º 12
0
    def testtranschoiceFallbackBis(self):
        translator = Translator('ru')
        translator.set_fallback_locales(['en_US', 'en'])
        translator.add_loader('dict', loaders.DictLoader())
        translator.add_resource('dict',
                                {'some_message2': 'one thing|{count} things'},
                                'en_US')

        self.assertEquals(
            '10 things',
            translator.transchoice('some_message2', 10, {'count': 10}))
Ejemplo n.º 13
0
    def testadd_resourceAfterTrans(self):
        translator = Translator('fr')
        translator.add_loader('dict', loaders.DictLoader())

        translator.set_fallback_locales(['en'])

        translator.add_resource('dict', {'foo': 'foofoo'}, 'en')
        self.assertEquals('foofoo', translator.trans('foo'))

        translator.add_resource('dict', {'bar': 'foobar'}, 'en')
        self.assertEquals('foobar', translator.trans('bar'))
Ejemplo n.º 14
0
    def testset_fallback_localesMultiple(self):
        translator = Translator('en')
        translator.add_loader('dict', loaders.DictLoader())
        translator.add_resource('dict', {'foo': 'foo (en)'}, 'en')
        translator.add_resource('dict', {'bar': 'bar (fr)'}, 'fr')

        # force catalogue loading
        translator.trans('bar')

        translator.set_fallback_locales(['fr_FR', 'fr'])
        self.assertEquals('bar (fr)', translator.trans('bar'))
Ejemplo n.º 15
0
    def testtranschoiceFallbackBis(self):
        translator = Translator('ru')
        translator.set_fallback_locales(['en_US', 'en'])
        translator.add_loader('dict', loaders.DictLoader())
        translator.add_resource(
            'dict', {
                'some_message2': 'one thing|{count} things'}, 'en_US')

        self.assertEquals(
            '10 things', translator.transchoice(
                'some_message2', 10, {
                    'count': 10}))
Ejemplo n.º 16
0
    def testTransInvalidLocale(self):
        for locale, in self.getInvalidLocalesTests():
            translator = Translator('en')
            translator.add_loader('dict', loaders.DictLoader())
            translator.add_resource('dict', {'foo': 'foofoo'}, 'en')

            self.assertRaises(
                ValueError,
                lambda: translator.trans(
                    'foo',
                    {},
                    '',
                    locale))
Ejemplo n.º 17
0
    def testTransWithoutFallbackLocaleFile(self):
        for format, loader in self.getTransFileTests():
            loader_class = getattr(loaders, loader)
            translator = Translator('en')
            translator.add_loader(format, loader_class())
            translator.add_resource(format, __DIR__ + '/fixtures/non-existing',
                                    'en')
            translator.add_resource(format,
                                    __DIR__ + '/fixtures/resources.' + format,
                                    'en')

            # force catalogue loading
            self.assertRaises(loaders.NotFoundResourceException,
                              lambda: translator.trans('foo'))
Ejemplo n.º 18
0
    def testTransWithFallbackLocaleFile(self):
        for format, loader in self.getTransFileTests():
            loader_class = getattr(loaders, loader)
            translator = Translator('en_GB')
            translator.add_loader(format, loader_class())
            translator.add_resource(format, __DIR__ + '/fixtures/non-existing',
                                    'en_GB')
            translator.add_resource(format,
                                    __DIR__ + '/fixtures/resources.' + format,
                                    'en', 'resources')

            self.assertRaises(
                loaders.NotFoundResourceException,
                self.assertEquals('bar',
                                  translator.trans('foo', {}, 'resources')))
Ejemplo n.º 19
0
    def testGetMessages(self):
        for resources, locale, expected in self.dataProviderGetMessages():
            locales = list(resources.keys())
            _locale = locale if locale is not None else locales[0]
            locales = locales[0:locales.index(_locale, )]

            translator = Translator(_locale)
            translator.set_fallback_locales(locales[::-1])
            translator.add_loader('dict', loaders.DictLoader())
            for _locale, domainMessages in list(resources.items()):
                for domain, messages in list(domainMessages.items()):
                    translator.add_resource('dict', messages, _locale, domain)

            result = translator.get_messages(locale)

            self.assertEquals(expected, result)
Ejemplo n.º 20
0
    def testGetMessages(self):
        for resources, locale, expected in self.dataProviderGetMessages():
            locales = list(resources.keys())
            _locale = locale if locale is not None else locales[0]
            locales = locales[0:locales.index(_locale,)]

            translator = Translator(_locale)
            translator.set_fallback_locales(locales[::-1])
            translator.add_loader('dict', loaders.DictLoader())
            for _locale, domainMessages in list(resources.items()):
                for domain, messages in list(domainMessages.items()):
                    translator.add_resource('dict', messages, _locale, domain)

            result = translator.get_messages(locale)

            self.assertEquals(expected, result)
Ejemplo n.º 21
0
 def testadd_resourceInvalidLocales(self):
     for locale, in self.getInvalidLocalesTests():
         translator = Translator('fr')
         self.assertRaises(
             ValueError, lambda: translator.add_resource(
                 'dict', {
                     'foo': 'foofoo'}, locale))
Ejemplo n.º 22
0
    def testTrans(self):
        for expected, id, translation, parameters, locale, domain in self.getTransTests(
        ):
            translator = Translator('en')
            translator.add_loader('dict', loaders.DictLoader())
            translator.add_resource(
                'dict', {
                    str(id): translation}, locale, domain)

            self.assertEquals(
                expected,
                translator.trans(
                    id,
                    parameters,
                    domain,
                    locale))
Ejemplo n.º 23
0
    def testTransWithoutFallbackLocaleFile(self):
        for format, loader in self.getTransFileTests():
            loader_class = getattr(loaders, loader)
            translator = Translator('en')
            translator.add_loader(format, loader_class())
            translator.add_resource(
                format,
                __DIR__ +
                '/fixtures/non-existing',
                'en')
            translator.add_resource(
                format,
                __DIR__ +
                '/fixtures/resources.' +
                format,
                'en')

            # force catalogue loading
            self.assertRaises(
                loaders.NotFoundResourceException,
                lambda: translator.trans('foo'))
Ejemplo n.º 24
0
    def testWhenAResourceHasNoRegisteredLoader(self):
        translator = Translator('en')
        translator.add_resource('dict', {'foo': 'foofoo'}, 'en')

        self.assertRaises(RuntimeError, lambda: translator.trans('foo'))
Ejemplo n.º 25
0
 def testadd_resourceValidLocales(self):
     for locale, in self.getValidLocalesTests():
         translator = Translator('fr')
         translator.add_resource('dict', {'foo': 'foofoo'}, locale)
Ejemplo n.º 26
0
    def testWhenAResourceHasNoRegisteredLoader(self):
        translator = Translator('en')
        translator.add_resource('dict', {'foo': 'foofoo'}, 'en')

        self.assertRaises(RuntimeError, lambda: translator.trans('foo'))
Ejemplo n.º 27
0
 def testadd_resourceInvalidLocales(self):
     for locale, in self.getInvalidLocalesTests():
         translator = Translator('fr')
         self.assertRaises(
             ValueError, lambda: translator.add_resource(
                 'dict', {'foo': 'foofoo'}, locale))
Ejemplo n.º 28
0
 def testadd_resourceValidLocales(self):
     for locale, in self.getValidLocalesTests():
         translator = Translator('fr')
         translator.add_resource('dict', {'foo': 'foofoo'}, locale)