def test_search_camera_all_correct_Internal_Error(self, mock_get): clientId = '0' * 96 clientSecret = '0' * 71 client = Client(clientId, clientSecret) client.token = 'CorrectToken' mock_response = mock.Mock() mock_response.status_code = 500 mock_get.return_value = mock_response url = self.base_URL + 'cameras/search?country=USA' with self.assertRaises(InternalError): client.search_camera(country='USA') mock_get.assert_called_once_with( url, headers={'Authorization': 'Bearer CorrectToken'}) self.assertEqual(0, mock_response.json.call_count)
def test_search_camera_no_token(self, mock_get): clientId = '0' * 96 clientSecret = '0' * 71 client = Client(clientId, clientSecret) mock_response = mock.Mock() expected_dict = {"token": "correctToken"} mock_response.json.return_value = expected_dict mock_response.status_code = 200 mock_get.return_value = mock_response url = self.base_URL + 'cameras/search?country=USA' with self.assertRaises(TypeError): client.search_camera(country='USA') mock_get.assert_called_with( url, headers={'Authorization': 'Bearer correctToken'}) self.assertEqual(2, mock_response.json.call_count)
def test_search_camera_all_correct_Format_Error(self, mock_get): clientId = '0' * 96 clientSecret = '0' * 71 client = Client(clientId, clientSecret) client.token = 'CorrectToken' mock_response = mock.Mock() expected_dict = {"message": "Format Error Messages"} mock_response.json.return_value = expected_dict mock_response.status_code = 422 mock_get.return_value = mock_response url = self.base_URL + 'cameras/search?country=USA' with self.assertRaises(FormatError): client.search_camera(country='USA') mock_get.assert_called_once_with( url, headers={'Authorization': 'Bearer CorrectToken'}) self.assertEqual(1, mock_response.json.call_count)
def test_search_camera_all_correct_Expired_Token(self, mock_get): clientId = '0' * 96 clientSecret = '0' * 71 client = Client(clientId, clientSecret) client.token = 'ExpiredToken' # set result for first search camera mock_response = mock.Mock() mock_response.status_code = 401 # set result for request_token() mock_response2 = mock.Mock() mock_response2.status_code = 200 mock_response2.json.return_value = {'token': 'newToken'} # set result for second search camera mock_response3 = mock.Mock() mock_response3.json.return_value = [] mock_get.side_effect = [mock_response, mock_response2, mock_response3] camera = client.search_camera(country='USA') self.assertEqual(3, mock_get.call_count) self.assertEqual([], camera)