def test_update_owner_expired_token_failure(self, mock_get, mock_put): clientId = '0' * 96 clientSecret = '0' * 71 client = Client(clientId, clientSecret) client.token = "ExpiredToken" mock_response = mock.Mock() mock_response.status_code = 401 mock_response.json.return_value = {'message': 'Token expired'} mock_put.return_value = mock_response mock_response2 = mock.Mock() mock_response2.status_code = 200 mock_response2.json.return_value = { 'token': 'newToken', } mock_get.return_value = mock_response2 with self.assertRaises(AuthenticationError): client.update_owner('1', 'testowner') self.assertEqual(3, mock_put.call_count) self.assertEqual(2, mock_get.call_count) headers = {'Authorization': 'Bearer ExpiredToken'} newheaders = {'Authorization': 'Bearer newToken'} data = {'owner': 'testowner'} call_list = [ mock.call(self.base_URL + 'apps/1', headers=headers, data=data), mock.call(self.base_URL + 'apps/1', headers=newheaders, data=data), mock.call(self.base_URL + 'apps/1', headers=newheaders, data=data) ] self.assertEqual(mock_put.call_args_list, call_list)
def test_update_owner_expired_token_success(self, mock_get, mock_put): clientId = '0' * 96 clientSecret = '0' * 71 client = Client(clientId, clientSecret) client.token = "ExpiredToken" mock_response = mock.Mock() mock_response.status_code = 401 mock_response.json.return_value = {'message': 'Token expired'} mock_response3 = mock.Mock() mock_response3.status_code = 200 mock_response3.json.return_value = {'message': 'OK'} mock_put.side_effect = [mock_response, mock_response3] mock_response2 = mock.Mock() mock_response2.status_code = 200 mock_response2.json.return_value = {'token': 'newToken'} mock_get.return_value = mock_response2 self.assertEqual('OK', client.update_owner('1', 'testowner')) headers = {'Authorization': 'Bearer ExpiredToken'} newheaders = {'Authorization': 'Bearer newToken'} data = {'owner': 'testowner'} call_list = [ mock.call(self.base_URL + 'apps/1', headers=headers, data=data), mock.call(self.base_URL + 'apps/1', headers=newheaders, data=data) ] self.assertEqual(mock_put.call_args_list, call_list)
def test_update_owner_invalid_clientid(self, mock_put): clientId = '0' * 96 clientSecret = '0' * 71 client = Client(clientId, clientSecret) client.token = "correctToken" mock_response = mock.Mock() mock_response.status_code = 404 mock_response.json.return_value = { 'message': 'No app exists with given client id.' } mock_put.return_value = mock_response url = Client.base_URL + 'apps/1' headers = {'Authorization': 'Bearer correctToken'} data = {'owner': 'testowner'} with self.assertRaises(ResourceNotFoundError): client.update_owner('1', 'testowner') mock_put.assert_called_once_with(url, headers=headers, data=data) self.assertEqual(1, mock_response.json.call_count)
def test_update_owner(self, mock_put): clientId = '0' * 96 clientSecret = '0' * 71 client = Client(clientId, clientSecret) client.token = "correctToken" mock_response = mock.Mock() mock_response.status_code = 200 mock_response.json.return_value = {'message': 'OK'} mock_put.return_value = mock_response url = Client.base_URL + 'apps/1' headers = {'Authorization': 'Bearer correctToken'} data = {'owner': 'testowner'} self.assertEqual(client.update_owner('1', 'testowner'), 'OK') mock_put.assert_called_once_with(url, headers=headers, data=data)