chai-match-pattern

NPM

関連モジュール: lodash-match-pattern lodash-checkit

chai-match-pattern は JSON オブジェクトのディープマッチング用の多機能ツールです。基本的に lodash-match-pattern 用の Chai のラッパーで、パターンマッチング機能についての詳細なドキュメントがあります。この機能には、下記の方法による JSON プロパティのディープマッチングが含まれます。

  • 厳密な値
  • 正規表現
  • checkit のいずれかのマッチャー (例: _.isURL_.isEmail)
  • lodash のいずれかのマッチャー (例: _.isObject_.isNaN)
  • 部分一致
  • カスタムマッチング関数
  • フィルタされた値
  • その他多数…

基本的な使用方法

# with npm
npm install chai-match-pattern --save-dev
# or with yarn
yarn add --dev chai-match-pattern

テストファイルに挿入する

const chai = require('chai');
const chaiMatchPattern = require('chai-match-pattern');
chai.use(chaiMatchPattern);
const _ = chaiMatchPattern.getLodashModule(); // recommend using our lodash extension

次に、.matchPattern(pattern) アサーション関数を使用して、パターンで JSON を検査します。たとえば

chai.expect({a: 1, b: 'abc'}).to.matchPattern({a: 1, b: _.isString});

詳細については lodash-match-pattern を参照してください。

さらに、含まれている isXxxx 関数は、すべてアサーション関数として直接使用できます。たとえば

chai.expect(7.5).isBetween(7, 8);