Esempio n. 1
0
    def setUp(self):
        self.mock_requests = Mock()

        self.return_value_mock = Mock()
        self.return_value_mock.status_code = 200
        self.return_value_mock.content = 'Return Value Content'
        self.return_value_mock.json.return_value = {'data': 'data'}

        self.mock_requests.request.return_value = self.return_value_mock

        self.action = 'action'
        self.url = 'localhost'
        self.sample_data = {'test': 'data'}
        self.sample_data_json = json.dumps(self.sample_data)
        self.sample_params = {'test': 'param'}
        self.proper_url = self.url + '/' + self.action

        self.rest_request = RestRequest(self.url,
                                        rest_client=self.mock_requests)

        self.assert_mock_requests_called_with = \
            self.mock_requests.request.assert_called_with
Esempio n. 2
0
    def setUp(self):
        self.mock_requests = Mock()

        self.return_value_mock = Mock()
        self.return_value_mock.status_code = 200
        self.return_value_mock.content = 'Return Value Content'
        self.return_value_mock.json.return_value = {'data': 'data'}

        self.mock_requests.request.return_value = self.return_value_mock

        self.action = 'action'
        self.url = 'localhost'
        self.sample_data = {'test': 'data'}
        self.sample_data_json = json.dumps(self.sample_data)
        self.sample_params = {'test': 'param'}
        self.proper_url = self.url + '/' + self.action

        self.rest_request = RestRequest(self.url,
                                        rest_client=self.mock_requests)

        self.assert_mock_requests_called_with = \
            self.mock_requests.request.assert_called_with
Esempio n. 3
0
class TestRestRequest(TestCase):
    def setUp(self):
        self.mock_requests = Mock()

        self.return_value_mock = Mock()
        self.return_value_mock.status_code = 200
        self.return_value_mock.content = 'Return Value Content'
        self.return_value_mock.json.return_value = {'data': 'data'}

        self.mock_requests.request.return_value = self.return_value_mock

        self.action = 'action'
        self.url = 'localhost'
        self.sample_data = {'test': 'data'}
        self.sample_data_json = json.dumps(self.sample_data)
        self.sample_params = {'test': 'param'}
        self.proper_url = self.url + '/' + self.action

        self.rest_request = RestRequest(self.url,
                                        rest_client=self.mock_requests)

        self.assert_mock_requests_called_with = \
            self.mock_requests.request.assert_called_with

    def test_get_sets_proper_request(self):
        self.rest_request.get(self.action, self.sample_params)
        self.assert_mock_requests_called_with(
            'GET',
            self.proper_url,
            data=None,
            params=self.sample_params,
            headers={'Content-Type': 'application/json'})

    def test_put_sets_proper_request(self):
        self.rest_request.put(self.action, self.sample_data)
        self.assert_mock_requests_called_with(
            'PUT',
            self.proper_url,
            data=self.sample_data_json,
            params=None,
            headers={'Content-Type': 'application/json'})

    def test_post_sets_proper_request(self):
        self.rest_request.post(self.action, self.sample_data)
        self.assert_mock_requests_called_with(
            'POST',
            self.proper_url,
            data=self.sample_data_json,
            params=None,
            headers={'Content-Type': 'application/json'})

    def test_delete_sets_proper_request(self):
        self.rest_request.delete(self.action)
        self.assert_mock_requests_called_with(
            'DELETE',
            self.proper_url,
            data=None,
            params=None,
            headers={'Content-Type': 'application/json'})

    def test_auth_token_header_when_auth_token_set(self):
        self.rest_request.auth_token = 'TOKEN'
        self.rest_request.delete(self.action)
        self.assert_mock_requests_called_with('DELETE',
                                              self.proper_url,
                                              data=None,
                                              params=None,
                                              headers={
                                                  'Content-Type':
                                                  'application/json',
                                                  'X-Auth-Token': 'TOKEN'
                                              })

    def test_content_type_when_content_type_set(self):
        self.rest_request.auth_token = 'TOKEN'
        self.rest_request.get(self.action, content_type='application/x-base64')
        self.assert_mock_requests_called_with('GET',
                                              self.proper_url,
                                              data=None,
                                              params=None,
                                              headers={
                                                  'Content-Type':
                                                  'application/x-base64',
                                                  'X-Auth-Token': 'TOKEN'
                                              })

    def test_200_response_code_returns_json(self):
        self.return_value_mock.status_code = 200

        assert type(self.rest_request.delete(self.action)) is dict

    def test_201_response_code_returns_json(self):
        self.return_value_mock.status_code = 201

        assert type(self.rest_request.delete(self.action)) is dict

    def test_400_response_code_raises_value_error(self):
        self.return_value_mock.status_code = 400

        self.assertRaises(ValueError, self.rest_request.delete, self.action)

    def test_401_response_code_raises_permission_error(self):
        self.return_value_mock.status_code = 401

        self.assertRaises(PermissionError, self.rest_request.delete,
                          self.action)

    def test_404_response_code_raises_value_error(self):
        self.return_value_mock.status_code = 404

        self.assertRaises(ValueError, self.rest_request.delete, self.action)

    def test_405_response_code_raises_value_error(self):
        self.return_value_mock.status_code = 405

        self.assertRaises(ValueError, self.rest_request.delete, self.action)

    def test_415_response_code_raises_value_error(self):
        self.return_value_mock.status_code = 415

        self.assertRaises(ValueError, self.rest_request.delete, self.action)

    def test_500_response_code_raises_connection_error(self):
        self.return_value_mock.status_code = 500

        self.assertRaises(ConnectionError, self.rest_request.delete,
                          self.action)

    def test_503_response_code_raises_connection_error(self):
        self.return_value_mock.status_code = 503

        self.assertRaises(ConnectionError, self.rest_request.delete,
                          self.action)

    def test_504_response_code_raises_connection_error(self):
        self.return_value_mock.status_code = 504

        self.assertRaises(ConnectionError, self.rest_request.delete,
                          self.action)

    def test_other_response_code_raises_runtime_error(self):
        self.return_value_mock.status_code = 1234

        self.assertRaises(RuntimeError, self.rest_request.delete, self.action)
Esempio n. 4
0
class TestRestRequest(TestCase):
    def setUp(self):
        self.mock_requests = Mock()

        self.return_value_mock = Mock()
        self.return_value_mock.status_code = 200
        self.return_value_mock.content = 'Return Value Content'
        self.return_value_mock.json.return_value = {'data': 'data'}

        self.mock_requests.request.return_value = self.return_value_mock

        self.action = 'action'
        self.url = 'localhost'
        self.sample_data = {'test': 'data'}
        self.sample_data_json = json.dumps(self.sample_data)
        self.sample_params = {'test': 'param'}
        self.proper_url = self.url + '/' + self.action

        self.rest_request = RestRequest(self.url,
                                        rest_client=self.mock_requests)

        self.assert_mock_requests_called_with = \
            self.mock_requests.request.assert_called_with

    def test_get_sets_proper_request(self):
        self.rest_request.get(self.action, self.sample_params)
        self.assert_mock_requests_called_with('GET', self.proper_url,
                                              data=None,
                                              params=self.sample_params,
                                              headers={'Content-Type':
                                                       'application/json'})

    def test_put_sets_proper_request(self):
        self.rest_request.put(self.action, self.sample_data)
        self.assert_mock_requests_called_with('PUT', self.proper_url,
                                              data=self.sample_data_json,
                                              params=None,
                                              headers={'Content-Type':
                                                       'application/json'})

    def test_post_sets_proper_request(self):
        self.rest_request.post(self.action, self.sample_data)
        self.assert_mock_requests_called_with('POST', self.proper_url,
                                              data=self.sample_data_json,
                                              params=None,
                                              headers={'Content-Type':
                                                       'application/json'})

    def test_delete_sets_proper_request(self):
        self.rest_request.delete(self.action)
        self.assert_mock_requests_called_with('DELETE', self.proper_url,
                                              data=None, params=None,
                                              headers={'Content-Type':
                                                       'application/json'})

    def test_auth_token_header_when_auth_token_set(self):
        self.rest_request.auth_token = 'TOKEN'
        self.rest_request.delete(self.action)
        self.assert_mock_requests_called_with('DELETE', self.proper_url,
                                              data=None, params=None,
                                              headers={'Content-Type':
                                                       'application/json',
                                                       'X-Auth-Token':
                                                       'TOKEN'})

    def test_content_type_when_content_type_set(self):
        self.rest_request.auth_token = 'TOKEN'
        self.rest_request.get(self.action, content_type='application/x-base64')
        self.assert_mock_requests_called_with('GET', self.proper_url,
                                              data=None, params=None,
                                              headers={'Content-Type':
                                                       'application/x-base64',
                                                       'X-Auth-Token':
                                                       'TOKEN'})

    def test_200_response_code_returns_json(self):
        self.return_value_mock.status_code = 200

        assert type(self.rest_request.delete(self.action)) is dict

    def test_201_response_code_returns_json(self):
        self.return_value_mock.status_code = 201

        assert type(self.rest_request.delete(self.action)) is dict

    def test_400_response_code_raises_value_error(self):
        self.return_value_mock.status_code = 400

        self.assertRaises(ValueError, self.rest_request.delete, self.action)

    def test_401_response_code_raises_permission_error(self):
        self.return_value_mock.status_code = 401

        self.assertRaises(PermissionError, self.rest_request.delete,
                          self.action)

    def test_404_response_code_raises_value_error(self):
        self.return_value_mock.status_code = 404

        self.assertRaises(ValueError, self.rest_request.delete, self.action)

    def test_405_response_code_raises_value_error(self):
        self.return_value_mock.status_code = 405

        self.assertRaises(ValueError, self.rest_request.delete, self.action)

    def test_415_response_code_raises_value_error(self):
        self.return_value_mock.status_code = 415

        self.assertRaises(ValueError, self.rest_request.delete, self.action)

    def test_500_response_code_raises_connection_error(self):
        self.return_value_mock.status_code = 500

        self.assertRaises(ConnectionError, self.rest_request.delete,
                          self.action)

    def test_503_response_code_raises_connection_error(self):
        self.return_value_mock.status_code = 503

        self.assertRaises(ConnectionError, self.rest_request.delete,
                          self.action)

    def test_504_response_code_raises_connection_error(self):
        self.return_value_mock.status_code = 504

        self.assertRaises(ConnectionError, self.rest_request.delete,
                          self.action)

    def test_other_response_code_raises_runtime_error(self):
        self.return_value_mock.status_code = 1234

        self.assertRaises(RuntimeError, self.rest_request.delete, self.action)