12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 |
- from __future__ import absolute_import
- from celery.utils.text import (
- indent,
- ensure_2lines,
- abbr,
- truncate,
- abbrtask,
- pretty,
- )
- from celery.tests.case import AppCase, Case
- RANDTEXT = """\
- The quick brown
- fox jumps
- over the
- lazy dog\
- """
- RANDTEXT_RES = """\
- The quick brown
- fox jumps
- over the
- lazy dog\
- """
- QUEUES = {
- 'queue1': {
- 'exchange': 'exchange1',
- 'exchange_type': 'type1',
- 'routing_key': 'bind1',
- },
- 'queue2': {
- 'exchange': 'exchange2',
- 'exchange_type': 'type2',
- 'routing_key': 'bind2',
- },
- }
- QUEUE_FORMAT1 = '.> queue1 exchange=exchange1(type1) key=bind1'
- QUEUE_FORMAT2 = '.> queue2 exchange=exchange2(type2) key=bind2'
- class test_Info(AppCase):
- def test_textindent(self):
- self.assertEqual(indent(RANDTEXT, 4), RANDTEXT_RES)
- def test_format_queues(self):
- self.app.amqp.queues = self.app.amqp.Queues(QUEUES)
- self.assertEqual(sorted(self.app.amqp.queues.format().split('\n')),
- sorted([QUEUE_FORMAT1, QUEUE_FORMAT2]))
- def test_ensure_2lines(self):
- self.assertEqual(
- len(ensure_2lines('foo\nbar\nbaz\n').splitlines()), 3,
- )
- self.assertEqual(
- len(ensure_2lines('foo\nbar').splitlines()), 2,
- )
- class test_utils(Case):
- def test_truncate_text(self):
- self.assertEqual(truncate('ABCDEFGHI', 3), 'ABC...')
- self.assertEqual(truncate('ABCDEFGHI', 10), 'ABCDEFGHI')
- def test_abbr(self):
- self.assertEqual(abbr(None, 3), '???')
- self.assertEqual(abbr('ABCDEFGHI', 6), 'ABC...')
- self.assertEqual(abbr('ABCDEFGHI', 20), 'ABCDEFGHI')
- self.assertEqual(abbr('ABCDEFGHI', 6, None), 'ABCDEF')
- def test_abbrtask(self):
- self.assertEqual(abbrtask(None, 3), '???')
- self.assertEqual(
- abbrtask('feeds.tasks.refresh', 10),
- '[.]refresh',
- )
- self.assertEqual(
- abbrtask('feeds.tasks.refresh', 30),
- 'feeds.tasks.refresh',
- )
- def test_pretty(self):
- self.assertTrue(pretty(('a', 'b', 'c')))
|