public void RadioButtonListRendersOK() { // Arrange // 1 Set up an intance of the viewModelit works with SurveyResponsesViewModel responses = new SurveyResponsesViewModel(); // Populate with data responses.Answer = "5"; responses.LikertScaleNumber = 1L; responses.QId_SeqNo = "1_1"; responses.Text = "Strongly Disagree"; // var mockhttpContext = new Mock<HttpContextBase>(); // not used in helper so don't need it. var mockViewContext = new ViewContext(); var mockViewDataContainer = new FakeViewDataContainer(); // 2 instantiate an HtmlHelper // NB! NB! NB! NB! NB! NB! NB! // This is a STRONGLY TYPED Html Helper, as therefore we need to instantiate an html helper with a model. // NB! NB! NB! NB! NB! NB! NB! HtmlHelper<SurveyResponsesViewModel> helper = new HtmlHelper<SurveyResponsesViewModel>(mockViewContext, mockViewDataContainer); // Act MvcHtmlString result = HtmlHelperExtensions.RadioButtonListFor(helper, (r => responses.LikertScaleNumber) , responses.LikertScaleNumber, responses.QId_SeqNo, responses.Answer, null); Assert.IsNotNull(result); Assert.AreEqual(true, result.ToHtmlString().Contains("input"), "Expected input. tag"); Assert.AreEqual(true, result.ToHtmlString().Contains("name"), "Expected name attribute"); Assert.IsFalse(result.ToHtmlString().Contains("checked"), "Should not have been a checked attribute"); }
public static HtmlHelper <TModel> GetHtmlHelper <TModel>( TModel model, ControllerBase controller, bool clientValidationEnabled) { ViewEngines.Engines.Clear(); ViewEngines.Engines.Add(new FakeViewEngine()); var httpContext = new FakeHttpContext(); var viewData = new FakeViewDataContainer { ViewData = new ViewDataDictionary <TModel>(model) }; var routeData = new RouteData(); routeData.Values["controller"] = "home"; routeData.Values["action"] = "index"; ControllerContext controllerContext = new FakeControllerContext(controller); var viewContext = new FakeViewContext(controllerContext, "MyView", routeData); viewContext.HttpContext = httpContext; viewContext.ClientValidationEnabled = clientValidationEnabled; viewContext.UnobtrusiveJavaScriptEnabled = clientValidationEnabled; viewContext.FormContext = new FakeFormContext(); HtmlHelper <TModel> htmlHelper = new HtmlHelper <TModel>(viewContext, viewData); return(htmlHelper); }
public static HtmlHelper HtmlHelper(ViewDataDictionary viewData = null, HttpRequestBase request = null) { viewData = viewData ?? new ViewDataDictionary(); request = request ?? new FakeHttpRequest(); var httpContext = new FakeHttpContext { Request = request }; var controllerContext = new ControllerContext { HttpContext = httpContext, RouteData = new RouteData() }; var viewContext = new ViewContext( controllerContext, Mock.Of <IView>(), viewData, new TempDataDictionary(), new StringWriter()); var viewDataContainer = new FakeViewDataContainer { ViewData = viewData }; return(new HtmlHelper(viewContext, viewDataContainer)); }
public void CanConstructGridFromGridHelper() { var viewContext = new ViewContext(); var viewDataContainer = new FakeViewDataContainer(); var htmlHelper = new HtmlHelper(viewContext, viewDataContainer); var grid = htmlHelper.Grid("test"); Assert.IsInstanceOf<Grid>(grid); }
public void CanConstructGridFromGridHelper() { var viewContext = new ViewContext(); var viewDataContainer = new FakeViewDataContainer(); var htmlHelper = new HtmlHelper(viewContext, viewDataContainer); var grid = htmlHelper.Grid("test"); Assert.IsInstanceOf <Grid>(grid); }
public void SetUp() { target = new FakeViewDataContainer(); fake = new FakeModel { Title = "Test Title", Date = DateTime.Now, Done = true, Id = 123, Person = new FakeChildModel { FirstName = "Mick", LastName = "Jagger" }, Numbers = new [] { 1, 3 } }; target.ViewData["fake"] = fake; }