Donate. I desperately need donations to survive due to my health

Get paid by answering surveys Click here

Click here to donate

Remote/Work from Home jobs

Cannot read property 'then' of undefined in JEST ReactJS unit testing

Hi I am currently working on ReactJS unit testing in JEST. In the following code snippet I am writing a test case for the function getUsercallback

return new Promise((resolve, reject) => {
      if (window.user) {
        window.wm.getUser(getUsercallback(resolve,reject));
      }

where getUsercallback is defined as,

export const getUsercallback=(resolve,reject)=>{
  userInfo => {
    console.log(" Got user info")
    resolve(userInfo);
  },
  err => {
    console.log("Error")
    reject(err)
    // code to exit app
  },
  {
    resume: true,
  }
}

and its testcase as,

import { getUsercallback } from './user';

const resolveMock = jest.fn();
const rejectMock = jest.fn();
test(' check getUser success/err', () => {
    getUsercallback(resolveMock, rejectMock).then(
        userInfo => {
            return expect(resolveMock).toHaveBeenCalled();
            done();
        },
        err => {
            return expect(rejectMock).toHaveBeenCalled();
            done();
        },
        {

        }

    );
});

But I get the error as ".then not defined". Please help me with this.

Comments