56 lines
1.7 KiB
Python
56 lines
1.7 KiB
Python
# coding=utf-8
|
|
"""Safe Translations Test.
|
|
|
|
.. note:: This program is free software; you can redistribute it and/or modify
|
|
it under the terms of the GNU General Public License as published by
|
|
the Free Software Foundation; either version 2 of the License, or
|
|
(at your option) any later version.
|
|
|
|
"""
|
|
from .utilities import get_qgis_app
|
|
|
|
__author__ = 'ismailsunni@yahoo.co.id'
|
|
__date__ = '12/10/2011'
|
|
__copyright__ = ('Copyright 2012, Australia Indonesia Facility for '
|
|
'Disaster Reduction')
|
|
import unittest
|
|
import os
|
|
|
|
from qgis.PyQt.QtCore import QCoreApplication, QTranslator
|
|
|
|
QGIS_APP = get_qgis_app()
|
|
|
|
|
|
class SafeTranslationsTest(unittest.TestCase):
|
|
"""Test translations work."""
|
|
|
|
def setUp(self):
|
|
"""Runs before each test."""
|
|
if 'LANG' in iter(os.environ.keys()):
|
|
os.environ.__delitem__('LANG')
|
|
|
|
def tearDown(self):
|
|
"""Runs after each test."""
|
|
if 'LANG' in iter(os.environ.keys()):
|
|
os.environ.__delitem__('LANG')
|
|
|
|
def test_qgis_translations(self):
|
|
"""Test that translations work."""
|
|
parent_path = os.path.join(__file__, os.path.pardir, os.path.pardir)
|
|
dir_path = os.path.abspath(parent_path)
|
|
file_path = os.path.join(
|
|
dir_path, 'i18n', 'fr.qm')
|
|
translator = QTranslator()
|
|
translator.load(file_path)
|
|
QCoreApplication.installTranslator(translator)
|
|
|
|
expected_message = 'Bonjour'
|
|
real_message = QCoreApplication.translate("@default", 'Good morning')
|
|
self.assertEqual(real_message, expected_message)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
suite = unittest.makeSuite(SafeTranslationsTest)
|
|
runner = unittest.TextTestRunner(verbosity=2)
|
|
runner.run(suite)
|