public void CreateAmbiguousControllerException_RouteWithUrl()
        {
            // Arrange
            RouteBase route = new Route("{controller}/blah", new Mock <IRouteHandler>().Object);

            Type[] matchingTypes = new Type[] { typeof(object), typeof(string) };

            // Act
            InvalidOperationException exception =
                DefaultControllerFactory.CreateAmbiguousControllerException(
                    route,
                    "Foo",
                    matchingTypes
                    );

            // Assert
            Assert.Equal(
                "Multiple types were found that match the controller named 'Foo'. This can happen if the route that services this request ('{controller}/blah') does not specify namespaces to search for a controller that matches the request. If this is the case, register this route by calling an overload of the 'MapRoute' method that takes a 'namespaces' parameter."
                + Environment.NewLine
                + Environment.NewLine
                + "The request for 'Foo' has found the following matching controllers:"
                + Environment.NewLine
                + "System.Object"
                + Environment.NewLine
                + "System.String",
                exception.Message
                );
        }