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 ); }