単体テストで次のようなコードを使用しようとしていますが、
/* Test setup code */
_routes = RouteTable.Routes;
MvcApplication.RegisterRoutes(_routes); //set up the routes as they would be in actual application
/* test code */
Expression<Func<SearchController, ActionResult>> actionFunc;
actionFunc = action => action.Results("x", 3, null);
RouteTestingExtensions.Route(
"~/Search/Results?searchText=x"
).ShouldMapTo<SearchController>(actionFunc);
問題は、これが「期待される結果 by was Results?searchText=x」で失敗することです。
URL(クエリ文字列を含む)が正しいコントローラー、アクション、および引数に解決されることをテストできるソリューションを誰かが持っていますか?
参考までに、Global.asax.cs に明示的なルート設定はありません。実際のアプリではデフォルト ルートが機能するためです。このテストでは機能しません。