You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
26 lines
1.0 KiB
26 lines
1.0 KiB
from django.test import TestCase |
|
from django.urls import reverse |
|
from django.contrib.auth import get_user_model |
|
|
|
User = get_user_model() |
|
|
|
class LoginViewTests(TestCase): |
|
def setUp(self): |
|
self.username = 'testuser' |
|
self.password = 'testpassword' |
|
self.user = User.objects.create_user(username=self.username, password=self.password) |
|
|
|
def test_login_view_redirects_authenticated_user(self): |
|
self.client.login(username=self.username, password=self.password) |
|
response = self.client.get(reverse('hello_world')) |
|
self.assertEqual(response.status_code, 200) |
|
|
|
def test_login_view_renders_login_template_for_anonymous_user(self): |
|
response = self.client.get(reverse('login')) |
|
self.assertEqual(response.status_code, 200) |
|
self.assertTemplateUsed(response, 'login.html') |
|
|
|
def test_logout_redirects_to_login(self): |
|
self.client.login(username=self.username, password=self.password) |
|
response = self.client.post(reverse('logout')) |
|
self.assertRedirects(response, reverse('login')) |