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

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'))