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


Python AMQPBackend.store_result方法代码示例

本文整理汇总了Python中celery.backends.amqp.AMQPBackend.store_result方法的典型用法代码示例。如果您正苦于以下问题:Python AMQPBackend.store_result方法的具体用法?Python AMQPBackend.store_result怎么用?Python AMQPBackend.store_result使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在celery.backends.amqp.AMQPBackend的用法示例。


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

示例1: test_store_result

# 需要导入模块: from celery.backends.amqp import AMQPBackend [as 别名]
# 或者: from celery.backends.amqp.AMQPBackend import store_result [as 别名]
    def test_store_result(self):
        b = AMQPBackend(self.app)
        tid = uuid()

        request = Context(args=(1, 2, 3), kwargs={'foo': 'bar'},
                          task_name='mytask', retries=2,
                          hostname='[email protected]_1',
                          delivery_info={'routing_key': 'celery'})

        b.store_result(tid, {'fizz': 'buzz'}, states.SUCCESS, request=request)

        meta = b.get_task_meta(tid)
        assert meta == {
            'args': [1, 2, 3],
            'children': [],
            'kwargs': {'foo': 'bar'},
            'name': 'mytask',
            'queue': 'celery',
            'result': {'fizz': 'buzz'},
            'retries': 2,
            'status': 'SUCCESS',
            'task_id': tid,
            'traceback': None,
            'worker': '[email protected]_1',
        }
开发者ID:celery,项目名称:celery,代码行数:27,代码来源:test_amqp.py

示例2: test_store_result_retries

# 需要导入模块: from celery.backends.amqp import AMQPBackend [as 别名]
# 或者: from celery.backends.amqp.AMQPBackend import store_result [as 别名]
    def test_store_result_retries(self):
        iterations = [0]
        stop_raising_at = [5]

        def publish(*args, **kwargs):
            if iterations[0] > stop_raising_at[0]:
                return
            iterations[0] += 1
            raise KeyError("foo")

        backend = AMQPBackend()
        from celery.app.amqp import TaskProducer
        prod, TaskProducer.publish = TaskProducer.publish, publish
        try:
            with self.assertRaises(KeyError):
                backend.retry_policy["max_retries"] = None
                backend.store_result("foo", "bar", "STARTED")

            with self.assertRaises(KeyError):
                backend.retry_policy["max_retries"] = 10
                backend.store_result("foo", "bar", "STARTED")
        finally:
            TaskProducer.publish = prod
开发者ID:AdrianRibao,项目名称:celery,代码行数:25,代码来源:test_amqp.py

示例3: test_store_result_retries

# 需要导入模块: from celery.backends.amqp import AMQPBackend [as 别名]
# 或者: from celery.backends.amqp.AMQPBackend import store_result [as 别名]
    def test_store_result_retries(self):
        iterations = [0]
        stop_raising_at = [5]

        def publish(*args, **kwargs):
            if iterations[0] > stop_raising_at[0]:
                return
            iterations[0] += 1
            raise KeyError('foo')

        backend = AMQPBackend(self.app)
        from celery.app.amqp import Producer
        prod, Producer.publish = Producer.publish, publish
        try:
            with self.assertRaises(KeyError):
                backend.retry_policy['max_retries'] = None
                backend.store_result('foo', 'bar', 'STARTED')

            with self.assertRaises(KeyError):
                backend.retry_policy['max_retries'] = 10
                backend.store_result('foo', 'bar', 'STARTED')
        finally:
            Producer.publish = prod
开发者ID:343829084,项目名称:celery,代码行数:25,代码来源:test_amqp.py


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