コード例 #1
0
ファイル: test_base.py プロジェクト: atombrella/celery
 def test_get_children(self):
     b = BaseBackend(app=self.app)
     b._get_task_meta_for = Mock()
     b._get_task_meta_for.return_value = {}
     assert b.get_children('id') is None
     b._get_task_meta_for.return_value = {'children': 3}
     assert b.get_children('id') == 3
コード例 #2
0
ファイル: test_base.py プロジェクト: CheeseL0ver/celery
 def test_get_children(self):
     b = BaseBackend(app=self.app)
     b._get_task_meta_for = Mock()
     b._get_task_meta_for.return_value = {}
     self.assertIsNone(b.get_children('id'))
     b._get_task_meta_for.return_value = {'children': 3}
     self.assertEqual(b.get_children('id'), 3)
コード例 #3
0
ファイル: test_base.py プロジェクト: gjames2467/celery
 def test_get_children(self):
     b = BaseBackend(app=self.app)
     b._get_task_meta_for = Mock()
     b._get_task_meta_for.return_value = {}
     self.assertIsNone(b.get_children('id'))
     b._get_task_meta_for.return_value = {'children': 3}
     self.assertEqual(b.get_children('id'), 3)
コード例 #4
0
ファイル: test_base.py プロジェクト: atombrella/celery
    def test_wait_for__on_interval(self):
        self.patching('time.sleep')
        b = BaseBackend(app=self.app)
        b._get_task_meta_for = Mock()
        b._get_task_meta_for.return_value = {'status': states.PENDING}
        callback = Mock(name='callback')
        with pytest.raises(TimeoutError):
            b.wait_for(task_id='1', on_interval=callback, timeout=1)
        callback.assert_called_with()

        b._get_task_meta_for.return_value = {'status': states.SUCCESS}
        b.wait_for(task_id='1', timeout=None)
コード例 #5
0
ファイル: test_base.py プロジェクト: m4ddav3/celery
    def test_wait_for__on_interval(self):
        self.patch("time.sleep")
        b = BaseBackend(app=self.app)
        b._get_task_meta_for = Mock()
        b._get_task_meta_for.return_value = {"status": states.PENDING}
        callback = Mock(name="callback")
        with self.assertRaises(TimeoutError):
            b.wait_for(task_id="1", on_interval=callback, timeout=1)
        callback.assert_called_with()

        b._get_task_meta_for.return_value = {"status": states.SUCCESS}
        b.wait_for(task_id="1", timeout=None)
コード例 #6
0
    def test_get_reaching_max_retries(self):
        self.app.conf.result_backend_always_retry, prev = True, self.app.conf.result_backend_always_retry
        self.app.conf.result_backend_max_retries, prev_max_retries = 0, self.app.conf.result_backend_max_retries

        try:
            b = BaseBackend(app=self.app)
            b.exception_safe_to_retry = lambda exc: True
            b._sleep = Mock()
            b._get_task_meta_for = Mock()
            b._get_task_meta_for.side_effect = [
                Exception("failed"),
                {'status': states.SUCCESS, 'result': 42}
            ]
            try:
                b.get_task_meta(sentinel.task_id)
                assert False
            except BackendGetMetaError:
                assert b._sleep.call_count == 0
        finally:
            self.app.conf.result_backend_always_retry = prev
            self.app.conf.result_backend_max_retries = prev_max_retries