【问题标题】:Chai (as promised) match property柴(按承诺)匹配属性
【发布时间】:2016-08-10 12:06:02
【问题描述】:

如何根据chai 中的正则表达式测试属性?加分点:我实际上想使用chai-as-promised 测试由承诺返回的对象的属性(但我想如果我知道非承诺方式chai-as-promised 应该以同样的方式工作)。

我的功能

function foo() { 
  return Promise.resolve({ bar: 'baz' }); 
}

我的测试(我的想法):

// Non-Promise-way
foo().should.match.property('bar', /baz/);    

// Promise-way
foo().should.eventually.match.property('bar', /baz/);

(但没有match.property

【问题讨论】:

  • 这个问题是关于检查属性的正确方法还是关于如何使用正则表达式检查该属性?
  • 它的组合。我刚刚发现它是foo().should.eventually.have.property('bar').and.match(/baz/);。有人也回答了这个问题,但随后将其删除。我现在看到我需要更新我的问题。
  • 我删除它是因为我没有进行匹配,而是进行了相等检查。
  • 更正你的答案,我会接受它:)

标签: javascript unit-testing chai chai-as-promised


【解决方案1】:

Chai API docs我得出这个:

foo().should.have.property('bar').and.match(/baz/);

或者对于承诺风格:

foo().should.eventually.have.property('bar').and.match(/baz/);

【讨论】:

    猜你喜欢
    • 2019-11-15
    • 2021-12-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多