#26009 closed Bug (fixed)
contenttypes_tests fail when run in isolation
Reported by: | Marten Kenbeek | Owned by: | nobody |
---|---|---|---|
Component: | Testing framework | Version: | 1.9 |
Severity: | Normal | Keywords: | |
Cc: | Triage Stage: | Accepted | |
Has patch: | yes | Needs documentation: | no |
Needs tests: | no | Patch needs improvement: | no |
Easy pickings: | no | UI/UX: | no |
Description (last modified by )
3 models in tests/order_with_respect_to/models.py
are missing an explicit app_label
.
$ python runtests.py --parallel=1 contenttypes_tests.test_order_with_respect_to Testing against Django installed in '/vagrant/django/django' Traceback (most recent call last): File "runtests.py", line 450, in <module> options.debug_sql, options.parallel) File "runtests.py", line 267, in django_tests extra_tests=extra_tests, File "/vagrant/django/django/test/runner.py", line 531, in run_tests suite = self.build_suite(test_labels, extra_tests) File "/vagrant/django/django/test/runner.py", line 422, in build_suite tests = self.test_loader.loadTestsFromName(label) File "/usr/lib/python3.4/unittest/loader.py", line 105, in loadTestsFromName module = __import__('.'.join(parts_copy)) File "/vagrant/django/tests/contenttypes_tests/test_order_with_respect_to.py", line 1, in <module> from order_with_respect_to.tests import ( File "/vagrant/django/tests/order_with_respect_to/tests.py", line 9, in <module> from .models import Answer, Dimension, Entity, Post, Question File "/vagrant/django/tests/order_with_respect_to/models.py", line 48, in <module> class Entity(models.Model): File "/vagrant/django/django/db/models/base.py", line 102, in __new__ "INSTALLED_APPS." % (module, name) RuntimeError: Model class order_with_respect_to.models.Entity doesn't declare an explicit app_label and isn't in an application in INSTALLED_APPS.
Attachments (1)
Change History (9)
comment:1 by , 9 years ago
Description: | modified (diff) |
---|
comment:2 by , 9 years ago
by , 9 years ago
Attachment: | 26009.diff added |
---|
comment:3 by , 9 years ago
Easy pickings: | unset |
---|---|
Has patch: | set |
Triage Stage: | Unreviewed → Accepted |
Like the attached patch? I'm not too sure how proper model sharing works between test apps.
comment:4 by , 9 years ago
Here is the commit that introduced it: 7bec480fe2ace94c8e7f0c88485442bfa74436b4
Maybe a better solution is to make tetts/order_with_respect_to/models.py
into a module and separate the models that are reused and those that are not. This might allow specifying app_label
on only the shared models. On other hand, if there's a reason why we shouldn't share models, then I guess we'll just have to copy the models and try to keep them in sync.
comment:5 by , 9 years ago
contenttypes_tests/order_with_respect_to.py
currently imports the testcases from order_with_respect_to/tests.py
. We can factor out the functionality in those testcases into base testcases in a separate module, then you won't have to import those models in contenttypes_tests
.
comment:6 by , 9 years ago
Okay, I've moved the shared tests to base_tests.py
. There's a small design decision I commented about in the pull request.
What about preventing
contenttypes_tests
from importing models from another test application instead?