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


Python interface.directlyProvides函数代码示例

本文整理汇总了Python中zope.interface.directlyProvides函数的典型用法代码示例。如果您正苦于以下问题:Python directlyProvides函数的具体用法?Python directlyProvides怎么用?Python directlyProvides使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


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

示例1: test_process_message_report

    def test_process_message_report(self):
        from zope.interface import directlyProvides
        from pyramid.testing import DummyModel
        from karl.models.interfaces import IPeopleDirectory
        INFO = {'targets': [{'report': 'section+testing',
                             'community': None,
                             'tool': None,}],
                'author': 'phreddy',
                'subject': 'Feedback'
               }
        text = 'This entry stinks!'
        attachments = [('foo.txt', 'text/plain', 'My attachment')]
        message = DummyMessage(INFO, text, attachments)
        self._set_up_queue([message,])

        mailin = self._makeOne()
        pd = mailin.root['people'] = DummyModel()
        directlyProvides(pd, IPeopleDirectory)
        section = pd['section'] = DummyModel()
        testing = section['testing'] = DummyModel()

        mailin()

        self.assertEqual(len(self.handlers), 1)
        handler = self.handlers[0]
        self.failUnless(handler.context is testing)
        self.assertEqual(handler.handle_args,
                         (message, INFO, text, attachments))
        self.assertEqual(len(self.mailer), 0)
开发者ID:lslaz1,项目名称:karl,代码行数:29,代码来源:test_mailin.py

示例2: startTLS

        def startTLS(self, contextFactory, normal=True):
            """
            @see: L{ITLSTransport.startTLS}
            """
            # Figure out which direction the SSL goes in.  If normal is True,
            # we'll go in the direction indicated by the subclass.  Otherwise,
            # we'll go the other way (client = not normal ^ _tlsClientDefault,
            # in other words).
            if normal:
                client = self._tlsClientDefault
            else:
                client = not self._tlsClientDefault

            tlsFactory = TLSMemoryBIOFactory(contextFactory, client, None)
            tlsProtocol = TLSMemoryBIOProtocol(tlsFactory, self.protocol, False)
            self.protocol = tlsProtocol

            self.getHandle = tlsProtocol.getHandle
            self.getPeerCertificate = tlsProtocol.getPeerCertificate

            # Mark the transport as secure.
            directlyProvides(self, interfaces.ISSLTransport)

            # Remember we did this so that write and writeSequence can send the
            # data to the right place.
            self._tls = True

            # Hook it up
            self.protocol.makeConnection(_BypassTLS(self))
开发者ID:Alberto-Beralix,项目名称:Beralix,代码行数:29,代码来源:tcp.py

示例3: test_call_view_exception_propagating

 def test_call_view_exception_propagating(self):
     from zope.interface import Interface
     from zope.interface import directlyProvides
     class IContext(Interface):
         pass
     from pyramid.interfaces import IRequest
     from pyramid.interfaces import IViewClassifier
     from pyramid.interfaces import IRequestFactory
     def rfactory(environ):
         return request
     self.registry.registerUtility(rfactory, IRequestFactory)
     from pyramid.request import Request
     request = Request.blank('/')
     context = DummyContext()
     directlyProvides(context, IContext)
     self._registerTraverserFactory(context, subpath=[''])
     response = DummyResponse()
     view = DummyView(response, raise_exception=RuntimeError)
     environ = self._makeEnviron()
     self._registerView(view, '', IViewClassifier, IRequest, IContext)
     router = self._makeOne()
     start_response = DummyStartResponse()
     self.assertRaises(RuntimeError, router, environ, start_response)
     # ``exception`` must be attached to request even if a suitable
     # exception view cannot be found
     self.assertEqual(request.exception.__class__, RuntimeError)
开发者ID:RyoAbe,项目名称:pyramid,代码行数:26,代码来源:test_router.py

示例4: _makeCommunity

 def _makeCommunity(self):
     from karl.models.interfaces import ICommunity
     from karl.models.interfaces import IInvitation
     from zope.interface import directlyProvides
     community = testing.DummyModel()
     community.member_names = set(['a'])
     community.moderator_names = set(['b', 'c'])
     site = testing.DummyModel()
     site['communities'] = testing.DummyModel()
     site['communities']['community'] = community
     profiles = testing.DummyModel()
     profiles['a'] = karltesting.DummyProfile()
     profiles['b'] = karltesting.DummyProfile()
     profiles['c'] = karltesting.DummyProfile()
     invitation = testing.DummyModel(email='[email protected]',
                                     message='message')
     directlyProvides(invitation, IInvitation)
     community['invitation'] = invitation
     site['profiles'] = profiles
     users = karltesting.DummyUsers(community)
     site.users = users
     directlyProvides(community, ICommunity)
     community.moderators_group_name = 'moderators'
     community.members_group_name = 'members'
     return community
开发者ID:mindreframer,项目名称:python-pyramid-stuff,代码行数:25,代码来源:test_members.py

示例5: testInitializedAndEditedEvent

    def testInitializedAndEditedEvent(self):

        component.provideHandler(created_handler, (IObject1, IObjectCreatedEvent,))
        component.provideHandler(initialized_handler, (IObject1, IObjectInitializedEvent,))
        component.provideHandler(edited_handler, (IObject1, IObjectEditedEvent,))

        ob = Dummy('dummy')
        directlyProvides(ob, IObject1)
        self.folder._setObject('dummy', ob)
        ob = self.folder.dummy

        ob._initializedCaught = False
        ob._editedCaught = False

        # Simulate first edit
        ob._at_creation_flag = True
        ob.processForm(REQUEST=TestRequest())

        self.assertEqual(True, ob._initializedCaught)
        self.assertEqual(False, ob._editedCaught)

        # Simulate subsequent edit
        ob.processForm(REQUEST=TestRequest())
        self.assertEqual(True, ob._editedCaught)

        sm = component.getSiteManager()
        sm.unregisterHandler(created_handler, (IObject1, IObjectCreatedEvent,))
        sm.unregisterHandler(initialized_handler, (IObject1, IObjectCreatedEvent,))
        sm.unregisterHandler(edited_handler, (IObject1, IObjectCreatedEvent,))
开发者ID:Goldmund-Wyldebeast-Wunderliebe,项目名称:Products.Archetypes,代码行数:29,代码来源:test_event.py

示例6: test_widget_addform_url_on_addform

    def test_widget_addform_url_on_addform(self):
        from plone.app.widgets.dx import AjaxSelectWidget
        widget = AjaxSelectWidget(self.request)
        form = Mock()
        from zope.interface import directlyProvides
        from z3c.form.interfaces import IAddForm
        directlyProvides(form, IAddForm)
        form.request = {'URL': 'http://addform_url'}
        widget.form = form
        self.assertEqual(
            {
                'name': None,
                'value': u'',
                'pattern': 'select2',
                'pattern_options': {'separator': ';'},
            },
            widget._base_args(),
        )
        widget.vocabulary = 'vocabulary1'
        self.assertEqual(
            {
                'name': None,
                'value': u'',
                'pattern': 'select2',
                'pattern_options': {
                    'separator': ';',
                    'vocabularyUrl':
                    'http://addform_url/@@getVocabulary?name=vocabulary1'}

            },
            widget._base_args(),
        )
开发者ID:hoka,项目名称:plone.app.widgets,代码行数:32,代码来源:test_dx.py

示例7: test_community_search

 def test_community_search(self):
     context = testing.DummyModel()
     context.title = 'Citizens'
     context.catalog = {}
     context['profiles'] = profiles = testing.DummyModel()
     profiles['tweedle dee'] = testing.DummyModel(title='Tweedle Dee')
     from webob.multidict import MultiDict
     from karl.models.interfaces import ICommunity
     from zope.interface import directlyProvides
     directlyProvides(context, ICommunity)
     request = testing.DummyRequest(params=MultiDict({'body':'yo'}))
     from zope.interface import Interface
     from karl.models.interfaces import ICatalogSearch
     from karl.views.interfaces import IAdvancedSearchResultsDisplay
     from repoze.lemonade.testing import registerContentFactory
     registerContentFactory(DummyContent, IDummyContent)
     karltesting.registerAdapter(DummySearch, (Interface),
                             ICatalogSearch)
     karltesting.registerAdapter(DummySearchResultsDisplay,
                             (Interface, Interface),
                             IAdvancedSearchResultsDisplay)
     result = self._callFUT(context, request)
     self.assertEqual(result['community'], 'Citizens')
     self.assertEqual(result['terms'], ['yo'])
     self.assertEqual(len(result['results']), 1)
开发者ID:lslaz1,项目名称:karl,代码行数:25,代码来源:test_search.py

示例8: test_show_workflow_custom_acl

 def test_show_workflow_custom_acl(self):
     from repoze.workflow.testing import DummyWorkflow
     from zope.interface import Interface
     from zope.interface import directlyProvides
     workflow = DummyWorkflow()
     def state_info(context, request):
         return [{'name': 'foo', 'current': True, 'transitions': True},
                 {'name': 'bar', 'current': False, 'transitions': True}]
     workflow.state_info = state_info
     def get_dummy_workflow(*args, **kw):
         return workflow
     import karl.views.acl
     old_f = karl.views.acl.get_context_workflow
     karl.views.acl.get_context_workflow = get_dummy_workflow
     try:
         context = testing.DummyModel()
         context.state = 'foo'
         context.__custom_acl__ = []
         directlyProvides(Interface)
         request = testing.DummyRequest()
         renderer = karl.testing.registerDummyRenderer('templates/edit_acl.pt')
         self._callFUT(context, request)
         self.assertEqual(renderer.security_state, 'CUSTOM')
         self.assertEqual(renderer.security_states, ['CUSTOM', 'foo', 'bar'])
     finally:
         karl.views.acl.get_context_workflow = old_f
开发者ID:Falmarri,项目名称:karl,代码行数:26,代码来源:test_acl.py

示例9: testAddMenuRelativeToNonStructuralFolder

 def testAddMenuRelativeToNonStructuralFolder(self):
     self.folder.invokeFactory('Folder', 'f1')
     directlyProvides(self.folder.f1, INonStructuralFolder)
     items = self.menu.getMenuItems(self.folder.f1, self.request)
     factoriesMenuItem = [i for i in items if
                          i['extra']['id'] == 'plone-contentmenu-factories']
     self.failIf(factoriesMenuItem)
开发者ID:pingviini,项目名称:plone.app.contentmenu,代码行数:7,代码来源:tests.py

示例10: create_viewlet

 def create_viewlet(self, viewlet, context=None, view=None, manager=None):
     if context is None:
         context = self.portal
     request = TestRequest()
     directlyProvides(request, IAttributeAnnotatable)
     request.set = mock.Mock()
     return viewlet(context, request, view, manager)
开发者ID:collective,项目名称:collective.cart.core,代码行数:7,代码来源:base.py

示例11: test_statusupdate_context_roundtrip

 def test_statusupdate_context_roundtrip(self):
     """Unittests fake uuids. Integration test with real uuids."""
     self.portal.invokeFactory('Folder', 'f1', title=u"Folder 1")
     f1 = self.portal['f1']
     directlyProvides(f1, IMicroblogContext)
     update = StatusUpdate('test', context=f1)
     self.assertEquals(update.context, f1)
开发者ID:Covantec,项目名称:plonesocial.microblog,代码行数:7,代码来源:test_uuid_integration.py

示例12: test_in_intranet

 def test_in_intranet(self):
     from karl.content.interfaces import IIntranets
     from zope.interface import directlyProvides
     intranet = testing.DummyModel()
     directlyProvides(intranet, IIntranets)
     intranet['foo'] = context = testing.DummyModel()
     self.failIf(self._call_fut(context, None))
开发者ID:cguardia,项目名称:karl,代码行数:7,代码来源:test_utils.py

示例13: setUp

    def setUp(self):
        self.portal = self.layer['portal']
        setRoles(self.portal, TEST_USER_ID, ['Manager'])
        workflowTool = getToolByName(self.portal, 'portal_workflow')
        workflowTool.setDefaultChain('simple_publication_workflow')
        workflowTool.updateRoleMappings()
        f1 = api.content.create(self.portal, 'Folder', 'f1', title=u'Folder 1')
        directlyProvides(f1, IMicroblogContext)
        f1.reindexObject()
        f2 = api.content.create(self.portal, 'Folder', 'f2', title=u'Folder 2')
        directlyProvides(f2, IMicroblogContext)
        f2.reindexObject()

        api.content.transition(f2, 'publish')
        self.assertEqual(api.content.get_state(f1), 'private')
        self.assertEqual(api.content.get_state(f2), 'published')

        tool = queryUtility(IMicroblogTool)
        self.su1 = su1 = StatusUpdate('test #foo', f1)
        tool.add(su1)
        self.su2 = su2 = StatusUpdate('test #foo', f2)
        tool.add(su2)
        # the tool is queued
        tool.flush_queue()

        # set up new user
        api.user.create('[email protected]', username='user1', password='secret')
开发者ID:smcmahon,项目名称:ploneintranet,代码行数:27,代码来源:test_permissions.py

示例14: test_workflow_transition_from_custom

 def test_workflow_transition_from_custom(self):
     registerDummyRenderer('templates/edit_acl.pt')
     from repoze.workflow.testing import DummyWorkflow
     from zope.interface import Interface
     from zope.interface import directlyProvides
     workflow = DummyWorkflow()
     def state_info(context, request):
         return [{'name': 'foo', 'current': True, 'transitions': True},
                 {'name': 'bar', 'current': False, 'transitions': True}]
     workflow.state_info = state_info
     def get_dummy_workflow(*args, **kw):
         return workflow
     import karl.views.acl
     old_f = karl.views.acl.get_context_workflow
     karl.views.acl.get_context_workflow = get_dummy_workflow
     try:
         context = testing.DummyModel()
         context.state = 'foo'
         context.__custom_acl__ = []
         directlyProvides(Interface)
         request = testing.DummyRequest()
         request.POST['form.security_state'] = 1
         request.POST['security_state'] = 'bar'
         self._callFUT(context, request)
         self.assertEqual(workflow.transitioned[0]['to_state'], 'bar')
         self.assertEqual(workflow.resetted, [context,])
         self.failIf(hasattr(context, '__custom_acl__'))
     finally:
         karl.views.acl.get_context_workflow = old_f
开发者ID:Falmarri,项目名称:karl,代码行数:29,代码来源:test_acl.py

示例15: test_cutpaste_duplicated_id_object

    def test_cutpaste_duplicated_id_object(self):

        root = self.getRootFolder()

        # Create a principal Folder
        root['pf'] = PrincipalFolder()
        pf = root['pf']

        # Create a principal with p1 as login
        principal = Principal('p1')
        principal.login = 'p1'
        directlyProvides(principal, IInternalPrincipal)

        pf['p1'] = principal

        transaction.commit()
        self.assertEqual(len(pf.keys()), 1)
        #raise str([x for x in pf.keys()])

        response = self.publish('/pf/@@contents.html',
                                basic='mgr:mgrpw',
                                form={'ids': [u'p1'],
                                      'container_cut_button': u'Cut'})
        self.assertEqual(response.getStatus(), 302)


        # Try to paste the file
        try:
            response = self.publish('/pf/@@contents.html',
                                    basic='mgr:mgrpw',
                                    form={'container_paste_button': ''})
        except UserError, e:
            self.assertEqual(
                str(e),
                "The given name(s) [u'p1'] is / are already being used")
开发者ID:wpjunior,项目名称:proled,代码行数:35,代码来源:ftests.py


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