def test1_created_file(self): Trans = Translator("test_i18n_languages") self.assertTrue(os.path.exists("test_i18n_languages")) self.assertTrue( os.path.exists(os.path.join("test_i18n_languages", "entries.json"))) Trans.add_language("pt-BR") self.assertTrue( os.path.exists(os.path.join("test_i18n_languages", "pt-BR.json")))
def test1_created_file(self): files = glob.glob(os.path.join(CURRENT_PATH, "test_i18n_languages", "*.json")) for x in files: os.remove(x) Trans = Translator(os.path.join(CURRENT_PATH, "test_i18n_languages"), "test") self.assertTrue(os.path.exists(os.path.join(CURRENT_PATH, "test_i18n_languages"))) self.assertTrue(os.path.exists(os.path.join(CURRENT_PATH, "test_i18n_languages", "entries.json"))) Trans.add_language("pt-BR") self.assertTrue(os.path.exists(os.path.join(CURRENT_PATH, "test_i18n_languages", "pt-BR.json")))
def get(self, *args): app = args[0] dict_arguments = { k: self.request.arguments.get(k)[0].decode('utf-8') for k in self.request.arguments } lang = dict_arguments.get("lang", self.phanterpwa_language) word = dict_arguments.get("new_word", None) current_dir = self.projectConfig['PROJECT']['path'] translator_instance = Translator( os.path.join(current_dir, "backapps", self.app_name, "languages", app), identifier=lang, debug=self.projectConfig['PROJECT']['debug']) if translator_instance: if word and lang and self.projectConfig["PROJECT"]["debug"]: translator_instance.add_language(lang) translator_instance.direct_translation = lang translator_instance.translator(word, lang) if self.projectConfig["PROJECT"]["debug"] or self.ignore_debug: return self.write(translator_instance.languages) else: return self.set_status(503) else: return self.set_status(404)
def test3_attr_translate(self): if os.path.exists(os.path.join(CURRENT_PATH, "test_i18n_languages", "en-US.json")): os.remove(os.path.join(CURRENT_PATH, "test_i18n_languages", "en-US.json")) Trans = Translator(os.path.join(CURRENT_PATH, "test_i18n_languages"), "test") # Translate just en-US language Trans.translate("en-US", "abacaxi", "pineapple") Trans.save() # abacaxi translate is abacaxi with open(os.path.join(CURRENT_PATH, "test_i18n_languages", "pt-BR.json"), "r") as f: self.assertEqual(f.read(), sample4) with open(os.path.join(CURRENT_PATH, "test_i18n_languages", "pt-PT.json"), "r") as f: self.assertEqual(f.read(), sample4) # abacaxi translate is pineapple with open(os.path.join(CURRENT_PATH, "test_i18n_languages", "en-US.json"), "r") as f: self.assertEqual(f.read(), sample5)
def test2_persistence(self): if os.path.exists(os.path.join(CURRENT_PATH, "test_i18n_languages", "entries.json")): os.remove(os.path.join(CURRENT_PATH, "test_i18n_languages", "entries.json")) # Test create a new entries.json Trans = Translator(os.path.join(CURRENT_PATH, "test_i18n_languages"), "test") if os.path.exists(os.path.join(CURRENT_PATH, "test_i18n_languages", "pt-PT.json")): os.remove(os.path.join(CURRENT_PATH, "test_i18n_languages", "pt-PT.json")) # Test create a new pt-PT.json Trans.add_language("pt-PT") # Test add entrie without save Trans.T("hello world!") with open(os.path.join(CURRENT_PATH, "test_i18n_languages", "entries.json"), "r") as f: self.assertEqual(f.readlines(), ['[]']) with open(os.path.join(CURRENT_PATH, "test_i18n_languages", "pt-PT.json"), "r") as f: self.assertEqual(f.readlines(), ['{}']) Trans.save() # Test entrie after save with open(os.path.join(CURRENT_PATH, "test_i18n_languages", "entries.json"), "r") as f: self.assertEqual(f.read(), sample1) with open(os.path.join(CURRENT_PATH, "test_i18n_languages", "pt-PT.json"), "r") as f: self.assertEqual(f.read(), sample2)
def test4_attr_translator(self): Trans = Translator(os.path.join(CURRENT_PATH, "test_i18n_languages"), "test") self.assertEqual("dont exists", Trans.translator("dont exists", "pt-BR")) self.assertEqual("abacaxi", Trans.translator("abacaxi", "pt-BR")) self.assertEqual("pineapple", Trans.translator("abacaxi", "en-US"))
import os import unittest from phanterpwa.tools import (interpolate, sass_change_vars, sass_map_vars, config, text_normalize, string_escape, one_space, split_seconds, join_seconds, humanize_seconds) from phanterpwa.i18n import Translator CURRENT_PATH = os.path.dirname(__file__) my_translator = Translator( os.path.join(CURRENT_PATH, "test_tools_humanize_seconds"), "humanize_seconds") SAMPLE_tools = """$STROKEWIDTH: 8px /*teste*/ $_BORDERRADIUS: 100% $BORDERRADIUS: 100% $border-dark: rgba($base-color, 0.88) \t$SIM: #9px $black: #000 !default .phanterpwa-components-preloaders-android $STROKEWIDTH: 8px //teste $CONTAINERWIDTH: 60px // $NAO: 70 /* $NAO2: 70 */ * box-sizing: border-box .left float: left {{important}} .right float: right !important .preloader-wrapper display: inline-block
config, ) from phanterpwa.interface.cli import package_project_app from phanterpwa.samples import project_config_sample from phanterpwa.i18n import Translator ENV_PYTHON = os.path.normpath(sys.executable) ENV_PATH = os.path.normpath(os.path.dirname(ENV_PYTHON)) if sys.version_info[0] < 3: raise Exception("Must be using Python 3") PY_VERSION = "{0}.{1}.{2}".format(sys.version_info[0], sys.version_info[1], sys.version_info[2]) CURRENT_DIR = os.path.dirname(__file__) Trans = Translator(os.path.join(CURRENT_DIR, "langs"), "grafics", debug=True) T = Trans.T class ProjectsFolderTk(): def __init__(self): self._projectdata_dir = os.path.join(appdirs.user_data_dir(), "phanterpwa") self._projectdata_dir_gui = os.path.join(self._projectdata_dir, "gui") if not os.path.isdir(self._projectdata_dir): os.makedirs(self._projectdata_dir, exist_ok=True) if not os.path.isdir(self._projectdata_dir_gui): os.makedirs(self._projectdata_dir_gui, exist_ok=True) self._projects_path = None self.ProjectsPWA = None
def test4_attr_translator(self): Trans = Translator("test_i18n_languages") self.assertEqual("dont exists", Trans.translator("dont exists", "pt-BR")) self.assertEqual("abacaxi", Trans.translator("abacaxi", "pt-BR")) self.assertEqual("pineapple", Trans.translator("abacaxi", "en-US"))
from .controllers import ( welcome, developer, ) from phanterpwa.i18n import Translator from core import (projectConfig, logger_api) from .models import * _current_dir = os.path.join(os.path.dirname(__file__)) _app_name = os.path.split(_current_dir)[-1] _debug = projectConfig['PROJECT']['debug'] _project_name = projectConfig['PROJECT']['name'] Translator_captcha = Translator(os.path.join(_current_dir, "languages", "captcha"), identifier="{0}-captcha".format(_project_name), debug=_debug) Translator_captcha.add_language("pt-BR") Translator_api = Translator(os.path.join(_current_dir, "languages"), identifier="{0}-api".format(_project_name), debug=_debug) Translator_api.add_language("pt-BR") Translator_email = Translator(os.path.join(_current_dir, "languages", "email"), identifier="{0}-email".format(_project_name), debug=_debug) Translator_email.add_language("pt-BR") SETTINGS = {'debug': _debug} HANDLER = [