public void FindLeapYears() { var ly = new LeapYears(); ly.StartYear = 1899; ly.EndYear = 1908; var leapFinder = new LeapYearFinder(); var leaps = leapFinder.SearchForLeapYears(ly); int[] exp = {1904, 1908}; for (int i = 0; i < ly.Years.Count; i++) { Assert.AreEqual(exp[i], ly.Years[i]); } Assert.AreEqual(leaps.Years.Count, 2); }
public ActionResult LeapYears(LeapYearSearchTool searchTool) { if (ModelState.IsValidField("EndYear") && searchTool.StartYear >= searchTool.EndYear) { ModelState.AddModelError("EndYear", "Please make sure your end date is later than your start date"); } if (ModelState.IsValid) { var leapFinder = new LeapYearFinder(); var leapYears = new LeapYears(); leapYears.StartYear = searchTool.StartYear.Value; leapYears.EndYear = searchTool.EndYear.Value; var result = leapFinder.SearchForLeapYears(leapYears); searchTool.Years = result.Years; searchTool.IsPostback = true; return View("LeapYears", searchTool); } else { searchTool.Years = new List<int>(); //not sure why this is necessary but I get null ref exception on View without it. return View("LeapYears", searchTool); } }