如何模拟数据对象?

How to mock object of data?

我在 Expo 中使用 React Native,在快照测试中使用 Jest,在查询中使用 Redux Toolkit。我想创建快照,但总是收到错误 TypeError。我认为问题出在我的模拟中,我不知道如何模拟整个数据对象。示例如下:

jest.mock('../../services', () => ({
  useGetOfficeDataQuery: jest.fn().mockReturnValue('Biuro księgowe')
}));


it('renders correctly', () => {
  const snap = renderer.create(<ContactScreen />).toJSON();
  expect(snap).toMatchSnapshot();
});

但是在这个模拟中,我需要像下面这样模拟整个对象:

{
    "id": "xxxxxxxxxxxxxxxxxxxxxxxx",
    "name": "Xxxxxxxxxxxx",
    "nip": "xxxxxxxxxx",
    "phone": null,
    "city": "xxxxx",
    "zip_code": "xx-xxx",
    "street": "xxxxxxxxxxxxxxxxx",
    "house_number": "xxxxxxx",
    "room_number": "xx",
    "email": "xxxxxxxxx",
    "email_correspondence": "xxxxxxxxxxxxxxx"
}

好吧,我想出来了,为了模拟一个对象,我需要将其包装在 { } 中并将其写成 json,代码示例如下:

jest.mock('../../services', () => ({
  useGetOfficeDataQuery: jest.fn().mockReturnValue({
    id: "xxxxxxxxxxxxxxxxxxxxx",
    name: "xxxxxxxxxx",
  }),
}));