-
-
Notifications
You must be signed in to change notification settings - Fork 128
Expand file tree
/
Copy pathtest_admin.py
More file actions
56 lines (43 loc) · 1.98 KB
/
test_admin.py
File metadata and controls
56 lines (43 loc) · 1.98 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
from urllib.parse import urlencode
from django.contrib.auth.models import User
from django.test import TestCase
from django.urls import reverse
from user_sessions.backends.db import SessionStore
from .utils import Client
class AdminTest(TestCase):
client_class = Client
def setUp(self):
User.objects.create_superuser('bouke', '', 'secret')
assert self.client.login(username='bouke', password='secret')
expired = SessionStore(user_agent='Python/2.5', ip='20.13.1.1')
expired.set_expiry(-365 * 86400)
expired.save()
unexpired = SessionStore(user_agent='Python/2.7', ip='1.1.1.1')
unexpired.save()
self.admin_url = reverse('admin:user_sessions_session_changelist')
def test_list(self):
response = self.client.get(self.admin_url)
self.assertContains(response, 'Select session to change')
self.assertContains(response, '127.0.0.1')
self.assertContains(response, '20.13.1.1')
self.assertContains(response, '1.1.1.1')
def test_search(self):
response = self.client.get(self.admin_url, {'q': 'bouke'})
self.assertContains(response, '127.0.0.1')
self.assertNotContains(response, '20.13.1.1')
self.assertNotContains(response, '1.1.1.1')
def test_mine(self):
my_sessions = f"{self.admin_url}?{urlencode({'owner': 'my'})}"
response = self.client.get(my_sessions)
self.assertContains(response, '127.0.0.1')
self.assertNotContains(response, '1.1.1.1')
def test_expired(self):
expired = f"{self.admin_url}?{urlencode({'active': '0'})}"
response = self.client.get(expired)
self.assertContains(response, '20.13.1.1')
self.assertNotContains(response, '1.1.1.1')
def test_unexpired(self):
unexpired = f"{self.admin_url}?{urlencode({'active': '1'})}"
response = self.client.get(unexpired)
self.assertContains(response, '1.1.1.1')
self.assertNotContains(response, '20.13.1.1')