assert.notPropContains()

添加的版本:2.18.0

说明

notPropContains( actual, expected, message = "" )

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

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

notPropContains 断言比较预期对象中的属性子集,并根据严格的相等比较测试这些键是否不存在或持有不同的值。

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

也可以看看

例子

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

  // succeeds, property "timeCircuits" is actually "on"
  assert.notPropContains(result, {
    vehicle: {
      timeCircuits: 'off'
    }
  });

  // succeeds, property "wings" is not in the object
  assert.notPropContains(result, {
    vehicle: {
      wings: 'flapping'
    }
  });

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

  assert.notPropContains(
    new Point(10, 20),
    { z: 30 }
  );

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

  assert.notPropContains(nested, { east: new Point(88, 42) });
  assert.notPropContains(nested, { east: { x: 88 } });
});