Ask Your Question
2

How can I handle the error message in Typescript Jest which says that mock or mockReturnedValue cannot be found on the types that I want to mock?

asked 2022-05-20 11:00:00 +0000

david gravatar image

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted
3

answered 2022-06-20 04:00:00 +0000

devzero gravatar image

To handle this error message, you need to declare the types of the object that you want to mock before using the mock or mockReturnValue functions. You can do this by using the jest.Mocked function to create a type safe version of the object.

Here is an example of how to do so:

import { MyObject } from './my-object';

// create a type safe version of MyObject
const mockedMyObject: jest.Mocked<MyObject> = {
  // define your mocked functions and return values here
  myFunction: jest.fn(),
  myValue: 'mocked value',
};

// use the mocked object in your test
test('my test', () => {
  // call a mocked function and expect a certain result
  mockedMyObject.myFunction.mockReturnValue('expected result');
  expect(mockedMyObject.myFunction()).toEqual('expected result');
});

In this example, the Mocked function creates a type safe version of MyObject which can be used to define the mocked functions and return values. This will prevent the error message that says mock and mockReturnValue cannot be found.

edit flag offensive delete link more

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account. This space is reserved only for answers. If you would like to engage in a discussion, please instead post a comment under the question or an answer that you would like to discuss

Add Answer


Question Tools

Stats

Asked: 2022-05-20 11:00:00 +0000

Seen: 10 times

Last updated: Jun 20 '22