我正在使用expect(item).toEqual(otherItem)
。根据我读过的所有内容,expect({ a: "a", b: undefined }).toEqual({ a: "a" })
应该会通过。否则,我应该使用toStrictEqual
。 E.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",
- },
]
知道为什么吗?
答案 0 :(得分:0)
啊。我是个白痴。开玩笑没有错,测试正确地失败了。我读到的Jest输出错误。
是说整个对象:
- Object {
- "attributes": Array [],
- "destination": "_c",
- "kind": "kind",
- "linkable": "Unlinkable",
- "source": "_a",
从数组中丢失。尽管它也报告了undefined
的差异,但这并不是导致toEqual
失败的原因。注意destination
是不同的。测试应该返回两个对象。