Salah satu tindakan pengontrol saya, yang dipanggil dalam permintaan Ajax, adalah mengembalikan URL ke sisi klien sehingga dapat melakukan pengalihan. Saya menggunakan Url.RouteUrl(..)
dan selama pengujian unit saya gagal karena Controller.Url
parameter tidak diisi sebelumnya.
Saya mencoba banyak hal, antara lain berusaha untuk rintisan UrlHelper
(yang gagal), secara manual membuat UrlHelper
dengan RequestContext
yang memiliki rintisan HttpContextBase
(yang gagal pada RouteCollection.GetUrlWithApplicationPath
panggilan).
Saya telah mencari Google tetapi hampir tidak menemukan apa-apa tentang masalah ini. Apakah saya melakukan sesuatu yang sangat bodoh menggunakan Url.RouteUrl
tindakan Controller saya? Apakah ada cara yang lebih mudah?
Untuk membuatnya lebih buruk, saya ingin dapat menguji URL yang dikembalikan dalam tes unit saya - sebenarnya saya hanya tertarik mengetahui bahwa itu mengarahkan ke rute yang benar, tetapi karena saya mengembalikan URL alih-alih rute, saya ingin mengontrol URL yang diselesaikan (mis. dengan menggunakan stubbed RouteCollection
) - tetapi saya akan senang mendapatkan lulus pengujian saya untuk memulai.