如何使用sinon存根匹配对象的某些值

问题描述 投票:0回答:1

我一直在用sinon写测试。在同一时间我编写了存根,其中传递了一些输入参数并返回了一个对象。此对象返回一些值以及系统在执行时生成的随机日期值。所以需要关注以下内容。

  1. 我如何处理相同的匹配参数本质上是静态的,我不知道实际代码生成的日期的可能值。
  2. 我们如何使用sinon跳过对象的某些键值。即说对象具有以下值。 const object = {name: "abc", employeeNumber : "123"}我只想检查名称是否为“abc”,并且不需要匹配employeeNumber。
unit-testing testing sinon sinon-chai
1个回答
0
投票

来自sinon.match docs

要求该值不是nullundefined,并且至少具有与expectation相同的属性。


来自sinon.assert.match docs

使用sinon.match来测试参数是否可以被认为是匹配的。


例:

test('partial object match', () => {
  const object = { name: "abc", employeeNumber : "123" };
  sinon.assert.match(object, { name: 'abc' });  // SUCCESS
})
© www.soinside.com 2019 - 2024. All rights reserved.