diff options
| author | Marko Tibold | 2012-12-06 23:47:47 +0100 |
|---|---|---|
| committer | Marko Tibold | 2012-12-06 23:47:47 +0100 |
| commit | c65f22e0e4e5475aebd848b4db6b282ce524a8f3 (patch) | |
| tree | bc9a30099abfca3aa11bf4969db64db2affe950c /rest_framework/tests/request.py | |
| parent | 899f96ae9186e68009dba5d54246232d34457354 (diff) | |
| parent | 6a5f4f2a90ab19a8586a9d762c9b2618e8db5c30 (diff) | |
| download | django-rest-framework-c65f22e0e4e5475aebd848b4db6b282ce524a8f3.tar.bz2 | |
Merge branch 'master' of https://github.com/tomchristie/django-rest-framework into #431
Diffstat (limited to 'rest_framework/tests/request.py')
| -rw-r--r-- | rest_framework/tests/request.py | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/rest_framework/tests/request.py b/rest_framework/tests/request.py index ff48f3fa..2850992d 100644 --- a/rest_framework/tests/request.py +++ b/rest_framework/tests/request.py @@ -3,6 +3,8 @@ Tests for content parsing, and form-overloaded content parsing. """ from django.conf.urls.defaults import patterns from django.contrib.auth.models import User +from django.contrib.auth import authenticate, login, logout +from django.contrib.sessions.middleware import SessionMiddleware from django.test import TestCase, Client from django.utils import simplejson as json @@ -276,3 +278,29 @@ class TestContentParsingWithAuthentication(TestCase): # response = self.csrf_client.post('/', content) # self.assertEqual(status.OK, response.status_code, "POST data is malformed") + + +class TestUserSetter(TestCase): + + def setUp(self): + # Pass request object through session middleware so session is + # available to login and logout functions + self.request = Request(factory.get('/')) + SessionMiddleware().process_request(self.request) + + User.objects.create_user('ringo', 'starr@thebeatles.com', 'yellow') + self.user = authenticate(username='ringo', password='yellow') + + def test_user_can_be_set(self): + self.request.user = self.user + self.assertEqual(self.request.user, self.user) + + def test_user_can_login(self): + login(self.request, self.user) + self.assertEqual(self.request.user, self.user) + + def test_user_can_logout(self): + self.request.user = self.user + self.assertFalse(self.request.user.is_anonymous()) + logout(self.request) + self.assertTrue(self.request.user.is_anonymous()) |
