Ejemplo n.º 1
0
 def test_simple_json_endpoint_get_ioerror(self, flat_file_mock):
     """ Test a GET scenario where an IO error occurs """
     flat_file_mock.load.side_effect = IOError()
     with app.test_request_context(method='GET'):
         rv = common.simple_json_endpoint('---some--path--')
         self.assertEqual(rv[1], 500)
         self.assertEqual(len(flat_file_mock.method_calls), 1)
Ejemplo n.º 2
0
    def test_create_markdown_content_invalid_form(self):
        with app.test_request_context(method='GET'):
            form_mock, markdown_mock = self.markdown_content_mocks()
            form_mock.validate = mock.Mock(return_value=False)
            rv = common.create_markdown_content(form_mock, markdown_mock)

            self.assertEqual(rv[1], 403)
            self.assertEqual(1, form_mock.validate.call_count)
            self.assertEqual(1, len(form_mock.mock_calls))
            self.assertEqual(0, len(markdown_mock.mock_calls))
Ejemplo n.º 3
0
 def test_simple_json_endpoint_post_ioerror(self, flat_file_mock, from_json_mock):
     """ Test a POST scenario where an IO error occurs """
     m = mock.Mock(spec=common.SimpleContentForm)
     m.data = {'content': 'some-content'}
     from_json_mock.return_value = m
     flat_file_mock.return_value.save.side_effect = IOError()
     with app.test_request_context(method='POST'):
         rv = common.simple_json_endpoint('---some--path--')
         self.assertEqual(rv[1], 500)
         self.assertEqual(len(flat_file_mock.method_calls), 0)
         self.assertEqual(len(flat_file_mock.mock_calls), 2)
Ejemplo n.º 4
0
 def test_simple_json_endpoint_post_invalid_form(self, flat_file_mock, from_json_mock):
     """ Test a POST scenario where the submitted payload is invalid """
     m = mock.Mock(spec=common.SimpleContentForm)
     m.data = {'content': 'some-content'}
     m.validate = mock.Mock(return_value=False)
     from_json_mock.return_value = m
     with app.test_request_context(method='POST'):
         rv = common.simple_json_endpoint('---some--path--')
         self.assertEqual(rv[1], 403)
         self.assertEqual(len(flat_file_mock.method_calls), 0)
         self.assertEqual(len(flat_file_mock.mock_calls), 0)
Ejemplo n.º 5
0
    def test_create_markdown_content_normal(self):
        with app.test_request_context(method='GET'):
            form_mock, markdown_mock = self.markdown_content_mocks()
            form_mock.validate = mock.Mock(return_value=True)
            rv = common.create_markdown_content(form_mock, markdown_mock)

            expected = {'status': 'success', 'form': {'some-key': 'some-value', 'slug': 'some-slug'}}
            self.assertEqual(json.loads(rv.data), expected)
            self.assertEqual(1, form_mock.validate.call_count)
            self.assertEqual(1, len(form_mock.mock_calls))
            self.assertEqual(1, len(markdown_mock.mock_calls))
            self.assertEqual(1, markdown_mock.create.call_count)
Ejemplo n.º 6
0
    def test_save_markdown_content_already_exists(self):
        with app.test_request_context(method='GET'):
            form_mock, markdown_mock = self.markdown_content_mocks()
            form_mock.validate = mock.Mock(return_value=True)
            markdown_mock.save = mock.Mock(side_effect=common.ContentDoesNotExistsException)
            rv = common.save_markdown_content(form_mock, markdown_mock)

            self.assertEqual(rv[1], 409)
            self.assertEqual(1, form_mock.validate.call_count)
            self.assertEqual(1, len(form_mock.mock_calls))
            self.assertEqual(1, len(markdown_mock.mock_calls))
            self.assertEqual(1, markdown_mock.save.call_count)
Ejemplo n.º 7
0
    def test_save_markdown_content_io_error(self):
        with app.test_request_context(method='GET'):
            form_mock, markdown_mock = self.markdown_content_mocks()
            form_mock.validate = mock.Mock(return_value=True)
            markdown_mock.save = mock.Mock(side_effect=IOError)
            rv = common.save_markdown_content(form_mock, markdown_mock)

            self.assertEqual(rv[1], 500)
            self.assertEqual(1, form_mock.validate.call_count)
            self.assertEqual(1, len(form_mock.mock_calls))
            self.assertEqual(1, len(markdown_mock.mock_calls))
            self.assertEqual(1, markdown_mock.save.call_count)
Ejemplo n.º 8
0
 def test_simple_json_endpoint_post_normal(self, flat_file_mock, from_json_mock):
     """ Test a POST scenario where everything goes well """
     m = mock.Mock(spec=common.SimpleContentForm)
     m.data = {'content': 'some-content'}
     from_json_mock.return_value = m
     with app.test_request_context(method='POST'):
         rv = common.simple_json_endpoint('---some--path--')
         self.assertEqual(json.loads(rv.data), {'status': 'success', 'form': m.data})
         flat_file_mock.return_value.save.assert_has_calls([mock.call('---some--path--')])
         self.assertEqual(len(flat_file_mock.method_calls), 0)
         self.assertEqual(len(flat_file_mock.return_value.method_calls), 1)
         self.assertEqual(len(flat_file_mock.mock_calls), 2)
         self.assertEqual(m.validate.call_count, 1)
Ejemplo n.º 9
0
 def test_simple_json_endpoint_get_normal(self, load_mock):
     """ Test a GET scenario where everything goes well """
     load_mock.return_value = common.FlatFile('--file-contents--')
     with app.test_request_context(method='GET'):
         rv = common.simple_json_endpoint('---some--path--')
         self.assertEqual({'content': '--file-contents--'}, json.loads(rv.data))