Refactored tests that rely on an ImportError for Python 3.5 compatibility

A change in Python test discovery [1] causes the old packages that raised
an error to be discovered; now we use a common directory that's
ignored during discovery. Refs #23763.

[1] http://bugs.python.org/issue7559
This commit is contained in:
Tim Graham 2015-02-03 18:02:59 -05:00
parent 65e005f8cd
commit c0cc8f69e7
6 changed files with 6 additions and 4 deletions

View File

@ -1 +0,0 @@
raise ImportError("Oops")

View File

@ -172,7 +172,7 @@ class AppsTests(TestCase):
App discovery should preserve stack traces. Regression test for #22920.
"""
with six.assertRaisesRegex(self, ImportError, "Oops"):
with self.settings(INSTALLED_APPS=['apps.failing_app']):
with self.settings(INSTALLED_APPS=['import_error_package']):
pass
def test_models_py(self):

View File

@ -0,0 +1,3 @@
# A package that raises an ImportError that can be shared among test apps and
# excluded from test discovery.
raise ImportError("Oops")

View File

@ -1 +0,0 @@
import fake_python_module # NOQA

View File

@ -159,7 +159,7 @@ class LoaderTests(TestCase):
migration_loader.get_migration_by_prefix("migrations", "blarg")
def test_load_import_error(self):
with override_settings(MIGRATION_MODULES={"migrations": "migrations.faulty_migrations.import_error"}):
with override_settings(MIGRATION_MODULES={"migrations": "import_error_package"}):
with self.assertRaises(ImportError):
MigrationLoader(connection)

View File

@ -35,6 +35,7 @@ os.environ['DJANGO_TEST_TEMP_DIR'] = TEMP_DIR
SUBDIRS_TO_SKIP = [
'data',
'import_error_package',
'test_discovery_sample',
'test_discovery_sample2',
'test_runner_deprecation_app',