Я создал приложение MVC, и я установил Roger Martin's sqlite Providers вместо поставщиков по умолчанию. Мне любопытно, как я буду тестировать блок.Unit Testing Sqlite Memberhip Provider в приложении MVC
Ниже приведен урезанный метод, который имеет много проверок, только один из которых все еще присутствует. Среди прочего, я хочу написать тесты, которые гарантируют, что невозможно зарегистрировать, если имя пользователя было принято, и может зарегистрироваться, если имя пользователя является бесплатным (и другие проверки) и т. Д.
Я могу видеть, как модульные тесты может определить успех или неудачу, но не сбой по определенной причине, если я не проверю выходной параметр MemberhipCreateStatus, но я не уверен, есть ли лучший способ. Кроме того, что мне нужно предоставить для объекта providerUserKey? Любое понимание было бы очень полезно.
public override MembershipUser CreateUser(string username, string password, string email, string passwordQuestion, string passwordAnswer, bool isApproved, object providerUserKey, out MembershipCreateStatus status)
{
//some validations, and then:
MembershipUser u = GetUser(username, false);
if (u == null)
{
///register user
status = MembershipCreateStatus.Success;
return GetUser(username, false);
}
else
{
status = MembershipCreateStatus.DuplicateUserName;
}
return null;
}
Вы пытаетесь модульного тестирования кода в провайдере SQLite членства или в контроллере? –
На данный момент поставщик членства SQLite. Я хочу удостовериться, что регистрация аккаунта отклоняется по определенной и веской причине. Я еще не начал писать контроллер, но я не вижу проблемы с написанием тестов для него. – splatto