Test de l'unité RedirectToReferrer () de Monorail
-
09-06-2019 - |
Question
J'essaie d'écrire un test unitaire pour une méthode d'action qui appelle la méthode Controller.RedirectToReferrer ()
, mais j'obtiens un " aucun référent disponible " message.
Comment puis-je isoler et se moquer de cette méthode?
La solution
Avez-vous pensé à créer un double test ?
Autres conseils
Dans ma version du coffre sur lequel je travaille, r5299, je devais le faire pour simuler RedirectToReferrer. Je pense que cela a été changé récemment, je ne suis pas sûr.
[TestFixture]
public class LoginControllerTests : GenericBaseControllerTest<LoginController>
{
private string referrer = "http://www.example.org";
protected override IMockRequest BuildRequest()
{
var request = new StubRequest(Cookies);
request.UrlReferrer = referrer;
return request;
}
protected override IMockResponse BuildResponse(UrlInfo info)
{
var response = new StubResponse(info,
new DefaultUrlBuilder(),
new StubServerUtility(),
new RouteMatch(),
referrer);
return response;
}
etc. etc.
C’est curieusement la réponse que vous devez molester pour que RedirectToReferrer
fonctionne. J'ai dû ramper dans les sources de monorail pour le comprendre.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow