示例#1
0
 def test_route_for_task(self):
     set_queues(self.app, foo=self.a_queue, bar=self.b_queue)
     expand = E(self.app, self.app.amqp.queues)
     route = routes.MapRoute({self.mytask.name: self.b_queue})
     eroute = expand(route(self.mytask.name))
     for key, value in items(self.b_queue):
         assert eroute[key] == value
     assert route('celery.awesome') is None
示例#2
0
 def test_route_for_task(self):
     expand = E(current_app.amqp.queues)
     route = routes.MapRoute({mytask.name: b_queue})
     self.assertDictContainsSubset(
         b_queue,
         expand(route.route_for_task(mytask.name)),
     )
     self.assertIsNone(route.route_for_task('celery.awesome'))
示例#3
0
 def test_route_for_task_expanded_route(self):
     expand = E(current_app.amqp.queues)
     route = routes.MapRoute({mytask.name: {'queue': 'foo'}})
     self.assertEqual(
         expand(route.route_for_task(mytask.name))['queue'].name,
         'foo',
     )
     self.assertIsNone(route.route_for_task('celery.awesome'))
示例#4
0
 def test_route_for_task(self):
     set_queues(self.app, foo=self.a_queue, bar=self.b_queue)
     expand = E(self.app, self.app.amqp.queues)
     route = routes.MapRoute({self.mytask.name: self.b_queue})
     self.assertDictContainsSubset(
         self.b_queue,
         expand(route.route_for_task(self.mytask.name)),
     )
     self.assertIsNone(route.route_for_task('celery.awesome'))
示例#5
0
 def test_route_for_task_expanded_route(self):
     set_queues(self.app, foo=self.a_queue, bar=self.b_queue)
     expand = E(self.app, self.app.amqp.queues)
     route = routes.MapRoute({self.mytask.name: {'queue': 'foo'}})
     self.assertEqual(
         expand(route.route_for_task(self.mytask.name))['queue'].name,
         'foo',
     )
     self.assertIsNone(route.route_for_task('celery.awesome'))
示例#6
0
 def test_route_for_task__glob(self):
     route = routes.MapRoute([
         ('proj.tasks.*', 'routeA'),
         ('demoapp.tasks.bar.*', {
             'exchange': 'routeB'
         }),
     ])
     assert route('proj.tasks.foo') == {'queue': 'routeA'}
     assert route('demoapp.tasks.bar.moo') == {'exchange': 'routeB'}
     assert route('demoapp.foo.bar.moo') is None
示例#7
0
    def test_route_for_task__glob(self):
        from re import compile

        route = routes.MapRoute([
            ('proj.tasks.*', 'routeA'),
            ('demoapp.tasks.bar.*', {'exchange': 'routeB'}),
            (compile(r'(video|image)\.tasks\..*'), {'queue': 'media'}),
        ])
        assert route('proj.tasks.foo') == {'queue': 'routeA'}
        assert route('demoapp.tasks.bar.moo') == {'exchange': 'routeB'}
        assert route('video.tasks.foo') == {'queue': 'media'}
        assert route('image.tasks.foo') == {'queue': 'media'}
        assert route('demoapp.foo.bar.moo') is None
示例#8
0
 def test_route_for_task__glob(self):
     route = routes.MapRoute([
         ('proj.tasks.*', 'routeA'),
         ('demoapp.tasks.bar.*', {
             'exchange': 'routeB'
         }),
     ])
     self.assertDictEqual(
         route.route_for_task('proj.tasks.foo'),
         {'queue': 'routeA'},
     )
     self.assertDictEqual(
         route.route_for_task('demoapp.tasks.bar.moo'),
         {'exchange': 'routeB'},
     )
     self.assertIsNone(route.route_for_task('demoapp.foo.bar.moo'), )
示例#9
0
 def test_expand_route_not_found(self):
     expand = E(self.app,
                self.app.amqp.Queues(self.app.conf.task_queues, False))
     route = routes.MapRoute({'a': {'queue': 'x'}})
     with pytest.raises(QueueNotFound):
         expand(route('a'))
示例#10
0
 def test_route_for_task_expanded_route(self):
     set_queues(self.app, foo=self.a_queue, bar=self.b_queue)
     expand = E(self.app, self.app.amqp.queues)
     route = routes.MapRoute({self.mytask.name: {'queue': 'foo'}})
     assert expand(route(self.mytask.name))['queue'].name == 'foo'
     assert route('celery.awesome') is None
示例#11
0
 def test_expand_route_not_found(self):
     expand = E(
         current_app.amqp.Queues(current_app.conf.CELERY_QUEUES, False))
     route = routes.MapRoute({'a': {'queue': 'x'}})
     with self.assertRaises(QueueNotFound):
         expand(route.route_for_task('a'))
示例#12
0
 def test_expand_route_not_found(self):
     expand = E(current_app.amqp.Queues(
                 current_app.conf.CELERY_QUEUES, False))
     route = routes.MapRoute({"a": {"queue": "x"}})
     with self.assertRaises(QueueNotFound):
         expand(route.route_for_task("a"))
示例#13
0
 def test_route_for_task_expanded_route(self):
     expand = E(current_app.amqp.queues)
     route = routes.MapRoute({mytask.name: {"queue": "foo"}})
     self.assertAnswer(expand(route.route_for_task(mytask.name)), a_queue)
     self.assertIsNone(route.route_for_task("celery.awesome"))
示例#14
0
 def test_route_for_task(self):
     expand = E(current_app.conf.CELERY_QUEUES)
     route = routes.MapRoute({mytask.name: b_queue})
     self.assertDictContainsSubset(
         b_queue, expand(route.route_for_task(mytask.name)))
     self.assertIsNone(route.route_for_task("celery.awesome"))