import Teams from '../../src/api/models/Teams'; describe('TeamsAPI', () => { const teamId = 1; const roleId = 7; const createPromise = () => Promise.resolve(); const mockHttp = ({ post: jest.fn(createPromise) }); const TeamsAPI = new Teams(mockHttp); afterEach(() => { jest.clearAllMocks(); }); test('associate role calls post with expected params', async (done) => { await TeamsAPI.associateRole(teamId, roleId); expect(mockHttp.post).toHaveBeenCalledTimes(1); expect(mockHttp.post.mock.calls[0]).toContainEqual(`/api/v2/teams/${teamId}/roles/`, { id: roleId }); done(); }); test('read teams calls post with expected params', async (done) => { await TeamsAPI.disassociateRole(teamId, roleId); expect(mockHttp.post).toHaveBeenCalledTimes(1); expect(mockHttp.post.mock.calls[0]).toContainEqual(`/api/v2/teams/${teamId}/roles/`, { id: roleId, disassociate: true }); done(); }); });