test_decorators.py 1.0 KB

12345678910111213141516171819202122232425262728
  1. from django.contrib.auth import get_user_model
  2. from django.core.urlresolvers import reverse
  3. from django.test import TestCase
  4. class RequirePostTests(TestCase):
  5. serialized_rollback = True
  6. def test_require_POST_success(self):
  7. """require_POST decorator allowed POST request"""
  8. User = get_user_model()
  9. test_user = User.objects.create_user('Bob', 'bob@test.com', 'Pass.123')
  10. self.client.login(username=test_user.username, password='Pass.123')
  11. response = self.client.post(reverse('misago:logout'))
  12. self.assertEqual(response.status_code, 302)
  13. def test_require_POST_fail(self):
  14. """require_POST decorator failed on GET request"""
  15. User = get_user_model()
  16. test_user = User.objects.create_user('Bob', 'bob@test.com', 'Pass.123')
  17. self.client.login(username=test_user.username, password='Pass.123')
  18. response = self.client.get(reverse('misago:logout'))
  19. self.assertEqual(response.status_code, 405)
  20. self.assertIn("Wrong way", response.content)