assert.deepEqual()
追加されたバージョン: 1.0.0.
説明
deepEqual( actual, expected, message = "" )
すべての自有プロパティと継承プロパティを考慮した再起的な厳密な比較です。
名前 | 説明 |
---|---|
actual |
テスト対象の式 |
expected |
既知の比較値 |
message (文字列) |
実際の式の簡潔な説明 |
このアサーションは渡されたとおりに完全なオブジェクトを比較します。基本型の場合、厳密な比較を実行します。オブジェクトの場合、オブジェクトの同一性は無視され、代わりにすべての自有および継承したプロパティの再帰的比較が使用されます。つまり、配列、プレーンオブジェクト、任意のクラスインスタンスオブジェクトはすべてこのように比較できます。
再帰的比較には、Date オブジェクト、正規表現 (RegExp)、NaN、Symbol、Set、Map オブジェクトなどの ES6 機能に対する組み込みのサポートが含まれます。
自有プロパティのみで厳密な等価性を主張するには、代わりに assert.propEqual()
を参照してください。
assert.notDeepEqual()
を使用して代わりに不等式を確認できます。
例
特定のオブジェクトのプロパティと値を検証します。
QUnit.test('passing example', assert => {
const result = { foo: 'bar' };
assert.deepEqual(result, { foo: 'bar' });
});
QUnit.test('failing 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'
});
});