Opened 13 years ago
Last modified 13 years ago
#16217 closed Bug
Test runner doesn't report import errors if models is a directory — at Initial Version
Reported by: | Owned by: | nobody | |
---|---|---|---|
Component: | Testing framework | Version: | 1.3 |
Severity: | Normal | Keywords: | |
Cc: | Triage Stage: | Unreviewed | |
Has patch: | no | Needs documentation: | no |
Needs tests: | no | Patch needs improvement: | no |
Easy pickings: | no | UI/UX: | no |
Description
I have an application whose models module is a directory with models/init.py
That applications tests were mysteriously not being found or run when doing "./manage.py test".
On investigation, I found out this was because there was a syntax error in my test code, and that this wasn't reported because of a bug in django/test/simple.py
If import fails, it tries to find whether the test module is there with this code:
mod = find_module(TEST_MODULE, [os.path.dirname(app_module.__file__)])
Unfortunately, my app module file was models/init.pyc, so that code looked for the module within the models directory.
I don't understand the relationship between import and find_module well enough to know what the fix it.