diff options
| author | SusanTan <onceuponatimeforever@gmail.com> | 2013-07-02 01:19:44 -0700 |
|---|---|---|
| committer | Tim Graham <timograham@gmail.com> | 2013-07-03 11:11:04 -0400 |
| commit | 75041d5ea3821912abf8b9d1cd5477228a78cb23 (patch) | |
| tree | 8224f8f332a6391a455a6b637d261d0e80a4eb64 /docs | |
| parent | 2f9e5483f6e65bcc0364833517fdae26f1b8c885 (diff) | |
[1.6.x] Fixed #20609 -- Documented how to use request.user with RequestFactory
Thanks michel@ for the suggestion.
Backport of 067e0424ce from master.
Diffstat (limited to 'docs')
| -rw-r--r-- | docs/topics/testing/advanced.txt | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/docs/topics/testing/advanced.txt b/docs/topics/testing/advanced.txt index 8f7f093901..2417274ab5 100644 --- a/docs/topics/testing/advanced.txt +++ b/docs/topics/testing/advanced.txt @@ -37,18 +37,25 @@ Example The following is a simple unit test using the request factory:: - from django.utils import unittest + from django.contrib.auth.models import User + from django.test import TestCase from django.test.client import RequestFactory - class SimpleTest(unittest.TestCase): + class SimpleTest(TestCase): def setUp(self): # Every test needs access to the request factory. self.factory = RequestFactory() + self.user = User.objects.create_user( + first_name='jacob', email='jacob@…', password='top_secret') def test_details(self): # Create an instance of a GET request. request = self.factory.get('/customer/details') + # Recall that middleware are not suported. You can simulate a + # logged-in user by setting request.user manually. + request.user = self.user + # Test my_view() as if it were deployed at /customer/details response = my_view(request) self.assertEqual(response.status_code, 200) |
