chai-samsam

Chai を拡張して、あらゆる種類のオブジェクトに対して、samsam を使用して厳密に照合するアサーションを行います。
このプロジェクトは chai-deep-match のフォークとして開始されました。
そのインターフェースとテストケースは保持されすべて合格しています。そのため、ドロップイン置換として使用できます。
ただし、これによりはるかにゆるく深く照合できます。(samsam ドキュメントを参照してください)
インストール
$ npm install --save chai
$ npm install --save chai-samsam
使用方法
const chai = require('chai')
const chaiSamSam = require('chai-samsam')
chai.use(chaiSamSam)
expect([{
firstName: 'John',
lastName: 'Doe',
jobs: [{ bartender: true, barista: true }]
}]).to.deep.match([
{ jobs: [{ barista: true }] }
])
// => pass
expect([{
firstName: 'John',
lastName: 'Doe',
jobs: [{ bartender: true, barista: true }]
}]).to.not.deep.match([
{ jobs: [{ pilot: true }] }
])
// => pass
// also possible
assert.deepMatch(a, b)
assert.notDeepMatch(a, b)
ライセンス
著作権所有者(c)2017年、Tim Beyer(MIT ライセンス)