Example #1
0
        public void Test_Default_Route_ControllerOnly()
        {
            var             context = new FakeHttpContextForRouting(requestUrl: "~/ControllerName");
            RouteCollection routes  = new RouteCollection();

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

            Assert.IsNotNull(routeData);
            Assert.AreEqual("ControllerName", routeData.Values["controller"]);
            Assert.AreEqual("Index", routeData.Values["action"]);
        }
Example #2
0
        public void Test_Photo_Title_Route()
        {
            var context = new FakeHttpContextForRouting(requestUrl: "~/photo/title/my%20title");
            var routes  = new RouteCollection();

            RouteConfig.RegisterRoutes(routes);
            var routeData = routes.GetRouteData(context);

            Assert.IsNotNull(routeData);
            Assert.AreEqual(routeData.Values["controller"], "Photo");
            Assert.AreEqual(routeData.Values["action"], "DisplayByTitle");
            Assert.AreEqual(routeData.Values["title"], "my%20title");
        }
Example #3
0
        public void Test_Photo_Route_With_PhotoID()
        {
            var context = new FakeHttpContextForRouting(requestUrl: "~/photo/2");
            var routes  = new RouteCollection();

            RouteConfig.RegisterRoutes(routes);
            var routeData = routes.GetRouteData(context);

            Assert.IsNotNull(routeData);
            Assert.AreEqual(routeData.Values["controller"], "Photo");
            Assert.AreEqual(routeData.Values["action"], "Display");
            Assert.AreEqual(routeData.Values["id"], "2");
        }
Example #4
0
        public void Test_Default_Route_ControllerOnly()
        {
            var context = new FakeHttpContextForRouting(requestUrl: "~/ControllerName");
            var routes  = new RouteCollection();

            PhotoSharingApplication_2015.RouteConfig.RegisterRoutes(routes);

            RouteData routeData = routes.GetRouteData(context);

            Assert.IsNotNull(routeData);
            //Assert that the controller value is ControllerName
            Assert.AreEqual("ControllerName", routeData.Values["controller"]);
            //Assert that the action value in routedata is Index
            Assert.AreEqual("Index", routeData.Values["action"]);
            Assert.AreEqual(UrlParameter.Optional, routeData.Values["id"]);
        }
        public void Test_def_Route()
        {
            // Arrange
            var context = new FakeHttpContextForRouting(requestUrl: "~/Stanowiska");
            var routes  = new RouteCollection();

            RouteConfig.RegisterRoutes(routes);

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

            // Assert
            Assert.IsNotNull(routeData);
            Assert.AreEqual("Stanowiska", routeData.Values["controller"]);
            Assert.AreEqual("Index", routeData.Values["action"]);
            Assert.AreEqual(UrlParameter.Optional, routeData.Values["id"]);
        }
        public void Test_Route_StanowiskoId_Edit()
        {
            // Arrange
            var context = new FakeHttpContextForRouting(requestUrl: "~/Stanowiska/Edit/1");
            var routes  = new RouteCollection();

            ASP_MVC_Testing.RouteConfig.RegisterRoutes(routes);

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

            // Assert
            Assert.IsNotNull(routeData);
            Assert.AreEqual("Stanowiska", routeData.Values["controller"]);
            Assert.AreEqual("Edit", routeData.Values["action"]);
            Assert.AreEqual("1", routeData.Values["id"]);
        }
        public void Test_Route_PracownikId()
        {
            // Arrange
            var context = new FakeHttpContextForRouting(requestUrl: "~/Pracownicy/Details/2");
            var routes  = new RouteCollection();

            RouteConfig.RegisterRoutes(routes);

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

            // Assert
            Assert.IsNotNull(routeData);
            Assert.AreEqual("Pracownicy", routeData.Values["controller"]);
            Assert.AreEqual("Details", routeData.Values["action"]);
            Assert.AreEqual("2", routeData.Values["id"]);
        }
Example #8
0
        public void Test_Default_HomePage()
        {
            //This test checks the PhotoTitleRoute route a title is specified
            //Arrange
            var context = new FakeHttpContextForRouting
                              (requestUrl: "~/Home/Index");
            var routes = new RouteCollection();

            PhotoSharingApplication.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"]);
        }
Example #9
0
        public void Test_PhotoTitleRoute_WithTitle()
        {
            //This test checks the PhotoTitleRoute route a title is specified
            //Arrange
            var context = new FakeHttpContextForRouting(requestUrl: "~/Photo/Title/My%20Photo");
            var routes  = new RouteCollection();

            PhotoSharingApplication.RouteConfig.RegisterRoutes(routes);

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

            // Assert
            Assert.IsNotNull(routeData);
            Assert.AreEqual("Photo", routeData.Values["controller"]);
            Assert.AreEqual("DisplayByTitle", routeData.Values["action"]);
            Assert.AreEqual("My%20Photo", routeData.Values["title"]);
        }
Example #10
0
        public void Test_PhotoRoute_With_PhotoID()
        {
            //This test checks the PhotoRoute route.
            //Arrange
            var context = new FakeHttpContextForRouting(requestUrl: "~/photo/2");
            var routes  = new RouteCollection();

            PhotoSharingApplication.RouteConfig.RegisterRoutes(routes);

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

            // Assert
            Assert.IsNotNull(routeData);
            Assert.AreEqual("Photo", routeData.Values["controller"]);
            Assert.AreEqual("Display", routeData.Values["action"]);
            Assert.AreEqual("2", routeData.Values["id"]);
        }
Example #11
0
        public void Test_Default_Route_ControllerOnly()
        {
            //This test checks the default route when only the controller is specified
            //Arrange
            var context = new FakeHttpContextForRouting(requestUrl: "~/ControllerName");
            var routes  = new RouteCollection();

            PhotoSharingApplication.RouteConfig.RegisterRoutes(routes);

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

            // Assert
            Assert.IsNotNull(routeData);
            Assert.AreEqual("ControllerName", routeData.Values["controller"]);
            Assert.AreEqual("Index", routeData.Values["action"]);
            Assert.AreEqual(UrlParameter.Optional, routeData.Values["id"]);
        }
Example #12
0
        public void Test_OwnerPhotoRoute()
        {
            //This test checks the PhotoTitleRoute route a title is specified
            //Arrange
            var context = new FakeHttpContextForRouting
                              (requestUrl: "~/Bob/test.jpg");
            var routes = new RouteCollection();

            PhotoSharingApplication.RouteConfig.RegisterRoutes(routes);

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

            // Assert
            Assert.IsNotNull(routeData);
            Assert.AreEqual("Photo", routeData.Values["controller"]);
            Assert.AreEqual("DisplayByOwnerPhoto", routeData.Values["action"]);
            Assert.AreEqual("Bob", routeData.Values["owner"]);
            Assert.AreEqual("test.jpg", routeData.Values["filename"]);
        }
Example #13
0
        public void Test_Default_Route_ControllerOnly()
        {
            /*
             * In the Test_Default_Route_ControllerOnly test, create a new var by using
             * the following information:
             * Name: context
             * Type: FakeHttpContextForRouting
             * Request URL: ~/ControllerName
             */
            var context = new FakeHttpContextForRouting(requestUrl: "~/ControllerName");

            /*
             * Create a new RouteCollection object named routes and pass it to the
             * RouteConfig.RegisterRoutes() method.
             */
            var routes = new RouteCollection();

            RouteConfig.RegisterRoutes(routes);

            /*
             * Call the routes.GetRouteData() method to run the test by using the following information:
             * Return type: RouteData
             * Return object name: routeData
             * Method: routes.GetRouteData
             * HTTP context object: context
             */
            RouteData routeData = routes.GetRouteData(context);

            /*
             * Assert the following facts:
             * That routeData is not null
             * That the controller value in routeData is "ControllerName"
             * That the action value in routeData is "Index"
             * That the id value in routeData is "UrlParameter.Optional"
             */
            Assert.IsNotNull(routeData);
            Assert.AreEqual("ControllerName", routeData.Values["controller"]);
            Assert.AreEqual("Index", routeData.Values["action"]);
            Assert.AreEqual(UrlParameter.Optional, routeData.Values["id"]);
        }
Example #14
0
        public void Test_Default_Route_ControllerOnly()
        {
            var context = new FakeHttpContextForRouting(requestUrl: "~/ControllerName");

            /*
             * Writing a Routing Test
             * After creating an HTTP context test double, you can write unit tests for each route
             * in the routing table. These unit tests adopt the following general phases:
             */

            /*
             * Arrange.
             * In the Arrange phase of the test, you can create a new HTTP context from your test
             * double class.
             * You can set the request URL for this object to be the URL you want to test.
             * You can then create a new route collection and call the RouteConfig.RegisterRoutes() method
             * in your web application.
             */
            var routes = new RouteCollection();

            RouteConfig.RegisterRoutes(routes);

            /*
             * Act.
             * In the Act phase, you can test the routes by calling the GetRouteData() method of the route collection.
             * You can then pass the fake HTTP context to this method.
             */
            RouteData routeData = routes.GetRouteData(context);

            /*
             *  Assert.
             *  In the Assert phase, you can use the RouteData.Values collection to check that
             *  the controller, action and other values are assigned correctly.
             */
            Assert.IsNotNull(routeData);
            Assert.AreEqual("ControllerName", routeData.Values["controller"]);
            Assert.AreEqual("Index", routeData.Values["action"]);
            Assert.AreEqual(UrlParameter.Optional, routeData.Values["id"]);
        }
Example #15
0
        public void Test_Photo_Title_Route()
        {
            //This test checks the PhotoTitleRoute route a title is specified
            //Arrange
            var context = new FakeHttpContextForRouting(requestUrl: "~/Photo/title/my%20title");
            var routes  = new RouteCollection();

            PhotoSharingApplication_2015.RouteConfig.RegisterRoutes(routes);

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

            // Assert
            //Assert that the routedata is not null
            Assert.IsNotNull(routeData);
            //Assert that the controller value in routeData is Photo
            Assert.AreEqual("Photo", routeData.Values["controller"]);
            //Assert that the action value in routedata is DisplayByTitle
            Assert.AreEqual("DisplayByTitle", routeData.Values["action"]);
            //Assert that the title value in routedata is my%20title
            Assert.AreEqual("my%20title", routeData.Values["title"]);
        }