コード例 #1
0
    def test_extract_translate(self):
        src = '''<xml><div>Hi</div><p>

        Hello
        World</p></xml>'''
        expected = {
            False: '''<xml><div>TRANSLATED(Hi)</div><p>TRANSLATED(

        Hello
        World)</p></xml>''',
            True: '''<xml><div>TRANSLATED(Hi)</div><p>TRANSLATED(Hello
        World)</p></xml>'''
        }

        for strip_text in (False, True):
            # Build translation table
            messages = {}
            for _, _, msgid, _ in i18n.extract(BytesIO(src.encode('utf-8')), None, None, {
                'strip_text': strip_text
            }):
                messages[msgid] = 'TRANSLATED(%s)' % msgid

            # Provide a fake translation function
            default_gettext = i18n.gettext
            i18n.gettext = lambda s: messages[s]
            try:
                perform(src, expected[strip_text], strip_text=strip_text)
            finally:
                i18n.gettext = default_gettext
コード例 #2
0
ファイル: test_xml.py プロジェクト: CastixGitHub/kajiki
    def test_extract_translate(self):
        src = """<xml><div>Hi</div><p>

        Hello
        World</p></xml>"""
        expected = {
            False:
            """<xml><div>TRANSLATED(Hi)</div><p>\n\n        TRANSLATED(Hello
        World)</p></xml>""",
            True:
            """<xml><div>TRANSLATED(Hi)</div><p>TRANSLATED(Hello
        World)</p></xml>""",
        }

        for strip_text in (False, True):
            # Build translation table
            messages = {}
            for _, _, msgid, _ in i18n.extract(BytesIO(src.encode("utf-8")),
                                               None, None,
                                               {"strip_text": strip_text}):
                messages[msgid] = "TRANSLATED(%s)" % msgid

            # Provide a fake translation function
            default_gettext = i18n.gettext
            i18n.gettext = lambda s: messages[s]
            try:
                perform(src, expected[strip_text], strip_text=strip_text)
            finally:
                i18n.gettext = default_gettext
コード例 #3
0
ファイル: test_xml.py プロジェクト: nandoflorestan/kajiki
 def test_extract_python_inside_invalid(self):
     src = '''<xml><div>${_('hi' +)}</div></xml>'''
     try:
         x = list(i18n.extract(BytesIO(src.encode('utf-8')), [], None, {
             'extract_python': True
         }))
     except XMLTemplateCompileError as e:
         assert "_('hi' +)" in str(e)
     else:
         assert False, 'Should have raised'
コード例 #4
0
ファイル: test_xml.py プロジェクト: CastixGitHub/kajiki
 def test_extract_python_inside_invalid(self):
     src = """<xml><div>${_('hi' +)}</div></xml>"""
     try:
         list(
             i18n.extract(BytesIO(src.encode("utf-8")), [], None,
                          {"extract_python": True}))
     except XMLTemplateCompileError as e:
         assert "_('hi' +)" in str(e)
     else:
         assert False, "Should have raised"
コード例 #5
0
 def test_extract_python_inside_invalid(self):
     src = '''<xml><div>${_('hi' +)}</div></xml>'''
     try:
         x = list(
             i18n.extract(BytesIO(src.encode('utf-8')), [], None,
                          {'extract_python': True}))
     except XMLTemplateCompileError as e:
         assert "_('hi' +)" in str(e)
     else:
         assert False, 'Should have raised'
コード例 #6
0
ファイル: test_xml.py プロジェクト: CastixGitHub/kajiki
    def test_extract_python_inside(self):
        src = """<xml><div>${_('hi')}</div><p>

        Hello
        World</p></xml>"""
        expected = """<xml><div>xi</div><p>\n\n        TRANSLATED(Hello
        World)</p></xml>"""

        # Build translation table
        messages = {"hi": "xi"}
        for _, _, msgid, _ in i18n.extract(BytesIO(src.encode("utf-8")), [],
                                           None, {"extract_python": True}):
            messages[msgid] = "TRANSLATED(%s)" % msgid

        # Provide a fake translation function
        default_gettext = i18n.gettext
        i18n.gettext = lambda s: messages[s]
        try:
            perform(src, expected)
        finally:
            i18n.gettext = default_gettext
コード例 #7
0
    def test_extract_python_inside(self):
        src = '''<xml><div>${_('hi')}</div><p>

        Hello
        World</p></xml>'''
        expected = '''<xml><div>xi</div><p>\n\n        TRANSLATED(Hello
        World)</p></xml>'''

        # Build translation table
        messages = {'hi': 'xi'}
        for _, _, msgid, _ in i18n.extract(BytesIO(src.encode('utf-8')), [],
                                           None, {'extract_python': True}):
            messages[msgid] = 'TRANSLATED(%s)' % msgid

        # Provide a fake translation function
        default_gettext = i18n.gettext
        i18n.gettext = lambda s: messages[s]
        try:
            perform(src, expected)
        finally:
            i18n.gettext = default_gettext
コード例 #8
0
ファイル: test_xml.py プロジェクト: nandoflorestan/kajiki
    def test_extract_python_inside(self):
        src = '''<xml><div>${_('hi')}</div><p>

        Hello
        World</p></xml>'''
        expected = '''<xml><div>xi</div><p>\n\n        TRANSLATED(Hello
        World)</p></xml>'''

        # Build translation table
        messages = {'hi': 'xi'}
        for _, _, msgid, _ in i18n.extract(BytesIO(src.encode('utf-8')), [], None, {
            'extract_python': True
        }):
            messages[msgid] = 'TRANSLATED(%s)' % msgid

        # Provide a fake translation function
        default_gettext = i18n.gettext
        i18n.gettext = lambda s: messages[s]
        try:
            perform(src, expected)
        finally:
            i18n.gettext = default_gettext