Browse Source

extra tests for empty post forms handling

Rafał Pitoń 10 years ago
parent
commit
807086db23

+ 10 - 0
misago/threads/tests/test_editpost_view.py

@@ -172,6 +172,16 @@ class EditPostTests(AuthenticatedUserTestCase):
         self.assertEqual(post.original, 'Edited reply!')
         self.assertEqual(post.edits, 1)
 
+    def test_empty_edit_form(self):
+        """empty edit form has no crashes"""
+        self.override_forum_acl({'can_edit_posts': 2, 'can_edit_threads': 2})
+
+        response = self.client.post(self.link, data={
+            'submit': True,
+        },
+        **self.ajax_header)
+        self.assertEqual(response.status_code, 200)
+
     def test_can_edit_other_user_post(self):
         """can edit other user post"""
         self.override_forum_acl({'can_edit_posts': 2, 'can_edit_threads': 0})

+ 13 - 0
misago/threads/tests/test_replythread_view.py

@@ -106,6 +106,19 @@ class ReplyThreadTests(AuthenticatedUserTestCase):
         response = self.client.get(self.link, **self.ajax_header)
         self.assertEqual(response.status_code, 403)
 
+    def test_empty_reply_thread_form(self):
+        """empty reply thread form has no crashes"""
+        self.allow_reply_thread({
+            'can_pin_threads': 1,
+            'can_close_threads': 1,
+        })
+
+        response = self.client.post(self.link, data={
+            'submit': True,
+        },
+        **self.ajax_header)
+        self.assertEqual(response.status_code, 200)
+
     def test_can_reply_thread(self):
         """can reply to thread"""
         self.allow_reply_thread()

+ 13 - 0
misago/threads/tests/test_startthread_view.py

@@ -94,6 +94,19 @@ class StartThreadTests(AuthenticatedUserTestCase):
         response = self.client.get(self.link, **self.ajax_header)
         self.assertEqual(response.status_code, 403)
 
+    def test_empty_start_thread_form(self):
+        """empty new thread form has no crashes"""
+        self.allow_start_thread({
+            'can_pin_threads': 1,
+            'can_close_threads': 1,
+        })
+
+        response = self.client.post(self.link, data={
+            'submit': True,
+        },
+        **self.ajax_header)
+        self.assertEqual(response.status_code, 200)
+
     def test_can_start_thread(self):
         """can post new thread"""
         self.allow_start_thread()