Как выполнить модульное тестирование маршрутов в ASP.NET MVC Beta 1? - PullRequest
2 голосов
/ 30 января 2009

В предыдущих версиях ASP.NET MVC я нашел статьи о том, как выполнить юнит-тестирование маршрутов от Стивена Вальтера и Скотта Гу , но он не работает в ASP.NET MVC Beta 1. Если мне нужно использовать фреймворк, я бы предпочел решение, использующее Rhino Mocks.

Ответы [ 3 ]

3 голосов
/ 30 января 2009
2 голосов
/ 03 февраля 2009

Я использую модульные тесты Visual Studio, поэтому я не смог использовать Helper Tim, упомянутый «из коробки». (Не требуется). В любом случае статья показала код, который мне был нужен. На самом деле в разделе «никто не хочет использовать этот уродливый код».

        RouteCollection routes = new RouteCollection();
        MvcWeb.MvcApplication.RegisterRoutes(routes);


        var httpContext = MockRepository.GenerateStub<HttpContextBase>();

        httpContext.Stub(x => x.Request).Return(MockRepository.GenerateStub<HttpRequestBase>());

        httpContext.Request.Stub(x => x.PathInfo).Return("");

        httpContext.Request.Stub(x => x.AppRelativeCurrentExecutionFilePath).Return("~/foo/bar");



        var routeData = routes.GetRouteData(httpContext);



        Assert.AreEqual(routeData.Values["controller"],"foo");
0 голосов
/ 03 февраля 2009
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...