これは広く普及しているもののメンテナンスは放棄された npm パッケージの chai-param (https://github.com/theblacksmith/chai-param) のフォークです。

最新の Node.js バージョンをサポートするためにインポートパスが修正されました。

chai-param-nn

メソッドのパラメータを検証するために chai を使用します

クイックスタート

プロジェクトにインストールします

npm install chai-param-nn

読み込んで必要に応じて利用します

var chai = require('chai'),
    chaiParam = require('chai-param-nn'),
    expect = chai.expect,
    should = chai.should(),
    param = chaiParam.param;

chai.use(chaiParam);

メソッドを保護して気に入ってください :)

function register(user, pass) {
	// using should
	param(user, 'user', 'UsersCtl.register').should.not.be.empty;

	// or using expect
	expect(user).param('user', 'UsersCtl.register')
		.to.have.length.above(5)
		.and.below(16);
}

設定

chai-param-nn は chaiParam.config オブジェクトプロパティに値を設定することで設定できます (例)。

var chaiParam = require('chai-param-nn');

chaiParam.config.improveMessages = true;

improveMessages

型: Boolean デフォルト値: true

chai-param-nn が chai のメッセージをさらに記述的なものと置き換える必要があるか否かを制御します。たとえば、以下を取得する代わりに…

UserCtl.register: expected 'asdf' to have a length above 5 but got 4

以下を取得します…

Improved error message

エラーメッセージに showCaller を表示する

型: Boolean デフォルト値: true

このオプションは node でのみ使用可能であり、**improveMessagestrue である必要があります**。

chaiParam.config.showCaller = true;

disableColors

型: Boolean デフォルト値: false

メッセージの色付けを無効にします。退屈ですが、テストには役立ちます。