public void Generate_Does_Nothing_If_The_MaxValue_Is_Not_Known() { // Arrange var controller = new SequencesController(null); var model = new SequenceGeneratorModel() { MaxValue = null }; // Act var result = controller.Generate(model); // Assert Assert.IsNotNull(result); Assert.IsTrue(model.Results == null); Assert.IsInstanceOfType(result, typeof(ViewResult)); var viewResult = result as ViewResult; Assert.AreEqual("Index", viewResult.ViewName); }
public void Generate_Returns_A_Model_With_Results() { // Arrange var controller = new SequencesController(new [] { new AscendingSequenceCalculator() }); var model = new SequenceGeneratorModel() { MaxValue = 5 }; // Act var result = controller.Generate(model); // Assert Assert.IsNotNull(result); Assert.IsTrue(model.Results != null); Assert.AreEqual(1, model.Results.Count()); // Because we have one calculator plugged in Assert.IsInstanceOfType(result, typeof(ViewResult)); var viewResult = result as ViewResult; Assert.IsTrue(viewResult.ViewData.ModelState.IsValid); Assert.AreEqual("Index", viewResult.ViewName); }
public void Generate_Returns_Json_If_Via_Ajax_Request() { // Arrange var controller = new SequencesController(new[] { new AscendingSequenceCalculator() }); var model = new SequenceGeneratorModel() { MaxValue = 5 }; var context = NewAjaxContext(); controller.ControllerContext = new ControllerContext(context.Object, new RouteData(), controller); // Act var result = controller.Generate(model); // Assert Assert.IsNotNull(result); Assert.IsInstanceOfType(result, typeof(JsonResult)); var jsonResult = result as JsonResult; Assert.IsInstanceOfType(jsonResult.Data, typeof(SequenceGeneratorModel)); Assert.AreSame(jsonResult.Data, model); }