【问题标题】:Chai deep equal not working柴深等于不工作
【发布时间】:2017-11-17 12:50:09
【问题描述】:

我正在尝试使用 Chai,但由于某种原因,我无法进行深度相等比较。

这是一个最小的例子

var chai = require('chai');
var expect = chai.expect;
...


expect({
    test: {a:2}
    }).to.have.deep.property('test', {a:2});

生成这个输出

AssertionError: expected { test: { a: 2 } } to have a deep property 'test' of { a: 2 }, but got { a: 2 }

我正在使用 Chai 3.5.0,并且希望这个断言是正确的。

【问题讨论】:

    标签: javascript unit-testing chai


    【解决方案1】:

    您必须升级到更新版本的 Chai。此功能在 Chai 4 中引入,请参阅 4.x.x Complete Migration Guide。

    【讨论】:

    • 哇,谢谢!我检查的第一件事是这里是否有更新版本 aaronsofaly.github.io/chai-docs/releases 但 3.5.0 是最新的....但是在 github 上检查当然有更新版本:)
    • 我现在可以看出这是谷歌的错。我链接的那些页面不是官方文档!
    【解决方案2】:

    对于 4.0.0 版,他们改变了 '.have.deep' 的行为 您可以在此处查看发行说明

    chai releases 4.0.0

    如果可能的话,我建议你更新 chai。

    【讨论】:

      猜你喜欢
      • 2016-04-24
      • 2021-11-01
      • 2021-07-25
      • 2022-07-27
      • 2013-03-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-09-25
      相关资源
      最近更新 更多