Biorąc pod uwagę poniższy przykładowy kod, jak skonfigurować PEX do przestrzegania moich umów Code?Jak skonfigurować Pex, aby przestrzegać umów dotyczących kodu?
public static IEnumerable<User> Administrators(this UserGroup userGroup)
{
Contract.Requires(userGroup != null);
Contract.Requires(userGroup.UserList != null);
return userGroup.UserList.Where(ul => ul.IsAdmin == true);
}
Obecny problem: Kiedy uruchamiam Pex, nadal generuje przypadki testowe, które naruszają określone umowy kodowe.
FYI: Here are the 'Code Contracts' settings w moim pliku csproj.
EDIT: Czy coś
break in SP1?
Czy próbowałeś wysłać je e-mailem? [email protected] – porges
Myślę, że to błąd. Rozwiązanie Johna Nicholasa działa, ale nadal nie jest prawidłowe zachowanie dla PEX. Punktem stosowania kontraktów kodu z pexem było to, że PEX automatycznie wziął pod uwagę umowy kodowe i traktował ich awarię jako oczekiwane zachowanie lub test pozytywny. –