Mongoose Validations をテストする方法を知っている人はいますか?
例として、次のスキーマがあります (例として):
var UserAccount = new Schema({
user_name : { type: String, required: true, lowercase: true, trim: true, index: { unique: true }, validate: [ validateEmail, "Email is not a valid email."] },
password : { type: String, required: true },
date_created : { type: Date, required: true, default: Date.now }
});
validateEmailメソッドは次のように定義されています。
// Email Validator
function validateEmail (val) {
return /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/.test(val);
}
検証をテストしたい。最終的な結果は、検証をテストできるようになりたいということです。これらの発生に応じて、それらのコード間の相互作用をテストする他のテストを作成できます。例: ユーザーが取得したものと同じユーザー名でサインアップしようとします (電子メールは既に使用されています)。DBにアクセスせずに検証が機能していることを実際にインターセプトまたは確認できるテストが必要です。これらのテスト中に Mongo を攻撃したくありません。これらは、統合テストではなく、UNIT テストである必要があります。:)
ありがとう!