Ejemplo n.º 1
0
    def test_basic(self):
        minipo = r"""# Afrikaans translation of program ABC
#
msgid ""
msgstr ""
"Project-Id-Version: program 2.1-branch\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2006-01-09 07:15+0100\n"
"PO-Revision-Date: 2004-03-30 17:02+0200\n"
"Last-Translator: Zuza Software Foundation <*****@*****.**>\n"
"Language-Team: Afrikaans <*****@*****.**>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

# Please remember to do something
#: ../dir/file.xml.in.h:1 ../dir/file2.xml.in.h:4
msgid "Applications"
msgstr "Toepassings"
"""
        tmx = self.po2tmx(minipo)
        print("The generated xml:")
        print(tmx.serialize())
        assert tmx.translate("Applications") == "Toepassings"
        assert tmx.translate("bla") is None
        xmltext = tmx.serialize().decode('utf-8')
        assert xmltext.index('creationtool="Translate Toolkit - po2tmx"')
        assert xmltext.index('adminlang')
        assert xmltext.index('creationtoolversion')
        assert xmltext.index('datatype')
        assert xmltext.index('o-tmf')
        assert xmltext.index('segtype')
        assert xmltext.index('srclang')
Ejemplo n.º 2
0
 def test_sourcelanguage(self):
     minipo = 'msgid "String"\nmsgstr "String"\n'
     tmx = self.po2tmx(minipo, sourcelanguage="xh")
     print("The generated xml:")
     print(tmx.serialize())
     header = tmx.document.find("header")
     assert header.get("srclang") == "xh"
Ejemplo n.º 3
0
 def test_targetlanguage(self):
     minipo = 'msgid "String"\nmsgstr "String"\n'
     tmx = self.po2tmx(minipo, targetlanguage="xh")
     print("The generated xml:")
     print(tmx.serialize())
     tuv = tmx.document.findall(".//%s" % tmx.namespaced("tuv"))[1]
     #tag[0] will be the source, we want the target tuv
     assert tuv.get("{%s}lang" % XML_NS) == "xh"
Ejemplo n.º 4
0
    def test_nonascii(self):
        """Tests that non-ascii conversion works."""
        minipo = u'''msgid "Bézier curve"
msgstr "Bézier-kurwe"
'''
        tmx = self.po2tmx(minipo)
        print(tmx.serialize())
        assert tmx.translate(u"Bézier curve") == u"Bézier-kurwe"
Ejemplo n.º 5
0
    def test_exclusions(self):
        """Test that empty and fuzzy messages are excluded"""
        minipo = r'''#, fuzzy
msgid "One"
msgstr "Een"

msgid "Two"
msgstr ""

msgid ""
msgstr "Drie"
'''
        tmx = self.po2tmx(minipo)
        print("The generated xml:")
        print(tmx.serialize())
        assert b"<tu" not in tmx.serialize()
        assert len(tmx.units) == 0
Ejemplo n.º 6
0
    def test_escapedtabs(self):
        """Test the escaping of tabs"""
        minipo = r'''msgid "First column\tSecond column"
msgstr "Eerste kolom\tTweede kolom"
'''
        tmx = self.po2tmx(minipo)
        print("The generated xml:")
        print(tmx.serialize())
        assert tmx.translate("First column\tSecond column") == "Eerste kolom\tTweede kolom"
Ejemplo n.º 7
0
    def test_escapednewlines(self):
        """Test the escaping of newlines"""
        minipo = r'''msgid "First line\nSecond line"
msgstr "Eerste lyn\nTweede lyn"
'''
        tmx = self.po2tmx(minipo)
        print("The generated xml:")
        print(tmx.serialize())
        assert tmx.translate("First line\nSecond line") == "Eerste lyn\nTweede lyn"
Ejemplo n.º 8
0
    def test_multiline(self):
        """Test multiline po entry"""
        minipo = r'''msgid "First part "
"and extra"
msgstr "Eerste deel "
"en ekstra"'''
        tmx = self.po2tmx(minipo)
        print("The generated xml:")
        print(tmx.serialize())
        assert tmx.translate('First part and extra') == 'Eerste deel en ekstra'
Ejemplo n.º 9
0
    def test_typecomments(self):
        """Tests that others comments are imported."""
        minipo = u'''#, csharp-format
msgid "Bézier curve"
msgstr "Bézier-kurwe"
'''
        tmx = self.po2tmx(minipo, comment='type')
        print(tmx.serialize())
        unit = tmx.findunits(u"Bézier curve")
        assert unit[0].getnotes() == u"csharp-format"
Ejemplo n.º 10
0
    def test_sourcecomments(self):
        """Tests that source comments are imported."""
        minipo = u'''#: ../PuzzleFourSided.h:45
msgid "Bézier curve"
msgstr "Bézier-kurwe"
'''
        tmx = self.po2tmx(minipo, comment='source')
        print(tmx.serialize())
        unit = tmx.findunits(u"Bézier curve")
        assert unit[0].getnotes() == u"../PuzzleFourSided.h:45"
Ejemplo n.º 11
0
    def test_otherscomments(self):
        """Tests that others comments are imported."""
        minipo = u'''#My comment rules
msgid "Bézier curve"
msgstr "Bézier-kurwe"
'''
        tmx = self.po2tmx(minipo, comment='others')
        print(tmx.serialize())
        unit = tmx.findunits(u"Bézier curve")
        assert unit[0].getnotes() == u"My comment rules"
Ejemplo n.º 12
0
    def test_nonecomments(self):
        """Tests that none comments are imported."""
        minipo = u'''#My comment rules
msgid "Bézier curve"
msgstr "Bézier-kurwe"
'''
        tmx = self.po2tmx(minipo)
        print(tmx.serialize())
        unit = tmx.findunits(u"Bézier curve")
        assert len(unit[0].getnotes()) == 0
Ejemplo n.º 13
0
    def test_escapedquotes(self):
        """Test the escaping of quotes (and slash)"""
        minipo = r'''msgid "Hello \"Everyone\""
msgstr "Good day \"All\""

msgid "Use \\\"."
msgstr "Gebruik \\\"."
'''
        tmx = self.po2tmx(minipo)
        print("The generated xml:")
        print(tmx.serialize())
        assert tmx.translate('Hello "Everyone"') == 'Good day "All"'
        assert tmx.translate(r'Use \".') == r'Gebruik \".'