def test_serve_post_returns_400_for_invalid_form_id_no_form_present(self): page = BrowsePage(title='test', slug='test') page.content = blocks.StreamValue(page.content.stream_block, [{ 'type': 'full_width_text', 'value': [] }], True) save_new_page(page) request = self.factory.post('/', {'form_id': 'form-content-0'}) response = page.serve_post(request) self.assertIsInstance(response, HttpResponseBadRequest)
def test_serve_post_valid_calls_feedback_block_handler(self): """A valid post should call the feedback block handler. This returns a redirect to the calling page and also uses the Django messages framework to set a message. """ page = BrowsePage(title='test', slug='test') page.content = blocks.StreamValue(page.content.stream_block, [{ 'type': 'feedback', 'value': 'something' }], True) save_new_page(page) request = self.factory.post('/', {'form_id': 'form-content-0'}) SessionMiddleware().process_request(request) MessageMiddleware().process_request(request) response = page.serve_post(request) self.assertEqual((response.status_code, response['Location']), (302, request.path))
def test_serve_post_valid_calls_feedback_block_handler(self): """A valid post should call the feedback block handler. This returns a redirect to the calling page and also uses the Django messages framework to set a message. """ page = BrowsePage(title='test', slug='test') page.content = blocks.StreamValue( page.content.stream_block, [{'type': 'feedback', 'value': 'something'}], True ) save_new_page(page) request = self.factory.post('/', {'form_id': 'form-content-0'}) SessionMiddleware().process_request(request) MessageMiddleware().process_request(request) response = page.serve_post(request) self.assertEqual( (response.status_code, response['Location']), (302, request.path) )
def test_serve_post_returns_400_for_invalid_form_id_non_number_index(self): page = BrowsePage(title='test', slug='test') request = self.factory.post('/', {'form_id': 'form-content-abc'}) response = page.serve_post(request) self.assertIsInstance(response, HttpResponseBadRequest)
def test_serve_post_returns_400_for_invalid_form_id_invalid_index(self): page = BrowsePage(title='test', slug='test') request = self.factory.post('/', {'form_id': 'form-content-99'}) response = page.serve_post(request) self.assertIsInstance(response, HttpResponseBadRequest)