[JEST]如何在使用.toMatchObject时定义可选参数?

时间:2018-06-01 12:35:36

标签: javascript jestjs

我想使用.toMatchObject来检查Web响应数据的结构。

在我的计划中,我可以使用类似Typescript的.toMatchObject(),我需要做的只是定义一个对象并调用 expect(res.result).toMatchObject(matchObj);

对于那些可选参数,我使用expect.extend定义一个函数来检查参数是未定义的还是某个我想要的类。

但是通过我的测试,当一些参数没有被定义时,jest将在expect.extend中抛出一个没有调用函数的错误。

如何实现此功能?

有我的代码。 expect.toBeUnnessary在expect.extend中定义。它检查参数是未定义的还是某个类。

const categoryObj = {
  CategoryID: expect.any(Number),
  Index: expect.any(Number),
  Name: expect.any(String),
  Children: expect.toBeUnnessary(Array)
};
expect(category).toMatchObject(categoryObj);

0 个答案:

没有答案