Redirection in PyTest Django doesn't work
I am trying to create tests for my login and signup process in my Django App with Pytest.
When you signup ("/signup", home/register.html) you should be redirected to login page ("/login", home/login.html). After successfull login you shoul be redirected do welcome page ("", home/welcome.html).
I created 2 tests for signup and it works.
Unfortunetly I have problem with login and checking redirection to welcome page. Here is my test:
@pytest.mark.django_db
def test_login_redirect_to_welcome_for_authenticated_user(client):
user = User.objects.create_user('Test', 'test@test.pl', 'password')
client.login(username=user.username, password='password')
response = client.get(path='/login', follow = True)
assert response.status_code == 200
assert 'home/welcome.html' in response.template_name
I logged the user on login page, set follow to true. And now I want to check if I am redirected to Welcome Page. Unfortunetly I have got this error:
client = <django.test.client.Client object at 0x1030db460>
@pytest.mark.django_db
def test_login_redirect_to_welcome_for_authenticated_user(client):
user = User.objects.create_user('Test', 'test@test.pl', 'password')
client.login(username=user.username, password='password')
response = client.get(path='/login', follow = True)
assert response.status_code == 200
> assert 'home/welcome.html' in response.template_name
E assert 'home/welcome.html' in ['home/login.html']
E + where ['home/login.html'] = <TemplateResponse status_code=200, "text/html; charset=utf-8">.template_name
home/tests/test_login.py:18: AssertionError
FAILED home/tests/test_login.py::test_login_redirect_to_welcome_for_authenticated_user - assert 'home/welcome.html' in ['home/login.html']
Do you know how I can fix this?