Example #1
0
 def setup(self):
     self.maybe_signature = self.patching('celery.canvas.maybe_signature')
     self.maybe_signature.side_effect = pass1
     self.app.producer_or_acquire = Mock()
     self.app.producer_or_acquire.attach_mock(
         ContextMock(serializer='json'), 'return_value'
     )
     self.app.conf.task_always_eager = True
     self.task = builtins.add_group_task(self.app)
     super().setup()
Example #2
0
 def test_on_chord_part_return__ChordError(self):
     with self.chord_context(1) as (_, request, callback):
         self.b.client.pipeline = ContextMock()
         raise_on_second_call(self.b.client.pipeline, ChordError())
         self.b.client.pipeline.return_value.zadd().zcount().get().get().expire(
         ).expire().expire().execute.return_value = (1, 1, 0, b'1', 4, 5, 6)
         task = self.app._tasks['add'] = Mock(name='add_task')
         self.b.on_chord_part_return(request, states.SUCCESS, 10)
         task.backend.fail_from_current_stack.assert_called_with(
             callback.id, exc=ANY,
         )
Example #3
0
 def test_send_task__connection_provided(self):
     connection = Mock(name='connection')
     router = Mock(name='router')
     router.route.return_value = {}
     self.app.amqp = Mock(name='amqp')
     self.app.amqp.Producer.attach_mock(ContextMock(), 'return_value')
     self.app.send_task('foo', (1, 2), connection=connection, router=router)
     self.app.amqp.Producer.assert_called_with(connection,
                                               auto_declare=False)
     self.app.amqp.send_task_message.assert_called_with(
         self.app.amqp.Producer(), 'foo',
         self.app.amqp.create_task_message())
Example #4
0
    def test_on_chord_part_return__ChordError__unordered(self):
        self.app.conf.result_backend_transport_options = dict(
            result_chord_ordered=False,
        )

        with self.chord_context(1) as (_, request, callback):
            self.b.client.pipeline = ContextMock()
            raise_on_second_call(self.b.client.pipeline, ChordError())
            self.b.client.pipeline.return_value.rpush().llen().get().get().expire(
            ).expire().expire().execute.return_value = (1, 1, 0, b'1', 4, 5, 6)
            task = self.app._tasks['add'] = Mock(name='add_task')
            self.b.on_chord_part_return(request, states.SUCCESS, 10)
            task.backend.fail_from_current_stack.assert_called_with(
                callback.id, exc=ANY,
            )
Example #5
0
def _amqp_connection():
    connection = ContextMock(name='Connection')
    connection.return_value = ContextMock(name='connection')
    connection.return_value.transport.driver_type = 'amqp'
    return connection