当前位置: 首页>>代码示例>>Python>>正文


Python Project._languages_to_pull方法代码示例

本文整理汇总了Python中txclib.project.Project._languages_to_pull方法的典型用法代码示例。如果您正苦于以下问题:Python Project._languages_to_pull方法的具体用法?Python Project._languages_to_pull怎么用?Python Project._languages_to_pull使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在txclib.project.Project的用法示例。


在下文中一共展示了Project._languages_to_pull方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: TestProjectPull

# 需要导入模块: from txclib.project import Project [as 别名]
# 或者: from txclib.project.Project import _languages_to_pull [as 别名]
class TestProjectPull(unittest.TestCase):
    """Test bits & pieces of the pull method."""

    def setUp(self):
        super(TestProjectPull, self).setUp()
        self.p = Project(init=False)
        self.p.minimum_perc = None
        self.p.resource = "resource"
        self.p.host = 'foo'
        self.p.project_slug = 'foo'
        self.p.resource_slug = 'foo'
        self.stats = {
            'en': {
                'completed': '100%', 'last_update': '2011-11-01 15:00:00',
            }, 'el': {
                'completed': '60%', 'last_update': '2011-11-01 15:00:00',
            }, 'pt': {
                'completed': '70%', 'last_update': '2011-11-01 15:00:00',
            },
        }
        self.langs = list(self.stats.keys())
        self.files = dict(list(zip(self.langs, itertools.repeat(None))))
        self.details = {'available_languages': []}
        for lang in self.langs:
            self.details['available_languages'].append({'code': lang})
        self.slang = 'en'
        self.lang_map = Flipdict()

    def test_new_translations(self):
        """Test finding new translations to add."""
        with patch.object(self.p, 'do_url_request') as resource_mock:
            resource_mock.return_value = json.dumps(self.details), "utf-8"
            new_trans = self.p._new_translations_to_add
            for force in [True, False]:
                res = new_trans(
                    self.files, self.slang, self.lang_map, self.stats, force
                )
                self.assertEqual(res, set([]))

            with patch.object(self.p,
                              '_should_add_translation') as filter_mock:
                filter_mock.return_value = True
                for force in [True, False]:
                    res = new_trans(
                        {'el': None}, self.slang, self.lang_map, self.stats,
                        force
                    )
                    self.assertEqual(res, set(['pt']))
                for force in [True, False]:
                    res = new_trans(
                        {}, self.slang, self.lang_map, self.stats, force
                    )
                    self.assertEqual(res, set(['el', 'pt']))

                files = {}
                files['pt_PT'] = None
                lang_map = {'pt': 'pt_PT'}
                for force in [True, False]:
                    res = new_trans(
                        files, self.slang, lang_map, self.stats, force
                    )
                    self.assertEqual(res, set(['el']))

    def test_get_pseudo_file(self):
        slang = 'en'
        resource = 'adriana'
        file_filter = 'adriana/<lang>.po'

        pseudo_file = self.p._get_pseudo_file(slang, resource, file_filter)

        self.assertEqual(pseudo_file, 'adriana/en_pseudo.po')

    def test_languages_to_pull_empty_initial_list(self):
        """Test determining the languages to pull, when the initial
        list is empty.
        """
        languages = []
        force = False

        res = self.p._languages_to_pull(
            languages, self.files, self.lang_map, self.stats, force
        )
        existing = res[0]
        new = res[1]
        self.assertEqual(existing, set(['el', 'en', 'pt']))
        self.assertFalse(new)

        del self.files['el']
        self.files['el-gr'] = None
        self.lang_map['el'] = 'el-gr'
        res = self.p._languages_to_pull(
            languages, self.files, self.lang_map, self.stats, force
        )
        existing = res[0]
        new = res[1]
        self.assertEqual(existing, set(['el', 'en', 'pt']))
        self.assertFalse(new)

    def test_languages_to_pull_with_initial_list(self):
        """Test determining the languages to pull, then there is a
#.........这里部分代码省略.........
开发者ID:transifex,项目名称:transifex-client,代码行数:103,代码来源:test_project.py

示例2: TestProjectPull

# 需要导入模块: from txclib.project import Project [as 别名]
# 或者: from txclib.project.Project import _languages_to_pull [as 别名]
class TestProjectPull(unittest.TestCase):
    """Test bits & pieces of the pull method."""

    def setUp(self):
        super(TestProjectPull, self).setUp()
        self.p = Project(init=False)
        self.p.minimum_perc = None
        self.p.resource = "resource"
        self.p.host = 'foo'
        self.p.project_slug = 'foo'
        self.p.resource_slug = 'foo'
        self.stats = {
            'en': {
                'completed': '100%', 'last_update': '2011-11-01 15:00:00',
            }, 'el': {
                'completed': '60%', 'last_update': '2011-11-01 15:00:00',
            }, 'pt': {
                'completed': '70%', 'last_update': '2011-11-01 15:00:00',
            },
        }
        self.langs = list(self.stats.keys())
        self.files = dict(list(zip(self.langs, itertools.repeat(None))))
        self.details = {'available_languages': []}
        for lang in self.langs:
            self.details['available_languages'].append({'code': lang})
        self.slang = 'en'
        self.lang_map = Flipdict()

    def test_new_translations(self):
        """Test finding new transaltions to add."""
        with patch.object(self.p, 'do_url_request') as resource_mock:
            resource_mock.return_value = json.dumps(self.details), "utf-8"
            files_keys = self.langs
            new_trans = self.p._new_translations_to_add
            for force in [True, False]:
                res = new_trans(
                    self.files, self.slang, self.lang_map, self.stats, force
                )
                self.assertEqual(res, set([]))

            with patch.object(self.p,
                              '_should_add_translation') as filter_mock:
                filter_mock.return_value = True
                for force in [True, False]:
                    res = new_trans(
                        {'el': None}, self.slang, self.lang_map, self.stats,
                        force
                    )
                    self.assertEqual(res, set(['pt']))
                for force in [True, False]:
                    res = new_trans(
                        {}, self.slang, self.lang_map, self.stats, force
                    )
                    self.assertEqual(res, set(['el', 'pt']))

                files = {}
                files['pt_PT'] = None
                lang_map = {'pt': 'pt_PT'}
                for force in [True, False]:
                    res = new_trans(
                        files, self.slang, lang_map, self.stats, force
                    )
                    self.assertEqual(res, set(['el']))

    def test_get_pseudo_file(self):
        slang = 'en'
        resource = 'adriana'
        file_filter = 'adriana/<lang>.po'

        pseudo_file = self.p._get_pseudo_file(slang, resource, file_filter)

        self.assertEqual(pseudo_file, 'adriana/en_pseudo.po')

    def test_languages_to_pull_empty_initial_list(self):
        """Test determining the languages to pull, when the initial
        list is empty.
        """
        languages = []
        force = False

        res = self.p._languages_to_pull(
            languages, self.files, self.lang_map, self.stats, force
        )
        existing = res[0]
        new = res[1]
        self.assertEqual(existing, set(['el', 'en', 'pt']))
        self.assertFalse(new)

        del self.files['el']
        self.files['el-gr'] = None
        self.lang_map['el'] = 'el-gr'
        res = self.p._languages_to_pull(
            languages, self.files, self.lang_map, self.stats, force
        )
        existing = res[0]
        new = res[1]
        self.assertEqual(existing, set(['el', 'en', 'pt']))
        self.assertFalse(new)

    def test_languages_to_pull_with_initial_list(self):
#.........这里部分代码省略.........
开发者ID:TASERAxon,项目名称:transifex-client,代码行数:103,代码来源:test_project.py

示例3: TestProjectPull

# 需要导入模块: from txclib.project import Project [as 别名]
# 或者: from txclib.project.Project import _languages_to_pull [as 别名]
class TestProjectPull(unittest.TestCase):
    """Test bits & pieces of the pull method."""

    def setUp(self):
        super(TestProjectPull, self).setUp()
        self.p = Project(init=False)
        self.p.minimum_perc = None
        self.p.resource = "resource"
        self.p.host = "foo"
        self.p.project_slug = "foo"
        self.p.resource_slug = "foo"
        self.stats = {
            "en": {"completed": "100%", "last_update": "2011-11-01 15:00:00"},
            "el": {"completed": "60%", "last_update": "2011-11-01 15:00:00"},
            "pt": {"completed": "70%", "last_update": "2011-11-01 15:00:00"},
        }
        self.langs = self.stats.keys()
        self.files = dict(zip(self.langs, itertools.repeat(None)))
        self.details = {"available_languages": []}
        for lang in self.langs:
            self.details["available_languages"].append({"code": lang})
        self.slang = "en"
        self.lang_map = Flipdict()

    def test_new_translations(self):
        """Test finding new transaltions to add."""
        with patch.object(self.p, "do_url_request") as resource_mock:
            resource_mock.return_value = json.dumps(self.details)
            files_keys = self.langs
            new_trans = self.p._new_translations_to_add
            for force in [True, False]:
                res = new_trans(self.files, self.slang, self.lang_map, self.stats, force)
                self.assertEquals(res, set([]))

            with patch.object(self.p, "_should_add_translation") as filter_mock:
                filter_mock.return_value = True
                for force in [True, False]:
                    res = new_trans({"el": None}, self.slang, self.lang_map, self.stats, force)
                    self.assertEquals(res, set(["pt"]))
                for force in [True, False]:
                    res = new_trans({}, self.slang, self.lang_map, self.stats, force)
                    self.assertEquals(res, set(["el", "pt"]))

                files = {}
                files["pt_PT"] = None
                lang_map = {"pt": "pt_PT"}
                for force in [True, False]:
                    res = new_trans(files, self.slang, lang_map, self.stats, force)
                    self.assertEquals(res, set(["el"]))

    def test_languages_to_pull_empty_initial_list(self):
        """Test determining the languages to pull, when the initial
        list is empty.
        """
        languages = []
        force = False

        res = self.p._languages_to_pull(languages, self.files, self.lang_map, self.stats, force)
        existing = res[0]
        new = res[1]
        self.assertEquals(existing, set(["el", "en", "pt"]))
        self.assertFalse(new)

        del self.files["el"]
        self.files["el-gr"] = None
        self.lang_map["el"] = "el-gr"
        res = self.p._languages_to_pull(languages, self.files, self.lang_map, self.stats, force)
        existing = res[0]
        new = res[1]
        self.assertEquals(existing, set(["el", "en", "pt"]))
        self.assertFalse(new)

    def test_languages_to_pull_with_initial_list(self):
        """Test determining the languages to pull, then there is a
        language selection from the user.
        """
        languages = ["el", "en"]
        self.lang_map["el"] = "el-gr"
        del self.files["el"]
        self.files["el-gr"] = None
        force = False

        with patch.object(self.p, "_should_add_translation") as mock:
            mock.return_value = True
            res = self.p._languages_to_pull(languages, self.files, self.lang_map, self.stats, force)
            existing = res[0]
            new = res[1]
            self.assertEquals(existing, set(["en", "el-gr"]))
            self.assertFalse(new)

            mock.return_value = False
            res = self.p._languages_to_pull(languages, self.files, self.lang_map, self.stats, force)
            existing = res[0]
            new = res[1]
            self.assertEquals(existing, set(["en", "el-gr"]))
            self.assertFalse(new)

            del self.files["el-gr"]
            mock.return_value = True
            res = self.p._languages_to_pull(languages, self.files, self.lang_map, self.stats, force)
#.........这里部分代码省略.........
开发者ID:keiji,项目名称:android,代码行数:103,代码来源:test_project.py


注:本文中的txclib.project.Project._languages_to_pull方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。