Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Fixed #19833 -- Fixed import parameter encoding in get_runner

Thanks Danilo Bargen for the report.
  • Loading branch information...
commit 632361611c6386696dc525ad3aecf065e6ed98ee 1 parent e74e207
@claudep claudep authored
View
7 django/test/utils.py
@@ -4,12 +4,13 @@
from django.conf import settings, UserSettingsHolder
from django.core import mail
-from django.test.signals import template_rendered, setting_changed
from django.template import Template, loader, TemplateDoesNotExist
from django.template.loaders import cached
-from django.utils.translation import deactivate
+from django.test.signals import template_rendered, setting_changed
+from django.utils.encoding import force_str
from django.utils.functional import wraps
from django.utils import six
+from django.utils.translation import deactivate
__all__ = (
@@ -133,7 +134,7 @@ def get_runner(settings, test_runner_class=None):
test_module_name = '.'.join(test_path[:-1])
else:
test_module_name = '.'
- test_module = __import__(test_module_name, {}, {}, test_path[-1])
+ test_module = __import__(test_module_name, {}, {}, force_str(test_path[-1]))
test_runner = getattr(test_module, test_path[-1])
return test_runner
View
7 tests/regressiontests/test_runner/tests.py
@@ -1,7 +1,7 @@
"""
Tests for django test runner
"""
-from __future__ import absolute_import
+from __future__ import absolute_import, unicode_literals
import sys
from optparse import make_option
@@ -150,6 +150,11 @@ def test_custom_test_runner(self):
self.assertTrue(MockTestRunner.invoked,
"The custom test runner has not been invoked")
+ def test_bad_test_runner(self):
+ with self.assertRaises(AttributeError):
+ call_command('test', 'sites',
+ testrunner='regressiontests.test_runner.NonExistentRunner')
+
class CustomOptionsTestRunner(simple.DjangoTestSuiteRunner):
option_list = (
Please sign in to comment.
Something went wrong with that request. Please try again.