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);