diff options
| author | Tim Graham <timograham@gmail.com> | 2014-10-06 16:07:20 -0400 |
|---|---|---|
| committer | Tim Graham <timograham@gmail.com> | 2014-10-06 17:35:53 -0400 |
| commit | 9dff5ce7c70780f4ee91567d98dba227093b49e2 (patch) | |
| tree | ad4132cc05dd6ddb5d50a6e64da3b950c2a8ad7d /tests/logging_tests | |
| parent | 6f6e7d01dce94668e178b26da547c4643ed3a6cc (diff) | |
Fixed #23593 -- Fixed crash in AdminEmailHandler with non-ASCII characters in request.
Thanks edevil for the report and Simon Charette for review.
Diffstat (limited to 'tests/logging_tests')
| -rw-r--r-- | tests/logging_tests/tests.py | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/tests/logging_tests/tests.py b/tests/logging_tests/tests.py index fb10ef5ac1..da5ef453b1 100644 --- a/tests/logging_tests/tests.py +++ b/tests/logging_tests/tests.py @@ -1,3 +1,4 @@ +# -*- coding:utf-8 -*- from __future__ import unicode_literals import logging @@ -320,6 +321,26 @@ class AdminEmailHandlerTest(TestCase): mail.mail_admins = orig_mail_admins admin_email_handler.email_backend = orig_email_backend + @override_settings( + ADMINS=(('whatever admin', 'admin@example.com'),), + ) + def test_emit_non_ascii(self): + """ + #23593 - AdminEmailHandler should allow Unicode characters in the + request. + """ + handler = self.get_admin_email_handler(self.logger) + record = self.logger.makeRecord('name', logging.ERROR, 'function', 'lno', 'message', None, None) + rf = RequestFactory() + url_path = '/ยบ' + record.request = rf.get(url_path) + handler.emit(record) + self.assertEqual(len(mail.outbox), 1) + msg = mail.outbox[0] + self.assertEqual(msg.to, ['admin@example.com']) + self.assertEqual(msg.subject, "[Django] ERROR (EXTERNAL IP): message") + self.assertIn("path:%s" % url_path, msg.body) + class SettingsConfigTest(AdminScriptTestCase): """ |
