コード例 #1
0
    def setUp(self):
        portal = self.layer['portal']

        req = self.getRequest(
            {
                'workflow-name': 'workflow-1',
                'form.actions.add': 'create',
                'clone-from-workflow': 'simple_publication_workflow'
            }, True)
        alsoProvides(req, IAttributeAnnotatable)
        AddWorkflow(portal, req)()

        # add some rules/actions
        req = self.getRequest(
            {
                'form.actions.add': 'Add',
                'selected-transition': 'publish',
                'selected-state': 'published',
                'selected-workflow': 'workflow-1'
            }, True)
        view = AddActionView(portal, req)
        view()
        self.selected_workflow = view.selected_workflow
        self.selected_transition = view.selected_transition
        self.selected_state = view.selected_state

        am = ActionManager()
        rule = am.get_rule(self.selected_transition)
        action = NotifyAction()
        action.message = 'foobar'
        action.message_type = 'info'
        rule.actions.append(action)
コード例 #2
0
    def setUp(self):
        portal = self.layer['portal']

        req = self.getRequest({'workflow-name': 'workflow-1',
            'form.actions.add': 'create',
            'clone-from-workflow': 'simple_publication_workflow'}, True)
        alsoProvides(req, IAttributeAnnotatable)
        AddWorkflow(portal, req)()

        # add some rules/actions
        req = self.getRequest({
            'form.actions.add': 'Add',
            'selected-transition': 'publish',
            'selected-state': 'published',
            'selected-workflow': 'workflow-1'}, True)
        view = AddActionView(portal, req)
        view()
        self.selected_workflow = view.selected_workflow
        self.selected_transition = view.selected_transition
        self.selected_state = view.selected_state

        am = ActionManager()
        rule = am.get_rule(self.selected_transition)
        action = NotifyAction()
        action.message = 'foobar'
        action.message_type = 'info'
        rule.actions.append(action)
コード例 #3
0
    def testExecute(self):
        e = NotifyAction()
        e.message = 'Hello world'
        e.message_type = 'info'

        ex = getMultiAdapter((self.folder, e, DummyEvent()), IExecutable)
        self.assertEqual(True, ex())

        new_cookies = self.request.RESPONSE.cookies[STATUSMESSAGEKEY]
        messages = _decodeCookieValue(new_cookies['value'])
        self.assertEqual(1, len(messages))
        self.assertEqual('Hello world', messages[0].message)
        self.assertEqual('info', messages[0].type)
コード例 #4
0
    def testExecute(self):
        e = NotifyAction()
        e.message = 'Hello world'
        e.message_type = 'info'

        ex = getMultiAdapter((self.folder, e, DummyEvent()), IExecutable)
        self.assertEqual(True, ex())

        new_cookies = self.request.RESPONSE.cookies[STATUSMESSAGEKEY]
        messages = _decodeCookieValue(new_cookies['value'])
        self.assertEqual(1, len(messages))
        self.assertEqual('Hello world', messages[0].message)
        self.assertEqual('info', messages[0].type)
コード例 #5
0
 def testInvokeEditView(self):
     element = getUtility(IRuleAction, name='plone.actions.Notify')
     e = NotifyAction()
     editview = getMultiAdapter((e, self.request), name=element.editview)
     self.assertTrue(isinstance(editview, NotifyEditFormView))
コード例 #6
0
 def testInvokeEditView(self):
     element = getUtility(IRuleAction, name='plone.actions.Notify')
     e = NotifyAction()
     editview = getMultiAdapter((e, self.folder.REQUEST),
                                name=element.editview)
     self.failUnless(isinstance(editview, NotifyEditForm))