{ expect("-6ren">
gpt4 book ai didi

javascript - expect.anything() 不适用于 expect.toBe()

转载 作者:行者123 更新时间:2023-11-30 11:09:05 28 4
gpt4 key购买 nike

expect.anything() 不适用于 expect.toBe(),但适用于 expect.toEqual()

test("this will pass", () => {
expect("red").toEqual(expect.anything());
expect("red").toBe(expect.anything());
});

两个测试都应该通过,但是第二个测试失败了

最佳答案

toBe使用 Object.is 比较值(参见 description );
expect.anything() 返回 Anything 的对象 class

因此,在第二种情况下,您将字符串与对象进行比较 - 这就是它失败的原因。

toEqual事实上调用method准备好与匹配器对象(如 Anything 类的实例)一起工作 - 它调用匹配器的 asymmetricMatch 方法。

因为在第一种情况下 asymmetricMatch 返回 true,所以第一个测试通过。

关于javascript - expect.anything() 不适用于 expect.toBe(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54479499/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com