It's not specific to testing, but it seems that we should mention the
necessity of calling `django.setup()` in the directions for running tests
outside of `manage.py`. I've submitted a pull request with a simple
documentation change: https://github.com/django/django/pull/2419
This may require some more discussion, though. As mjtamlyn points out,
another solution could be to include `django.setup()` in
`setup_test_environment()`. The call to `django.setup()` could also be
moved into the example for using `setup_test_environment()` rather than a
warning in its own.
--
Ticket URL: <https://code.djangoproject.com/ticket/22254>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.
* needs_docs: => 0
* needs_better_patch: => 0
* needs_tests: => 0
* stage: Unreviewed => Accepted
--
Ticket URL: <https://code.djangoproject.com/ticket/22254#comment:1>
* keywords: => app-loading
--
Ticket URL: <https://code.djangoproject.com/ticket/22254#comment:2>
Comment (by peter.landry@…):
Perhaps it would be better to add instructions or information regarding
`django.setup()` in
https://docs.djangoproject.com/en/dev/ref/applications/, then just make a
reference in the testing docs to it in a warning about using django
outside of manage.py?
--
Ticket URL: <https://code.djangoproject.com/ticket/22254#comment:3>
* needs_better_patch: 0 => 1
* has_patch: 0 => 1
* type: Uncategorized => Cleanup/optimization
Comment:
Yes, it seems like we should enhance the documentation of
`django.setup()`. There's some mentions of it in the 1.7 release notes and
a couple other places like `docs/ref/django-admin.txt` and
`docs/intro/tutorial01.txt`.
--
Ticket URL: <https://code.djangoproject.com/ticket/22254#comment:4>
* status: new => assigned
* owner: nobody => aaugustin
* severity: Normal => Release blocker
Comment:
Indeed, django.setup() isn't correctly documented. Sorry about that.
--
Ticket URL: <https://code.djangoproject.com/ticket/22254#comment:5>
Comment (by aaugustin):
https://github.com/django/django/pull/2609 documents django.setup(). Can I
haz review?
I'm not convinced it's worth duplicating that information wherever
setup_test_environment() is useful. If you hit `RuntimeError: App registry
isn't ready yet.` Google will tell you how to fix it in 10 seconds. I'll
let someone else deal with that part if you want to.
--
Ticket URL: <https://code.djangoproject.com/ticket/22254#comment:6>
* needs_better_patch: 1 => 0
* stage: Accepted => Ready for checkin
--
Ticket URL: <https://code.djangoproject.com/ticket/22254#comment:7>
* status: assigned => new
* owner: aaugustin =>
* has_patch: 1 => 0
* severity: Release blocker => Normal
* stage: Ready for checkin => Unreviewed
Comment:
`django.setup()` is now properly documented, so we can re-evaluate if
something needs to be done for `setup_test_environment()`.
--
Ticket URL: <https://code.djangoproject.com/ticket/22254#comment:8>
* owner: => Tim Graham <timograham@…>
* status: new => closed
* resolution: => fixed
Comment:
In [changeset:"26b03f25265227498a2559af807918fe2a1d246f"]:
{{{
#!CommitTicketReference repository=""
revision="26b03f25265227498a2559af807918fe2a1d246f"
Fixed #22254 -- Noted the requirement of calling django.setup() when
running
Thanks Peter Landry for the report.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/22254#comment:9>
Comment (by Tim Graham <timograham@…>):
In [changeset:"305ab00087a29ff400e815187b5568f84d2d8739"]:
{{{
#!CommitTicketReference repository=""
revision="305ab00087a29ff400e815187b5568f84d2d8739"
[1.7.x] Fixed #22254 -- Noted the requirement of calling django.setup()
when running
Thanks Peter Landry for the report.
Backport of 26b03f2526 from master
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/22254#comment:10>