test_utils_encoding.py 733 B

123456789101112131415161718192021222324252627
  1. from celery.utils import encoding
  2. from celery.tests.utils import unittest
  3. class test_encoding(unittest.TestCase):
  4. def test_smart_str(self):
  5. self.assertTrue(encoding.safe_str(object()))
  6. self.assertTrue(encoding.safe_str("foo"))
  7. self.assertTrue(encoding.safe_str(u"foo"))
  8. class foo(unicode):
  9. def encode(self, *args, **kwargs):
  10. raise UnicodeDecodeError("foo")
  11. self.assertIn("<Unrepresentable", encoding.safe_str(foo()))
  12. def test_safe_repr(self):
  13. self.assertTrue(encoding.safe_repr(object()))
  14. class foo(object):
  15. def __repr__(self):
  16. raise ValueError("foo")
  17. self.assertTrue(encoding.safe_repr(foo()))