Тестирование валидаций MongooseJs

Кто-нибудь знает, как тестировать проверки Mongoose?

Пример , У меня есть следующая схема (в качестве примера):

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

Я хочу протестировать валидации. Конечным результатом является то, что я хочу иметь возможность протестировать валидации, и в зависимости от происходящего я могу написать другие тесты, которые проверят взаимодействие между этими частями кода. Пример: пользователь пытается зарегистрироваться с тем же именем пользователя, что и использованный (электронная почта уже используется). Мне нужно тест, который я могу перехватить или увидеть, что проверка работает БЕЗ обращения к БД. Я НЕ хочу использовать Mongo во время этих тестов. Это должны быть тесты UNIT, НЕ интеграционные тесты. :)

Спасибо!

7
задан Donn Felker 10 February 2012 в 03:39
поделиться