Skip to content

Commit

Permalink
[IMP] tools: remove custom pofile reader
Browse files Browse the repository at this point in the history
Use polib library that handles this correctly
The complexity of the parser is moved to the library
  • Loading branch information
mart-e committed Jun 5, 2019
1 parent 3c568ae commit 632fa04
Show file tree
Hide file tree
Showing 10 changed files with 221 additions and 236 deletions.
1 change: 1 addition & 0 deletions debian/control
Expand Up @@ -30,6 +30,7 @@ Depends:
python3-mako,
python3-mock,
python3-passlib,
python3-polib,
python3-psutil,
python3-psycopg2,
python3-pydot,
Expand Down
17 changes: 14 additions & 3 deletions odoo/addons/test_translation_import/i18n/fr.po
Expand Up @@ -23,22 +23,33 @@ msgstr ""
msgid "1XBUO5PUYH2RYZSA1FTLRYS8SPCNU1UYXMEYMM25ASV7JC2KTJZQESZYRV9L8CGB"
msgstr "1XBUO5PUYH2RYZSA1FTLRYS8SPCNU1UYXMEYMM25ASV7JC2KTJZQESZYRV9L8CGB in french"

#. module: test_translation_import
#: selection:test.translation.import,import_type:0
msgid "Bar"
msgstr "Bar in french"

# Note: the line in pot is 21 and is 14 here
#. module: test_translation_import
#: code:addons/test_translation_import/models.py:14
#, python-format
msgid "Ijkl"
msgstr "Ijkl in french"

#. module: test_translation_import
#: model:ir.model,name:test_translation_import.model_test_translation_import
msgid "test.translation.import"
msgstr "test.translation.import in french"
#: selection:test.translation.import,import_type:0
msgid "Foo"
msgstr "Foo in french"

#. module: test_translation_import
#: model:ir.model.fields,help:test_translation_import.field_test_translation_import__name
msgid "Efgh"
msgstr "Efgh in french"

#. module: test_translation_import
#: model:ir.model,name:test_translation_import.model_test_translation_import
msgid "Test: Translation Import"
msgstr "Test: Import de traductions"

#. module: test_translation_import
#: model:ir.actions.act_window,name:test_translation_import.action_test_translation_import
#: model:ir.ui.menu,name:test_translation_import.menu_test_translation_import
Expand Down
4 changes: 2 additions & 2 deletions odoo/addons/test_translation_import/i18n/fr_BE.po
Expand Up @@ -21,8 +21,8 @@ msgstr "Ijkl in belgian french"

#. module: test_translation_import
#: model:ir.model,name:test_translation_import.model_test_translation_import
msgid "test.translation.import"
msgstr "test.translation.import in belgian french"
msgid "Test: Translation Import"
msgstr "Test: Import de traductions in belgian french"

#. module: test_translation_import
#: model:ir.model.fields,help:test_translation_import.field_test_translation_import__name
Expand Down
Expand Up @@ -23,39 +23,57 @@ msgstr ""
"Plural-Forms: \n"

#. module: test_translation_import
#: code:addons/test_translation_import/models.py:15
#: code:addons/test_translation_import/models.py:21
#: model:ir.model.fields,field_description:test_translation_import.field_test_translation_import__name
#, python-format
msgid "1XBUO5PUYH2RYZSA1FTLRYS8SPCNU1UYXMEYMM25ASV7JC2KTJZQESZYRV9L8CGB"
msgstr ""

#. module: test_translation_import
#: code:addons/test_translation_import/models.py:14
#, python-format
msgid "Ijkl"
#: selection:test.translation.import,import_type:0
msgid "Bar"
msgstr ""

#. module: test_translation_import
#: model:ir.model,name:test_translation_import.model_test_translation_import
msgid "test.translation.import"
#: model:ir.model.fields,help:test_translation_import.field_test_translation_import__name
msgid "Efgh"
msgstr ""

#. module: test_translation_import
#: model:ir.model.fields,help:test_translation_import.field_test_translation_import__name
msgid "Efgh"
#: selection:test.translation.import,import_type:0
msgid "Foo"
msgstr ""

#. module: test_translation_import
#: model:ir.actions.act_window,name:test_translation_import.action_test_translation_import
#: model:ir.ui.menu,name:test_translation_import.menu_test_translation_import
msgid "Test translation import"
#: code:addons/test_translation_import/models.py:18
#: code:addons/test_translation_import/models.py:21
#, python-format
msgid "Ijkl"
msgstr ""

#. module: test_translation_import
#: model:ir.model.fields,field_description:test_translation_import.field_test_translation_import__import_type
msgid "Import Type"
msgstr ""

#. module: test_translation_import
#: code:addons/test_translation_import/models.py:23
#: code:addons/test_translation_import/tests/test_term_count.py:158
#, python-format
msgid "Klingon"
msgstr ""

#. module: test_translation_import
#: model:ir.ui.menu,name:test_translation_import.menu_test_translation
msgid "Test translation"
msgstr ""

#. module: test_translation_import
#: model:ir.actions.act_window,name:test_translation_import.action_test_translation_import
#: model:ir.ui.menu,name:test_translation_import.menu_test_translation_import
msgid "Test translation import"
msgstr ""

#. module: test_translation_import
#: code:addons/base/models/arthur.py:42
#: code:addons/base/models/arthur.py:43
Expand All @@ -73,3 +91,9 @@ msgstr ""
#: code:addons/base/models/trillian.py:42
msgid "Test translation with two code type and model"
msgstr ""

#. module: test_translation_import
#: model:ir.model,name:test_translation_import.model_test_translation_import
msgid "Test: Translation Import"
msgstr ""

4 changes: 4 additions & 0 deletions odoo/addons/test_translation_import/models.py
Expand Up @@ -10,6 +10,10 @@ class m(models.TransientModel):
name = fields.Char('1XBUO5PUYH2RYZSA1FTLRYS8SPCNU1UYXMEYMM25ASV7JC2KTJZQESZYRV9L8CGB',
size=32, help='Efgh')
other_name = fields.Char('Test translation with two code type and model')
import_type = fields.Selection([
('foo', 'Foo'),
('bar', 'Bar'),
])

_('Ijkl')

Expand Down
28 changes: 25 additions & 3 deletions odoo/addons/test_translation_import/tests/test_term_count.py
Expand Up @@ -17,11 +17,32 @@ def test_count_term(self):
Just make sure we have as many translation entries as we wanted.
"""
odoo.tools.trans_load(self.cr, 'test_translation_import/i18n/fr.po', 'fr_FR', module_name='test_translation_import', verbose=False)
ids = self.env['ir.translation'].search([
translations = self.env['ir.translation'].search([
('lang', '=', 'fr_FR'),
('src', '=', '1XBUO5PUYH2RYZSA1FTLRYS8SPCNU1UYXMEYMM25ASV7JC2KTJZQESZYRV9L8CGB'),
])
self.assertEqual(len(ids), 2)
], order='type')
self.assertEqual(len(translations), 2)
self.assertEqual(translations[0].type, 'code')
self.assertEqual(translations[0].module, 'test_translation_import')
self.assertEqual(translations[0].name, 'addons/test_translation_import/models.py')
self.assertEqual(translations[0].comments, '')
self.assertEqual(translations[0].res_id, 21)
self.assertEqual(translations[1].type, 'model')
self.assertEqual(translations[1].module, 'test_translation_import')
self.assertEqual(translations[1].name, 'ir.model.fields,field_description')
self.assertEqual(translations[1].comments, '')
field = self.env['ir.model.fields'].search([('model', '=', 'test.translation.import'), ('name', '=', 'name')])
self.assertEqual(translations[1].res_id, field.id)

translations = self.env['ir.translation'].search([
('lang', '=', 'fr_FR'),
('type', '=', 'selection'),
('module', '=', 'test_translation_import'),
], order='src')
self.assertEqual(len(translations), 2)
self.assertEqual(translations[0].name, 'test.translation.import,import_type')
self.assertEqual(translations[0].res_id, 0)


def test_count_term_module(self):
"""
Expand All @@ -34,6 +55,7 @@ def test_count_term_module(self):
('module', '=', 'test_translation_import'),
])
self.assertEqual(len(translations), 1)
self.assertEqual(translations.res_id, 21)

def test_noupdate(self):
"""
Expand Down

0 comments on commit 632fa04

Please sign in to comment.