def test_get_user_details_success(self, mock_request): """Test get user details with a single uuid""" user_id = "c614e64e-d981-4eba-b016-d9822f09a4fb" user_data_url = f"{self.app.config['PARTY_URL']}/party-api/v1/respondents?id={user_id}" mock_request.get(user_data_url, status_code=200, reason="OK", text='{}') with self.app.app_context(): PartyService().get_user_details(user_id) self.assertTrue(mock_request.call_count == 1)
def test_get_business_details_multiple_id_success(self, mock_request): """Test get business details with a multiple uuids at once""" business_ids = ["c614e64e-d981-4eba-b016-d9822f09a4fb", "c614e64e-d981-4eba-b016-d9822f09a4f2"] business_data_url = f"{self.app.config['PARTY_URL']}/party-api/v1/businesses?id={business_ids[0]}&id={business_ids[1]}" mock_request.get(business_data_url, status_code=200, reason="OK", text='{}') with self.app.app_context(): PartyService().get_business_details(business_ids) self.assertTrue(mock_request.call_count == 1)
def test_get_user_details_client_error(self, mock_request): """Test get user details fails and returns an empty list when a non-uuid is sent""" user_id = "not_a_uuid" user_data_url = f"{self.app.config['PARTY_URL']}/party-api/v1/respondents?id={user_id}" mock_request.get(user_data_url, status_code=400, reason="Invalid uuid", text='{}') with self.app.app_context(): result = PartyService().get_user_details(user_id) self.assertEqual(result, []) self.assertTrue(mock_request.call_count == 1)
def test_get_business_details_unauthorised_failure(self, mock_request): """Test get business details fails and returns and empty list when the client is unauthorised to access the party service""" business_ids = ["1234"] business_data_url = f"{self.app.config['PARTY_URL']}/party-api/v1/businesses?id={business_ids[0]}" mock_request.get(business_data_url, status_code=401, reason="unauthorised", text='{}') with self.app.app_context(): result_data = PartyService().get_business_details(business_ids) self.assertEqual(result_data, []) self.assertTrue(mock_request.call_count == 1)
def test_get_business_details_client_error(self, mock_request): """Test get business details fails and returns an empty list when a non-uuid is sent""" business_ids = ["not_a_uuid"] business_data_url = f"{self.app.config['PARTY_URL']}/party-api/v1/businesses?id={business_ids[0]}" mock_request.get(business_data_url, status_code=400, reason="Invalid uuid", text='{"error": "text"}') with self.app.app_context(): result = PartyService().get_business_details(business_ids) self.assertEqual(result, []) self.assertTrue(mock_request.call_count == 1)
def test_get_business_details_single_id_success(self, mock_request): """Test get business details with a single uuid""" business_ids = ["b08c07c3-df28-4283-bb4c-c048729ce372"] business_data_url = f"{self.app.config['PARTY_URL']}/party-api/v1/businesses?id={business_ids[0]}" mock_request.get(business_data_url, status_code=200, reason="OK", text='{}') with self.app.app_context(): PartyService().get_business_details(business_ids) self.assertTrue(mock_request.call_count == 1)
def test_get_users_details_single_id_success(self, mock_request): """Test get users details sends a request and receives back data""" user_ids = ["c614e64e-d981-4eba-b016-d9822f09a4fb"] user_data_url = f"{self.app.config['PARTY_URL']}/party-api/v1/respondents?id={user_ids[0]}" mock_request.get(user_data_url, status_code=200, reason="OK", text='{}') with self.app.app_context(): PartyService().get_users_details(user_ids) self.assertTrue(mock_request.call_count == 1)