Comment générer des URL ASP.NET MVC dans un projet de test unitaire?
-
20-08-2019 - |
Question
Comment puis-je générer les URL correspondant au contrôleur, à l'action et aux paramètres (pour un projet ASP.NET MVC donné) dans un autre projet (une bibliothèque de classes utilisée pour les tests)?
Tout ce que j'ai trouvé jusqu'à présent, c'est HtmlHelper.GenerateRouteLink , mais je n'ai pas encore trouvé comment passer le bon contexte de requête et la bonne collection de routes.
La solution
Essayez ceci:
var routes = new RouteCollection();
MvcApplication.RegisterRoutes(routes);
var context = new Mock<HttpContextBase>();
var urlHelper = new UrlHelper(new RequestContext(context.Object, new RouteData()), routes);
var url = urlHelper.Action("action", "controller", new { id = ... });
De SO - MVC ASP.NET : Contrôleurs de tests unitaires utilisant UrlHelper
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow