python类EntryPoint()的实例源码

test_packaging.py 文件源码 项目:RPoint 作者: george17-meet 项目源码 文件源码 阅读 23 收藏 0 点赞 0 评论 0
def test_generate_script(self):
        group = 'console_scripts'
        entry_point = pkg_resources.EntryPoint(
            name='test-ep',
            module_name='pbr.packaging',
            attrs=('LocalInstallScripts',))
        header = '#!/usr/bin/env fake-header\n'
        template = ('%(group)s %(module_name)s %(import_target)s '
                    '%(invoke_target)s')

        generated_script = packaging.generate_script(
            group, entry_point, header, template)

        expected_script = (
            '#!/usr/bin/env fake-header\nconsole_scripts pbr.packaging '
            'LocalInstallScripts LocalInstallScripts'
        )
        self.assertEqual(expected_script, generated_script)
test_packaging.py 文件源码 项目:RPoint 作者: george17-meet 项目源码 文件源码 阅读 31 收藏 0 点赞 0 评论 0
def test_generate_script_validates_expectations(self):
        group = 'console_scripts'
        entry_point = pkg_resources.EntryPoint(
            name='test-ep',
            module_name='pbr.packaging')
        header = '#!/usr/bin/env fake-header\n'
        template = ('%(group)s %(module_name)s %(import_target)s '
                    '%(invoke_target)s')
        self.assertRaises(
            ValueError, packaging.generate_script, group, entry_point, header,
            template)

        entry_point = pkg_resources.EntryPoint(
            name='test-ep',
            module_name='pbr.packaging',
            attrs=('attr1', 'attr2', 'attr3'))
        self.assertRaises(
            ValueError, packaging.generate_script, group, entry_point, header,
            template)
test_easteregg.py 文件源码 项目:reahl 作者: reahl 项目源码 文件源码 阅读 25 收藏 0 点赞 0 评论 0
def test_adding_entry_points_affect_entry_point_map(easter_fixture):
    easter_fixture.stub_egg.add_entry_point_from_line(easter_fixture.group_name,
                      'test1 = reahl.stubble_dev.test_easteregg:TestClass1')

    easter_fixture.stub_egg.add_entry_point(easter_fixture.group_name, 'test2', TestClass2)


    epmap = easter_fixture.stub_egg.get_entry_map()

    assert list(epmap.keys()) == [easter_fixture.group_name]
    name_to_entry_point = list(epmap.values())[0]
    assert len(list(name_to_entry_point.keys())) == 2

    assert isinstance(name_to_entry_point['test1'], pkg_resources.EntryPoint)
    assert name_to_entry_point['test1'].load() is TestClass1
    assert isinstance(name_to_entry_point['test2'], pkg_resources.EntryPoint)
    assert name_to_entry_point['test2'].load() is TestClass2


    easter_fixture.stub_egg.clear()
    assert not easter_fixture.stub_egg.get_entry_map()
master_key_parsing.py 文件源码 项目:aws-encryption-sdk-cli 作者: awslabs 项目源码 文件源码 阅读 27 收藏 0 点赞 0 评论 0
def _entry_points():
    # type: () -> DefaultDict[str, Dict[str, pkg_resources.EntryPoint]]
    """Discover all entry points for required groups if they have not already been found.

    :returns: Mapping of group to name to entry points
    :rtype: dict
    """
    if not _ENTRY_POINTS:
        _discover_entry_points()
    return _ENTRY_POINTS
disco_test.py 文件源码 项目:TCP-IP 作者: JackZ0 项目源码 文件源码 阅读 30 收藏 0 点赞 0 评论 0
def setUp(self):
        self.ep1 = pkg_resources.EntryPoint(
            "ep1", "p1.ep1", dist=mock.MagicMock(key="p1"))
        self.ep1prim = pkg_resources.EntryPoint(
            "ep1", "p2.ep2", dist=mock.MagicMock(key="p2"))
        # nested
        self.ep2 = pkg_resources.EntryPoint(
            "ep2", "p2.foo.ep2", dist=mock.MagicMock(key="p2"))
        # project name != top-level package name
        self.ep3 = pkg_resources.EntryPoint(
            "ep3", "a.ep3", dist=mock.MagicMock(key="p3"))

        from certbot.plugins.disco import PluginEntryPoint
        self.plugin_ep = PluginEntryPoint(EP_SA)
config.py 文件源码 项目:rcli 作者: contains-io 项目源码 文件源码 阅读 30 收藏 0 点赞 0 评论 0
def __init__(self):
        # type: () -> None
        """Initialize the data for the configuration."""
        self._command = None  # type: str
        self._subcommands = {}  # type: typing.Dict[str, RcliEntryPoint]
        self._version = None  # type: str
        self._entry_point = None  # type: pkg_resources.EntryPoint
        self._config = {}  # type: typing.Dict[str, typing.Any]
        if (self.distribution and
                self.distribution.has_metadata('rcli-config.json')):
            data = self.distribution.get_metadata('rcli-config.json')
            self._config = json.loads(data)
config.py 文件源码 项目:rcli 作者: contains-io 项目源码 文件源码 阅读 25 收藏 0 点赞 0 评论 0
def entry_point(self):
        # type: () -> pkg_resources.EntryPoint
        """The currently active entry point."""
        if not self._entry_point:
            for ep in pkg_resources.iter_entry_points(group='console_scripts'):
                if (ep.name == self.command and
                        ep.module_name == self._EP_MOD_NAME):
                    self._entry_point = ep
        return self._entry_point
disco_test.py 文件源码 项目:certbot 作者: nikoloskii 项目源码 文件源码 阅读 24 收藏 0 点赞 0 评论 0
def setUp(self):
        self.ep1 = pkg_resources.EntryPoint(
            "ep1", "p1.ep1", dist=mock.MagicMock(key="p1"))
        self.ep1prim = pkg_resources.EntryPoint(
            "ep1", "p2.ep2", dist=mock.MagicMock(key="p2"))
        # nested
        self.ep2 = pkg_resources.EntryPoint(
            "ep2", "p2.foo.ep2", dist=mock.MagicMock(key="p2"))
        # project name != top-level package name
        self.ep3 = pkg_resources.EntryPoint(
            "ep3", "a.ep3", dist=mock.MagicMock(key="p3"))

        from certbot.plugins.disco import PluginEntryPoint
        self.plugin_ep = PluginEntryPoint(EP_SA)
conftest.py 文件源码 项目:invenio-stats 作者: inveniosoftware 项目源码 文件源码 阅读 24 收藏 0 点赞 0 评论 0
def event_entrypoints():
    """Declare some events by mocking the invenio_stats.events entrypoint.

    It yields a list like [{event_type: <event_type_name>}, ...].
    """
    data = []
    result = []
    for idx in range(5):
        event_type_name = 'event_{}'.format(idx)
        from pkg_resources import EntryPoint
        entrypoint = EntryPoint(event_type_name, event_type_name)
        conf = dict(event_type=event_type_name, templates='/',
                    processor_class=EventsIndexer)
        entrypoint.load = lambda conf=conf: (lambda: [conf])
        data.append(entrypoint)
        result.append(conf)

    # including file_download
    event_type_name = 'file-download'
    from pkg_resources import EntryPoint
    entrypoint = EntryPoint('invenio_files_rest', 'test_dir')
    conf = dict(event_type=event_type_name, templates='contrib/file-download',
                processor_class=EventsIndexer)
    entrypoint.load = lambda conf=conf: (lambda: [conf])
    data.append(entrypoint)

    entrypoints = mock_iter_entry_points_factory(data, 'invenio_stats.events')

    with patch('invenio_stats.ext.iter_entry_points',
               entrypoints):
        yield result
easteregg.py 文件源码 项目:reahl 作者: reahl 项目源码 文件源码 阅读 29 收藏 0 点赞 0 评论 0
def add_entry_point_from_line(self, group_name, line):
        entry = pkg_resources.EntryPoint.parse(line, dist=self)
        self.entry_points[ (group_name, entry.name) ] = entry
        return entry
easteregg.py 文件源码 项目:reahl 作者: reahl 项目源码 文件源码 阅读 22 收藏 0 点赞 0 评论 0
def add_entry_point(self, group_name, name, the_class):
        entry = pkg_resources.EntryPoint(name, the_class.__module__,
                                         attrs=(the_class.__name__,),
                                         dist=self)
        self.entry_points[ (group_name, entry.name) ] = entry
        return entry
conftest.py 文件源码 项目:invenio-stats 作者: inveniosoftware 项目源码 文件源码 阅读 28 收藏 0 点赞 0 评论 0
def query_entrypoints(custom_permission_factory):
    """Same as event_entrypoints for queries."""
    from pkg_resources import EntryPoint
    entrypoint = EntryPoint('invenio_stats', 'queries')
    data = []
    result = []
    conf = [dict(
        query_name='test-query',
        query_class=CustomQuery,
        query_config=dict(
            index='stats-file-download',
            doc_type='file-download-day-aggregation',
            copy_fields=dict(
                bucket_id='bucket_id',
            ),
            required_filters=dict(
                bucket_id='bucket_id',
            )
        ),
        permission_factory=custom_permission_factory
    ),
        dict(
        query_name='test-query2',
        query_class=CustomQuery,
        query_config=dict(
            index='stats-file-download',
            doc_type='file-download-day-aggregation',
            copy_fields=dict(
                bucket_id='bucket_id',
            ),
            required_filters=dict(
                bucket_id='bucket_id',
            )
        ),
        permission_factory=custom_permission_factory
    )]

    result += conf
    result += register_queries()
    entrypoint.load = lambda conf=conf: (lambda: result)
    data.append(entrypoint)

    entrypoints = mock_iter_entry_points_factory(data, 'invenio_stats.queries')

    with patch('invenio_stats.ext.iter_entry_points',
               entrypoints):
        yield result


问题


面经


文章

微信
公众号

扫码关注公众号