public void ResourceModel_ReturnsNullModels_WhenAModelNameIsInvalid(string modelName)
        {
            HttpConfiguration config = new HttpConfiguration();
            config.Routes.MapHttpRoute("Default", "{controller}/{id}", new { id = RouteParameter.Optional });
            HelpController controller = new HelpController(config);

            ViewResult result = Assert.IsType<ViewResult>(controller.ResourceModel(modelName));
            ViewResult result2 = Assert.IsType<ViewResult>(controller.ResourceModel(modelName));

            Assert.Null(result.Model);
            Assert.Null(result2.Model);
        }
        public void ResourceModel_ReturnsCachedModels_UnusedParameters(string modelName)
        {
            HttpConfiguration config = new HttpConfiguration();
            config.Routes.MapHttpRoute("Default", "{controller}/{unused}/{id}", new { id = RouteParameter.Optional });
            HelpController controller = new HelpController(config);
            ModelDescriptionGenerator modelDescriptionGenerator = config.GetModelDescriptionGenerator();
            ModelDescription expectedModelDescription;
            modelDescriptionGenerator.GeneratedModels.TryGetValue(modelName, out expectedModelDescription);

            ViewResult result = Assert.IsType<ViewResult>(controller.ResourceModel(modelName));
            ViewResult result2 = Assert.IsType<ViewResult>(controller.ResourceModel(modelName));

            Assert.Same(expectedModelDescription, result.Model);
            Assert.Same(result.Model, result2.Model);
        }