34 lines
1.2 KiB
Python
34 lines
1.2 KiB
Python
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):
|
|
# Test button page returns 200
|
|
request = self.factory.get('/button')
|
|
request.session = self.client.session
|
|
response = button(request)
|
|
self.assertEqual(response.status_code, 200)
|
|
|
|
# Test button post returns 200 and increments button to 1
|
|
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)
|
|
|
|
# Test second click increments button to 2
|
|
response = button(request)
|
|
self.assertEqual(response.status_code, 200)
|
|
self.assertEqual(request.session.get('pressed'), 2) |