Exemple #1
0
    def test_workflow01(self):
        we0 = GenericWorkflowEngine()
        we1 = GenericWorkflowEngine()
        we2 = GenericWorkflowEngine()

        d0 = self.getDoc()
        d1 = self.getDoc()
        d2 = self.getDoc()

        we0.addManyCallbacks('*', [
            m('mouse'),
            [m('dog'), call_forward(1),
             m('cat'), m('puppy')],
            m('horse'),
        ])
        we1.setWorkflow([
            m('mouse'),
            [m('dog'), call_forward(1),
             m('cat'), m('puppy')],
            m('horse'),
        ])
        we2.addManyCallbacks('x', [
            m('mouse'),
            [m('dog'), call_forward(1),
             m('cat'), m('puppy')],
            m('horse'),
        ])
        we2.configure(callback_chooser=lambda o, e: e.getCallbacks('x'))

        we0.process(d0)
        we1.process(d1)
        we2.process(d2)

        assert d0 == d1
        assert d0 == d2
Exemple #2
0
    def test_configure(self):

        d1 = self.getDoc()
        d2 = self.getDoc()
        d3 = self.getDoc()

        we = GenericWorkflowEngine()
        we.addManyCallbacks('*', [
            m('mouse'),
            [m('dog'), call_forward(1),
             m('cat'), m('puppy')],
            m('horse'),
        ])

        # process using defaults
        we.process(d1)
        r = 'one mouse dog cat puppy horse'.split()

        # pass our own callback chooser
        we.configure(callback_chooser=asterisk_chooser)
        we.process(d2)

        assert d1[0] == r
        assert d2[0] == r
        assert d1 == d2

        # configure it wrongly
        we.configure(callback_chooser='')

        self.failUnlessRaises(Exception, we.process, d3)

        assert d3 == self.getDoc()
    def test_workflow01(self):
        we0 = GenericWorkflowEngine()
        we1 = GenericWorkflowEngine()
        we2 = GenericWorkflowEngine()

        d0 = self.getDoc()
        d1 = self.getDoc()
        d2 = self.getDoc()

        we0.addManyCallbacks('*', [
            m('mouse'),
            [m('dog'), call_forward(1), m('cat'), m('puppy')],
            m('horse'),
        ])
        we1.setWorkflow([
            m('mouse'),
            [m('dog'), call_forward(1), m('cat'), m('puppy')],
            m('horse'),
        ])
        we2.addManyCallbacks('x', [
            m('mouse'),
            [m('dog'), call_forward(1), m('cat'), m('puppy')],
            m('horse'),
        ])
        we2.configure(callback_chooser=lambda o, e: e.getCallbacks('x'))

        we0.process(d0)
        we1.process(d1)
        we2.process(d2)

        assert d0 == d1
        assert d0 == d2
Exemple #4
0
    def test_configure(self):

        callbacks_list = [
            obj_append('mouse'),
            [
                obj_append('dog'),
                jump_call(1),
                obj_append('cat'),
                obj_append('puppy')
            ],
            obj_append('horse'),
        ]

        we = GenericWorkflowEngine()
        we.addManyCallbacks('*', callbacks_list)

        # process using defaults
        we.process(self.d1)
        r = 'one mouse dog cat puppy horse'.split()

        we = GenericWorkflowEngine()
        we.addManyCallbacks('*', callbacks_list)
        we.process(self.d2)

        assert self.d1[0] == r
        assert self.d2[0] == r
        assert self.d1 == self.d2
    def test_configure(self):

        d1 = self.getDoc()
        d2 = self.getDoc()
        d3 = self.getDoc()

        we = GenericWorkflowEngine()
        we.addManyCallbacks('*', [
            m('mouse'),
            [m('dog'), call_forward(1), m('cat'), m('puppy')],
            m('horse'),
        ])

        # process using defaults
        we.process(d1)
        r = 'one mouse dog cat puppy horse'.split()

        # pass our own callback chooser
        we.configure(callback_chooser=asterisk_chooser)
        we.process(d2)

        assert d1[0] == r
        assert d2[0] == r
        assert d1 == d2

        # configure it wrongly
        we.configure(callback_chooser='')

        self.failUnlessRaises(Exception, we.process, d3)

        assert d3 == self.getDoc()
    def test_workflow01(self):

        class GenericWEWithXChooser(GenericWorkflowEngine):
            def callback_chooser(self, obj):
                return self.callbacks.get('x')

        we0 = GenericWorkflowEngine()
        we1 = GenericWorkflowEngine()
        we2 = GenericWEWithXChooser()

        we0.addManyCallbacks('*', [
            obj_append('mouse'),
            [obj_append('dog'), jump_call(1), obj_append('cat'), obj_append('puppy')],
            obj_append('horse'),
        ])
        we1.setWorkflow([
            obj_append('mouse'),
            [obj_append('dog'), jump_call(1), obj_append('cat'), obj_append('puppy')],
            obj_append('horse'),
        ])
        we2.addManyCallbacks('x', [
            obj_append('mouse'),
            [obj_append('dog'), jump_call(1), obj_append('cat'), obj_append('puppy')],
            obj_append('horse'),
        ])

        we0.process(self.d0)
        we1.process(self.d1)
        we2.process(self.d2)

        assert self.d0 == self.d1
        assert self.d0 == self.d2
    def test_init(self):

        # init with empty to full parameters
        we1 = GenericWorkflowEngine()

        callbacks = [
            obj_append('mouse'),
            [obj_append('dog'), jump_call(1), obj_append('cat'), obj_append('puppy')],
            obj_append('horse'),
        ]

        we1.addManyCallbacks('*', deepcopy(callbacks))

        we1.process(self.d1)
Exemple #8
0
    def test_workflow01(self):
        class GenericWEWithXChooser(GenericWorkflowEngine):
            def callback_chooser(self, obj):
                return self.callbacks.get('x')

        we0 = GenericWorkflowEngine()
        we1 = GenericWorkflowEngine()
        we2 = GenericWEWithXChooser()

        we0.addManyCallbacks('*', [
            obj_append('mouse'),
            [
                obj_append('dog'),
                jump_call(1),
                obj_append('cat'),
                obj_append('puppy')
            ],
            obj_append('horse'),
        ])
        we1.setWorkflow([
            obj_append('mouse'),
            [
                obj_append('dog'),
                jump_call(1),
                obj_append('cat'),
                obj_append('puppy')
            ],
            obj_append('horse'),
        ])
        we2.addManyCallbacks('x', [
            obj_append('mouse'),
            [
                obj_append('dog'),
                jump_call(1),
                obj_append('cat'),
                obj_append('puppy')
            ],
            obj_append('horse'),
        ])

        we0.process(self.d0)
        we1.process(self.d1)
        we2.process(self.d2)

        assert self.d0 == self.d1
        assert self.d0 == self.d2
Exemple #9
0
    def test_init(self):

        # init with empty to full parameters
        we1 = GenericWorkflowEngine()

        callbacks = [
            obj_append('mouse'),
            [
                obj_append('dog'),
                jump_call(1),
                obj_append('cat'),
                obj_append('puppy')
            ],
            obj_append('horse'),
        ]

        we1.addManyCallbacks('*', deepcopy(callbacks))

        we1.process(self.d1)
    def test_configure(self):

        callbacks_list = [
            obj_append('mouse'),
            [obj_append('dog'), jump_call(1), obj_append('cat'), obj_append('puppy')],
            obj_append('horse'),
        ]

        we = GenericWorkflowEngine()
        we.addManyCallbacks('*', callbacks_list)

        # process using defaults
        we.process(self.d1)
        r = 'one mouse dog cat puppy horse'.split()

        we = GenericWorkflowEngine()
        we.addManyCallbacks('*', callbacks_list)
        we.process(self.d2)

        assert self.d1[0] == r
        assert self.d2[0] == r
        assert self.d1 == self.d2
    def test_init(self):
        d1 = self.getDoc()
        d2 = self.getDoc()
        d3 = self.getDoc()

        # init with empty to full parameters
        we1 = GenericWorkflowEngine()
        we2 = GenericWorkflowEngine(callback_chooser=asterisk_chooser)

        try:
            we3 = GenericWorkflowEngine(processing_factory='x',
                                        callback_chooser='x',
                                        before_processing='x',
                                        after_processing='x')
        except Exception as msg:
            assert 'must be a callable' in str(msg)

        try:
            we3 = GenericWorkflowEngine(callback_chooser=asterisk_chooser,
                                        after_processing='x')
        except Exception as msg:
            assert 'must be a callable' in str(msg)

        we1.addManyCallbacks('*', [
            m('mouse'),
            [m('dog'), call_forward(1), m('cat'), m('puppy')],
            m('horse'),
        ])
        we2.addManyCallbacks('*', [
            m('mouse'),
            [m('dog'), call_forward(1), m('cat'), m('puppy')],
            m('horse'),
        ])

        we1.process(d1)
        we2.process(d2)