assert.deepEqual()

添加的版本:1.0.0

说明

deepEqual( actual, expected, message = "" )

深度递归严格比较,处理原始类型、数组、对象、正则表达式、日期和函数,考虑所有自己和继承的属性。

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

deepEqual 断言可用于比较对象的属性值,使得 { key: value } 等于 { key: value } 。对于对象,它们的身份被 deepEqual 忽略。

deepEqual 比较所有继承的属性。使用 assert.propEqual() 仅在自己的属性上测试深度和严格相等。

assert.notDeepEqual() 可用于显式测试深度、严格的不等式。

例子

验证给定对象的属性和值。

QUnit.test('good example', assert => {
  const result = { foo: 'bar' };

  assert.deepEqual(result, { foo: 'bar' }, 'result object');
});
QUnit.test('bad example', assert => {
  const result = {
    a: 'Albert',
    b: 'Berta',
    num: 123
  };

  // fails because the number 123 is not strictly equal to the string "123".
  assert.deepEqual(result, {
    a: 'Albert',
    b: 'Berta',
    num: '123'
  });
});