Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import { Auth } from 'aws-amplify';
- import signIn from './shared';
- describe('signIn', () => {
- afterEach(() => {
- jest.restoreAllMocks();
- });
- it('invokes the success callback on success', (done) => {
- const mockUser = { username: 'jon', password: 'snow' };
- jest
- .spyOn(Auth, 'signIn')
- .mockImplementation(() => Promise.resolve(mockUser));
- const mockSuccessCb = (user) => {
- expect(user).toBe(mockUser);
- done();
- };
- const mockErrorCb = (err) => {
- done(err);
- };
- signIn('jon', 'snow', mockSuccessCb, mockErrorCb);
- });
- it('invokes the error callback on err', (done) => {
- const mockUser = { username: 'jon', password: 'snow' };
- jest
- .spyOn(Auth, 'signIn')
- .mockImplementation(() => Promise.reject(mockUser));
- const mockSuccessCb = (user) => {
- expect(Auth.signIn).toHaveBeenCalledWith('jon', 'snow');
- expect(user).toBe(mockUser);
- done();
- };
- const mockErrorCb = () => {
- expect(Auth.signIn).toHaveBeenCalledWith('bob', 'tom');
- done();
- };
- signIn('bob', 'tom', mockSuccessCb, mockErrorCb);
- });
- });
Add Comment
Please, Sign In to add comment