玩笑/期望“ toEquals”失败,并带有未定义的属性

时间:2019-01-18 16:18:13

标签: javascript jestjs

我正在使用expect(item).toEqual(otherItem)。根据我读过的所有内容,expect({ a: "a", b: undefined }).toEqual({ a: "a" })应该会通过。否则,我应该使用toStrictEqualE.g. here, in "basic matches"

但是,我的输出失败:

     Array [
       Object {
   +     "alertId": undefined,
         "attributes": Array [],
         "destination": "_b",
         "kind": "kind",
         "linkable": "Unlinkable",
         "source": "_a",
   +     "validFrom": undefined,
   +     "validTo": undefined,
       },
   -   Object {
   -     "attributes": Array [],
   -     "destination": "_c",
   -     "kind": "kind",
   -     "linkable": "Unlinkable",
   -     "source": "_a",
   -   },
     ]

知道为什么吗?

1 个答案:

答案 0 :(得分:0)

啊。我是个白痴。开玩笑没有错,测试正确地失败了。我读到的Jest输出错误。

是说整个对象:

-   Object {
-     "attributes": Array [],
-     "destination": "_c",
-     "kind": "kind",
-     "linkable": "Unlinkable",
-     "source": "_a",

从数组中丢失。尽管它也报告了undefined的差异,但这并不是导致toEqual失败的原因。注意destination是不同的。测试应该返回两个对象。