assert.propContains()

添加版本:2.18.0.

描述

propContains( actual, expected, message = "" )

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

名称 描述
实际值 正在测试的表达式
预期值 已知比较值
message (字符串) 实际表达式的简短描述

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

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

另请参阅

示例

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 } });
});