assert.propContains()

添加的版本:2.18.0

说明

propContains( actual, expected, message = "" )

检查对象是否包含某些属性。

名字 说明
actual 正在测试的表达式
expected 已知比较值
message(字符串) 实际值的简短说明

propContains断言只比较子集预期对象中的属性,并测试这些键是否作为具有严格相等值的自己的属性存在。

此方法是递归的,也允许对嵌套对象进行部分比较。

也可以看看

例子

QUnit.test('example', assert => {
  const result = {
    foo: 0,
    vehicle: {
      timeCircuits: 'on',
      fluxCapacitor: 'fluxing',
      engine: 'running'
    },
    quux: 1
  };

  assert.propContains(result, {
    foo: 0,
    vehicle: { fluxCapacitor: 'fluxing' }
  });

  function Point (x, y) {
    this.x = x;
    this.y = y;
  }

  assert.propContains(
    new Point(10, 20),
    { y: 20 }
  );

  assert.propContains(
    [ 'a', 'b' ],
    { 1: 'b' }
  );

  const nested = {
    north: [ /* ... */ ],
    east: new Point(10, 20),
    south: [ /* ... */ ],
    west: [ /* ... */ ]
  };

  assert.propContains(nested, { east: new Point(10, 20) });
  assert.propContains(nested, { east: { x: 10, y: 20 } });
  assert.propContains(nested, { east: { x: 10 } });
});