Una delle azioni dei miei controller, che viene chiamata in una richiesta Ajax, sta restituendo un URL al lato client in modo che possa effettuare un reindirizzamento. Sto usando Url.RouteUrl(..)e durante i test delle mie unità questo non riesce poiché il Controller.Urlparametro non è precompilato.
Ho provato un sacco di cose, tra gli altri, che tentano di stub UrlHelper(che non), creando manualmente una UrlHelpercon una RequestContextche ha un contuso HttpContextBase(che non è riuscito in una RouteCollection.GetUrlWithApplicationPathchiamata).
Ho cercato su Google ma non ho trovato praticamente nulla sull'argomento. Sto facendo qualcosa di incredibilmente stupido Url.RouteUrlnell'azione del mio controller? C'è un modo più semplice?
A peggiorare le cose, vorrei essere in grado di testare l'URL restituito nel mio test unitario - in realtà sono interessato solo a sapere che sta reindirizzando sulla rotta giusta, ma dal momento che sto restituendo un URL anziché un percorso, vorrei controllare l'URL che è stato risolto (ad es. utilizzando uno stubbed RouteCollection) - ma sarò felice di far passare il mio test all'inizio.