public ParameterizedWebRoutingRoutingRunner()
		{
			_routes = new RouteCollection();
			_matches = new Dictionary<string, string>();

			_httpContext = new StubHttpContextForRouting();
		}
示例#2
0
        public ParameterizedWebRoutingRoutingRunner()
        {
            _routes  = new RouteCollection();
            _matches = new Dictionary <string, string>();

            _httpContext = new StubHttpContextForRouting();
        }
示例#3
0
 public void WhenIHitEnter()
 {
     _context = new StubHttpContextForRouting(requestUrl: _url);
     _routes  = new RouteCollection();
     RouteConfig.RegisterRoutes(_routes);
     _routeData = _routes.GetRouteData(_context);
 }
示例#4
0
        public RouteData GetRouteData(string url)
        {
            var context = new StubHttpContextForRouting(requestUrl: url);
            var routes  = new RouteCollection();

            RouteConfig.RegisterRoutes(routes);

            var routeData = routes.GetRouteData(context);

            return(routeData);
        }
    public static RouteValueDictionary GetRouteDataFromURL(string absoluteURL)
    {
        var      testUrl = "~" + new Uri(absoluteURL).AbsolutePath;
        var      context = new StubHttpContextForRouting(requestUrl: testUrl);
             var routes  = new System.Web.Routing.RouteCollection();
             MvcApplication.RegisterRoutes(routes);

        System.Web.Routing.RouteData routeData = routes.GetRouteData(context);

        return(routeData.Values);
    }
    public void RouteWithTooManySegments()
    {
        // Arrange
        var context = new StubHttpContextForRouting(requestUrl: "~/a/b/c/d");
        var routes  = new RouteCollection();

        RouteConfig.RegisterRoutes(routes);
        // Act
        RouteData routeData = routes.GetRouteData(context);

        // Assert
        Assert.IsNull(routeData);
    }
示例#7
0
        public void DefaultRouteTest(string url, string expectedController,
                                     string expectedAction)
        {
            var context = new StubHttpContextForRouting(requestUrl: url);

            _mockGameService.Setup(m => m.ExistEntity(It.IsAny <string>())).Returns(false);
            // Act
            RouteData routeData = _routes.GetRouteData(context);

            // Assert
            Assert.AreEqual(expectedController.ToUpper(), ((string)routeData.Values["controller"]).ToUpper());
            Assert.AreEqual(expectedAction.ToUpper(), ((string)routeData.Values["action"]).ToUpper());
        }
示例#8
0
        public void DefoultRoute(string url, string httpMethod, string expectedController, string expectedAction)
        {
            // Arrange
            var context = new StubHttpContextForRouting(requestUrl: url, httpMethod: httpMethod);

            // Act
            RouteData routeData = _routes.GetRouteData(context);

            // Assert
            Assert.IsNotNull(routeData);
            Assert.AreEqual(expectedController.ToUpper(), ((string)routeData.Values["controller"]).ToUpper());
            Assert.AreEqual(expectedAction.ToUpper(), ((string)routeData.Values["action"]).ToUpper());
        }
    public void RouteForEmbeddedResource()
    {
        // Arrange
        var context = new StubHttpContextForRouting(requestUrl: "~/foo.axd/bar/baz/biff");
        var routes  = new RouteCollection();

        RouteConfig.RegisterRoutes(routes);
        // Act
        RouteData routeData = routes.GetRouteData(context);

        // Assert
        Assert.IsNotNull(routeData);
        Assert.IsInstanceOfType(routeData.RouteHandler, typeof(StopRoutingHandler));
    }
示例#10
0
        public void Should_work_for_no_arguments()
        {
            var context = new StubHttpContextForRouting(requestUrl: "~/aaaaaaaa");
            var routes  = new RouteCollection();

            routes.Add(new Route("{controller}", new StubRouteHandler()));

            RouteData routeData = routes.GetRouteData(context);

            // Assert
            Assert.IsNotNull(routeData);
            Assert.AreEqual("aaaaaaaa", routeData.Values["controller"]);
//			Assert.AreEqual("Index", routeData.Values["action"]);
        }
示例#11
0
        public RouteData GetAreaRouteData(string url, AreaRegistration areaConfig)
        {
            var routes = new RouteCollection();

            var areaContext = new AreaRegistrationContext(areaConfig.AreaName, routes);

            areaConfig.RegisterArea(areaContext);

            var context = new StubHttpContextForRouting(requestUrl: url);

            var routeData = routes.GetRouteData(context);

            return(routeData);
        }
示例#12
0
文件: Class1.cs 项目: daffers/Magnum
		public void Should_work_for_no_arguments()
		{
			var context = new StubHttpContextForRouting(requestUrl: "~/aaaaaaaa");
			var routes = new RouteCollection();

			routes.Add(new Route("{controller}", new StubRouteHandler()));

			RouteData routeData = routes.GetRouteData(context);

			// Assert
			Assert.IsNotNull(routeData);
			Assert.AreEqual("aaaaaaaa", routeData.Values["controller"]);
//			Assert.AreEqual("Index", routeData.Values["action"]);
		}
    public void RouteWithControllerWithActionWithId()
    {
        // Arrange
        var context = new StubHttpContextForRouting(requestUrl: "~/controller1/action2/id3");
        var routes  = new RouteCollection();

        RouteConfig.RegisterRoutes(routes);
        // Act
        RouteData routeData = routes.GetRouteData(context);

        // Assert
        Assert.IsNotNull(routeData);
        Assert.AreEqual("controller1", routeData.Values["controller"]);
        Assert.AreEqual("action2", routeData.Values["action"]);
        Assert.AreEqual("id3", routeData.Values["id"]);
    }
示例#14
0
        public void Check_Route_For_Getting_Games_Explicitly()
        {
            // Arrange
            var context = new StubHttpContextForRouting(requestUrl: "~/en/game/get");
            var routes  = new RouteCollection();

            RouteConfig.RegisterRoutes(routes);

            // Act
            RouteData routeData = routes.GetRouteData(context);

            // Assert
            Assert.IsNotNull(routeData);
            Assert.AreEqual("Game", routeData.Values["controller"].ToString(), true);
            Assert.AreEqual("Get", routeData.Values["action"].ToString(), true);
        }
示例#15
0
        public void Check_Route_For_CompanyName_Validation()
        {
            // Arrange
            var context = new StubHttpContextForRouting(requestUrl: "~/en/validation/iscompanynameavailable");
            var routes  = new RouteCollection();

            RouteConfig.RegisterRoutes(routes);

            // Act
            RouteData routeData = routes.GetRouteData(context);

            // Assert
            Assert.IsNotNull(routeData);
            Assert.AreEqual("Validation", routeData.Values["controller"].ToString(), true);
            Assert.AreEqual("IsCompanyNameAvailable", routeData.Values["action"].ToString(), true);
        }
示例#16
0
        public void Check_Route_For_New_Publisher()
        {
            // Arrange
            var context = new StubHttpContextForRouting(requestUrl: "~/en/publisher/new");
            var routes  = new RouteCollection();

            RouteConfig.RegisterRoutes(routes);

            // Act
            RouteData routeData = routes.GetRouteData(context);

            // Assert
            Assert.IsNotNull(routeData);
            Assert.AreEqual("Publisher", routeData.Values["controller"].ToString(), true);
            Assert.AreEqual("New", routeData.Values["action"].ToString(), true);
        }
        private static UrlHelper GetUrlHelper(string appPath = "/", RouteCollection routes = null)
        {
            if (routes == null)
            {
                routes = new RouteCollection();
                routes.RegisterRoutes();
            }

            HttpContextBase httpContext = new StubHttpContextForRouting(appPath);
            var routeData = new RouteData();
            routeData.Values.Add("controller", "defaultcontroller");
            routeData.Values.Add("action", "defaultaction");
            var requestContext = new RequestContext(httpContext, routeData);
            var helper = new UrlHelper(requestContext, routes);
            return helper;
        }
    public void RouteWithControllerNoActionNoId()
    {
        // Arrange
        var context = new StubHttpContextForRouting(requestUrl: "~/controller1");
        var routes  = new RouteCollection();

        RouteConfig.RegisterRoutes(routes);
        // Act
        RouteData routeData = routes.GetRouteData(context);

        // Assert
        Assert.IsNotNull(routeData);
        Assert.AreEqual("controller1", routeData.Values["controller"]);
        Assert.AreEqual("Index", routeData.Values["action"]);
        Assert.AreEqual(UrlParameter.Optional, routeData.Values["id"]);
    }
    static UrlHelper GetUrlHelper(string appPath = "/", RouteCollection routes = null)
    {
        if (routes == null)
        {
            routes = new RouteCollection();
            RouteConfig.RegisterRoutes(routes);
        }
        HttpContextBase httpContext = new StubHttpContextForRouting(appPath);
        RouteData       routeData   = new RouteData();

        routeData.Values.Add("controller", "defaultcontroller");
        routeData.Values.Add("action", "defaultaction");
        RequestContext requestContext = new RequestContext(httpContext, routeData);
        UrlHelper      helper         = new UrlHelper(requestContext, routes);

        return(helper);
    }
示例#20
0
        public void Check_Route_For_Getting_Publisher_Details_Implicitly()
        {
            // Arrange
            var context = new StubHttpContextForRouting(requestUrl: "~/en/publisher/testcompanyname");
            var routes  = new RouteCollection();

            RouteConfig.RegisterRoutes(routes);

            // Act
            RouteData routeData = routes.GetRouteData(context);

            // Assert
            Assert.IsNotNull(routeData);
            Assert.AreEqual("Publisher", routeData.Values["controller"].ToString(), true);
            Assert.AreEqual("Details", routeData.Values["action"].ToString(), true);
            Assert.AreEqual("testcompanyname", routeData.Values["key"].ToString(), true);
        }
示例#21
0
        public void WhenConstraintUrlIsEntered_NoConstraintRouteIsUsed()
        {
            // Arrange
            var context = new StubHttpContextForRouting(requestUrl: "~/Constraint/HolaMundo");
            var routes  = new RouteCollection();

            RouteConfig.RegisterRoutes(routes);

            // Act
            RouteData routeData = routes.GetRouteData(context);

            // Assert
            Assert.IsNotNull(routeData);
            Assert.AreEqual("Constraint", routeData.Values["controller"]);
            Assert.AreEqual("NoConstraint", routeData.Values["action"]);
            Assert.AreEqual("HolaMundo", routeData.Values["id"]);
        }
示例#22
0
        public void WhenHomePathIsEntered_DefaultRouteIsUsed()
        {
            // Arrange
            var context = new StubHttpContextForRouting("~/");
            var routes  = new RouteCollection();

            RouteConfig.RegisterRoutes(routes);

            // Act
            RouteData routeData = routes.GetRouteData(context);

            // Assert
            Assert.IsNotNull(routeData);
            Assert.AreEqual("Home", routeData.Values["controller"]);
            Assert.AreEqual("Index", routeData.Values["action"]);
            Assert.AreEqual(UrlParameter.Optional, routeData.Values["id"]);
        }
示例#23
0
        public void Check_Route_For_Adding_Comment_For_Game()
        {
            // Arrange
            var context = new StubHttpContextForRouting(requestUrl: "~/en/game/testkey/newcomment");
            var routes  = new RouteCollection();

            RouteConfig.RegisterRoutes(routes);

            // Act
            RouteData routeData = routes.GetRouteData(context);

            // Assert
            Assert.IsNotNull(routeData);
            Assert.AreEqual("Comment", routeData.Values["controller"].ToString(), true);
            Assert.AreEqual("NewComment", routeData.Values["action"].ToString(), true);
            Assert.AreEqual("testkey", routeData.Values["key"].ToString(), true);
        }
		public ExplicitWebRoutingRoutingRunner()
		{
			_routes = new RouteCollection();

			_httpContext = new StubHttpContextForRouting();
		}
示例#25
0
        public ExplicitWebRoutingRoutingRunner()
        {
            _routes = new RouteCollection();

            _httpContext = new StubHttpContextForRouting();
        }