public ActionResult Result() { int month = int.Parse(Request.Form["month-input"]); int day = int.Parse(Request.Form["day-input"]); int year = int.Parse(Request.Form["year-input"]); DayOfWeekGenerator newDayOfWeekGenerator = new DayOfWeekGenerator(year, month, day); string model = newDayOfWeekGenerator.ReturnDayOfWeek(); return(View("Index", model)); }
public void TakeInputDate_ReturnDayOfTheWeek() { //arrange string testName = "Thursday"; List <int> testDay = new List <int> { 2018, 2, 15 }; DayOfWeekGenerator newDWG = new DayOfWeekGenerator(2018, 2, 15); //act DateTime dateValue = new DateTime(newDWG.GetYear(), newDWG.GetMonth(), newDWG.GetDay()); string dayName = dateValue.ToString("dddddddd"); //change this code if your dates are funky //assert Assert.AreEqual(testName, dayName); }
public void GetDay_ReturnDay() { //arrange List <int> testDay = new List <int> { 2018, 2, 15 }; DayOfWeekGenerator newDWG = new DayOfWeekGenerator(2018, 2, 15); //act List <int> dateInput = new List <int> { newDWG.GetYear(), newDWG.GetMonth(), newDWG.GetDay() }; //assert CollectionAssert.AreEqual(testDay, dateInput); }
public DateTime NextDate() { var d = DateTime.Now; if (Start >= End) { return(d); } var yearGenerator = YearGenerator; if (yearGenerator == null && Start.HasValue && End.HasValue) { yearGenerator = new LinearGenerator(DateToYearFraction(Start.Value), DateToYearFraction(End.Value)); } d = GetInRange(() => { if (yearGenerator != null) { d = YearFractionToDate(yearGenerator.Next()); } if (PartOfYearGenerator != null) { //if (YearGenerator == null || Randomness.Random.NextDouble() < 1 - YearWeight) { // d = YearFractionToDate(_uniform.Next()); var val = PartOfYearGenerator.Next(); var days = val * (DateTime.IsLeapYear(d.Year) ? 366 : 365); var dnew = new DateTime(d.Year, 1, 1).AddDays(days); if (YearGenerator != null && Distance(d, dnew) > 1d) { return(DateTime.MinValue); } d = dnew; } } if (MonthGenerator != null) { //if (YearGenerator == null || Randomness.Random.NextDouble() < 1 - YearWeight) { var val = MonthGenerator.Next(); if (YearGenerator != null || PartOfYearGenerator != null) { if (d.Month != (int)val) { return(DateTime.MinValue); //var daysInMonth = DateTime.DaysInMonth(d.Year, (int)val); //var mid = new DateTime(d.Year, (int) val, daysInMonth/2); //var p = Distance(d, mid)/(double)daysInMonth; //if (Randomness.Random.NextDouble() < p) return DateTime.MinValue; } } else { var days = (d.Day - 1) / (double)(DateTime.DaysInMonth(d.Year, d.Month)); d = new DateTime(d.Year, (int)val, 1 + (int)(days * DateTime.DaysInMonth(d.Year, (int)val))); } } } if (DayOfWeekGenerator != null) { var val = (int)DayOfWeekGenerator.Next(); d = d.AddDays(-(int)d.DayOfWeek + val); } if (HourGenerator != null) { d = d.Date.AddHours(HourGenerator.Next()); } return(d); }); return(d); }