from django.contrib.auth.models import AnonymousUser, User from django.test import RequestFactory, TestCase from .views import button class SimpleTest(TestCase): def setUp(self): # Every test needs access to the request factory. self.factory = RequestFactory() self.user = User.objects.create_user( username='testuser', email='test@test.test', password='testpass') def test_button(self): # Create an instance of a GET request. request = self.factory.get('/snippets') request.user = self.user request.session = self.client.session response = button(request) self.assertEqual(response.status_code, 200) request = self.factory.post( '/button', data={}, content_type='application/json' ) request.session = self.client.session response = button(request) self.assertEqual(response.status_code, 200) self.assertEqual(request.session.get('pressed'), 1) response = button(request) self.assertEqual(response.status_code, 200) self.assertEqual(request.session.get('pressed'), 2)