Skip to content

Commit 8ec7928

Browse files
authored
fix(content-sharing): getContact error handler (#4467)
1 parent 5e71fc2 commit 8ec7928

5 files changed

Lines changed: 21 additions & 10 deletions

File tree

src/elements/content-sharing/__tests__/SharingModal.test.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1078,7 +1078,7 @@ describe('elements/content-sharing/SharingModal', () => {
10781078
expect(getUsersInEnterprise).toHaveBeenCalledWith(MOCK_ITEM_ID, expect.anything(), expect.anything(), {
10791079
filter_term: MOCK_EMAIL,
10801080
});
1081-
expect(response).resolves.toBeFalsy();
1081+
expect(response).resolves.toEqual({});
10821082
expect(wrapper.exists(Notification)).toBeFalsy();
10831083
});
10841084
});

src/elements/content-sharing/__tests__/useContacts.test.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -271,7 +271,7 @@ describe('elements/content-sharing/hooks/useContacts', () => {
271271
{ fields: 'name,permissions', filter_term: MOCK_FILTER },
272272
);
273273
expect(handleError).toHaveBeenCalled();
274-
expect(contacts).resolves.toBeFalsy();
274+
expect(contacts).resolves.toEqual([]);
275275
});
276276
});
277277
});

src/elements/content-sharing/__tests__/useContactsByEmail.test.js

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -224,11 +224,9 @@ describe('elements/content-sharing/hooks/useContactsByEmail', () => {
224224
}),
225225
);
226226

227-
result.current({ emails: [MOCK_EMAIL] });
228-
229-
// Wait a short time to ensure handleError is called
227+
let contacts;
230228
await act(async () => {
231-
await new Promise(resolve => setTimeout(resolve, 100));
229+
contacts = await result.current({ emails: [MOCK_EMAIL] });
232230
});
233231

234232
expect(getUsersInEnterprise).toHaveBeenCalledWith(
@@ -238,6 +236,7 @@ describe('elements/content-sharing/hooks/useContactsByEmail', () => {
238236
{ filter_term: MOCK_EMAIL },
239237
);
240238
expect(handleError).toHaveBeenCalled();
239+
expect(contacts).toEqual({});
241240
});
242241
});
243242
});

src/elements/content-sharing/hooks/useContacts.js

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -51,15 +51,21 @@ function useContacts(api: API, itemID: string, options: ContentSharingHooksOptio
5151
api.getMarkerBasedUsersAPI(false).getUsersInEnterprise(
5252
itemID,
5353
(response: UserCollection) => resolveAPICall(resolve, response, transformUsers),
54-
handleError,
54+
error => {
55+
handleError(error);
56+
resolve([]);
57+
},
5558
{ filter_term: filterTerm },
5659
);
5760
});
5861
const getGroups = new Promise((resolve: (result: Array<GroupMini>) => void) => {
5962
api.getMarkerBasedGroupsAPI(false).getGroupsInEnterprise(
6063
itemID,
6164
(response: GroupCollection) => resolveAPICall(resolve, response, transformGroups),
62-
handleError,
65+
error => {
66+
handleError(error);
67+
resolve([]);
68+
},
6369
{
6470
fields: [FIELD_NAME, FIELD_PERMISSIONS].toString(),
6571
filter_term: filterTerm,

src/elements/content-sharing/hooks/useContactsByEmail.js

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,10 @@ function useContactsByEmail(
5555
api.getMarkerBasedUsersAPI(false).getUsersInEnterprise(
5656
itemID,
5757
response => resolveAPICall(resolve, response, transformUsers),
58-
handleError,
58+
error => {
59+
handleError(error);
60+
resolve({});
61+
},
5962
{ filter_term: email },
6063
);
6164
});
@@ -74,7 +77,10 @@ function useContactsByEmail(
7477
api.getMarkerBasedUsersAPI(false).getUsersInEnterprise(
7578
itemID,
7679
(response: UserCollection) => resolveAPICall(resolve, response, transformUsers),
77-
handleError,
80+
error => {
81+
handleError(error);
82+
resolve({});
83+
},
7884
{ filter_term: parsedFilterTerm },
7985
);
8086
});

0 commit comments

Comments
 (0)