Skip to content

Instantly share code, notes, and snippets.

@amadeu01
Last active November 9, 2017 11:48
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save amadeu01/ebb8fe9836c26cdf683c5e4e74a9215c to your computer and use it in GitHub Desktop.
Save amadeu01/ebb8fe9836c26cdf683c5e4e74a9215c to your computer and use it in GitHub Desktop.
How to simple test views with authentication on django.
from django.contrib.auth.decorators import login_required
from django.shortcuts import render
@login_required(login_url='/users/login')
def secure(request):
user = request.user
return render(request, 'secure.html', {'email': user.email})
#tests.py
class SimpleTest(TestCase):
def setUp(self):
user = User.objects.create_user('temporary', 'temporary@gmail.com', 'temporary')
def test_secure_page(self):
self.client.login(username='temporary', password='temporary')
response = self.client.get('/manufacturers/', follow=True)
user = User.objects.get(username='temporary')
self.assertEqual(response.context['user'].email, 'temporary@gmail.com')
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment