public virtual string ToExactNaturalText(DateDiff dateDiff) { string text = string.Empty; if (dateDiff.Years > 0) { text = this.AddSentence(text, this.GetYearsText(dateDiff.Years)); } if (dateDiff.Months > 0) { text = this.AddSentence(text, this.GetMonthsText(dateDiff.Months)); } if (dateDiff.Days > 0) { text = this.AddSentence(text, this.GetDaysText(dateDiff.Days)); } if (dateDiff.Hours > 0) { text = this.AddSentence(text, this.GetHoursText(dateDiff.Hours)); } if (dateDiff.Minutes > 0) { text = this.AddSentence(text, this.GetMinutesText(dateDiff.Minutes)); } if (dateDiff.Seconds > 0) { text = this.AddSentence(text, this.GetSecondsText(dateDiff.Seconds)); } return text; }
public string DateToMonthString(DateTime date) { DateDiff dateDiff = new DateDiff(date, DateTime.Now); int _IntD = dateDiff.ElapsedMonths; switch (_IntD) { case 0: { return(Properties.Resources.LessThanMonthString); } case 1: { return(Properties.Resources.MonthString); } case 2: { return(Properties.Resources.TowMonthesString); } } if ((_IntD >= 3) && (_IntD <= 10)) { return(_IntD + " " + Properties.Resources.MonthesString); } else { return(_IntD + " " + Properties.Resources.MonthesAccusativeString); } }
public string DateToYearsString(DateTime date) { DateDiff dateDiff = new DateDiff(date, DateTime.Now); switch (dateDiff.ElapsedYears) { case 0: { return(Properties.Resources.LessThanYearString); } case 1: { return(Properties.Resources.YearString); } case 2: { return(Properties.Resources.TowYearsString); } } if ((dateDiff.ElapsedYears >= 3) && (dateDiff.ElapsedYears <= 10)) { return(dateDiff.ElapsedYears + " " + Properties.Resources.YearsString); } else { return(dateDiff.ElapsedYears + " " + Properties.Resources.YearString); } }
public virtual string ToExactNaturalText(DateDiff dateDiff) { string text = string.Empty; if (dateDiff.Years > 0) { text = this.AddSentence(text, this.GetYearsText(dateDiff.Years)); } if (dateDiff.Months > 0) { text = this.AddSentence(text, this.GetMonthsText(dateDiff.Months)); } if (dateDiff.Days > 0) { text = this.AddSentence(text, this.GetDaysText(dateDiff.Days)); } if (dateDiff.Hours > 0) { text = this.AddSentence(text, this.GetHoursText(dateDiff.Hours)); } if (dateDiff.Minutes > 0) { text = this.AddSentence(text, this.GetMinutesText(dateDiff.Minutes)); } if (dateDiff.Seconds > 0) { text = this.AddSentence(text, this.GetSecondsText(dateDiff.Seconds)); } return(text); }
public string DateToString(DateTime date) { string ret = ""; DateDiff dateDiff = new DateDiff(date, DateTime.Now); if (dateDiff.ElapsedYears > 0) { ret += DateToYearsString(date); } if (dateDiff.ElapsedMonths > 0) { if (ret.Length > 0) { ret += " " + Properties.Resources.AndString + " "; } ret += DateToMonthString(date); } if (dateDiff.ElapsedDays > 0) { if (ret.Length > 0) { ret += " " + Properties.Resources.AndString + " "; } ret += DateToDayString(date); } return(ret); }
public void DefaultsTest() { var now = ClockProxy.Clock.Now; var dateDiff = new DateDiff(now, now); dateDiff.YearBaseMonth.Should().Be(TimeSpec.CalendarYearStartMonth); dateDiff.FirstDayOfWeek.Should().Be(DateTimeFormatInfo.CurrentInfo.FirstDayOfWeek); }
public void WeeksTest() { DateTime date1 = new DateTime(2008, 5, 14, 15, 32, 44, 243); DateTime date2 = date1.AddDays(TimeSpec.DaysPerWeek); DateTime date3 = date1.AddDays(-TimeSpec.DaysPerWeek); DateDiff dateDiff12 = new DateDiff(date1, date2); Assert.Equal(0, dateDiff12.Years); Assert.Equal(0, dateDiff12.Quarters); Assert.Equal(0, dateDiff12.Months); Assert.Equal(1, dateDiff12.Weeks); Assert.Equal(dateDiff12.Days, TimeSpec.DaysPerWeek); Assert.Equal(dateDiff12.Hours, TimeSpec.DaysPerWeek * TimeSpec.HoursPerDay); Assert.Equal(dateDiff12.Minutes, TimeSpec.DaysPerWeek * TimeSpec.HoursPerDay * TimeSpec.MinutesPerHour); Assert.Equal(dateDiff12.Seconds, TimeSpec.DaysPerWeek * TimeSpec.HoursPerDay * TimeSpec.MinutesPerHour * TimeSpec.SecondsPerMinute); DateDiff dateDiff13 = new DateDiff(date1, date3); Assert.Equal(0, dateDiff13.Years); Assert.Equal(0, dateDiff13.Quarters); Assert.Equal(0, dateDiff13.Months); Assert.Equal <int>(dateDiff13.Weeks, -1); Assert.Equal <int>(dateDiff13.Days, TimeSpec.DaysPerWeek * -1); Assert.Equal <int>(dateDiff13.Hours, TimeSpec.DaysPerWeek * TimeSpec.HoursPerDay * -1); Assert.Equal <int>(dateDiff13.Minutes, TimeSpec.DaysPerWeek * TimeSpec.HoursPerDay * TimeSpec.MinutesPerHour * -1); Assert.Equal <int>(dateDiff13.Seconds, TimeSpec.DaysPerWeek * TimeSpec.HoursPerDay * TimeSpec.MinutesPerHour * TimeSpec.SecondsPerMinute * -1); } // WeeksTest
public virtual void TestParseWidth() { XmlNode node = CreateNode("<effectiveTime>" + " <width value=\"1\" unit=\"d\"/>" + "</effectiveTime>"); Interval <PlatformDate> interval = Parse(node, "IVL.WIDTH<TS>"); Assert.IsTrue(this.result.IsValid(), "valid"); Assert.IsNotNull(interval, "null"); Assert.IsNull(interval.Low, "low"); Assert.IsNull(interval.High, "high"); Assert.IsNull(interval.Centre, "centre"); Assert.IsNotNull(interval.Width, "width"); DateDiff diff = (DateDiff)interval.Width; Ca.Infoway.Messagebuilder.Domainvalue.UnitsOfMeasureCaseSensitive unit = diff.Unit; Assert.AreEqual("d", unit.CodeValue, "unit"); Assert.IsNull(diff.NullFlavor, "null flavor"); node = CreateNode("<effectiveTime>" + " <low nullFlavor=\"OTH\"/>" + " <width nullFlavor=\"OTH\"/>" + "</effectiveTime>" ); interval = Parse(node, "IVL<TS>"); Assert.IsTrue(this.result.IsValid(), "valid"); Assert.IsNotNull(interval, "null"); Assert.IsNull(interval.Low, "low"); Assert.IsNull(interval.High, "high"); Assert.IsNull(interval.Centre, "centre"); Assert.IsNotNull(interval.Width, "width"); diff = (DateDiff)interval.Width; Assert.AreEqual("OTH", diff.NullFlavor.CodeValue, "nullFlavor"); Assert.IsNull(diff.Unit, "unit"); }
protected void cldrDateChoose_SelectionChanged(object sender, EventArgs e) { //dateChosen = cldrDateChoose.SelectedDate; lblDateChosen.Text = "Valitsemasi päivä: " + cldrDateChoose.SelectedDate.ToShortDateString(); DateDiff difference = new DateDiff(DateTime.Today, cldrDateChoose.SelectedDate); lblDateDifference.Text = string.Format("Päivät: {0}, Kuukaudet: {1}, Vuodet: {2}", difference.ElapsedDays, difference.ElapsedMonths, difference.ElapsedYears); }
public static bool DoDatesSpanFromLastYearToThisYear(DateTime dateOne, DateTime dateTwo) { DateTime januaryFirstOfThisYear = GetYearStartOfDate(DateTime.Today); bool areWeTalkingAboutThisYear = (DateDiff.Years(dateOne, januaryFirstOfThisYear) == 0) || (DateDiff.Years(dateTwo, januaryFirstOfThisYear) == 0); return(DateDiff.Years(dateOne, dateTwo) != 0 && areWeTalkingAboutThisYear); }
public void DifferenceTest() { var date1 = new DateTime(2008, 10, 12, 15, 32, 44, 243); var date2 = new DateTime(2010, 1, 3, 23, 22, 9, 345); var dateDiff = new DateDiff(date1, date2); Assert.AreEqual(date2.Subtract(date1), dateDiff.Difference); }
public virtual string ToNaturalText(DateDiff dateDiff, bool round) { if (dateDiff.Years > 0) { if (round && dateDiff.Months >= 6) { return this.GetYearsText(dateDiff.Years + 1); } return this.GetYearsText(dateDiff.Years); } if (dateDiff.Months > 0) { if (round && dateDiff.Days >= 15) { return this.GetMonthsText(dateDiff.Months + 1); } return this.GetMonthsText(dateDiff.Months); } if (dateDiff.Days > 0) { if (round && dateDiff.Hours >= 12) { return this.GetDaysText(dateDiff.Days + 1); } return this.GetDaysText(dateDiff.Days); } if (!round) { if (dateDiff.Hours > 0) { return this.GetHoursText(dateDiff.Hours); } if (dateDiff.Minutes > 0) { return this.GetMinutesText(dateDiff.Minutes); } if (dateDiff.Seconds > 0) { return this.GetSecondsText(dateDiff.Seconds); } } bool carrier; var minutes = SixtyToQuarters(dateDiff.Minutes, out carrier); if (dateDiff.Hours > 0 || carrier) { if (carrier || minutes >= 30) { return this.GetHoursText(dateDiff.Hours + 1); } return this.GetHoursText(dateDiff.Hours); } var seconds = this.SixtyToQuarters(dateDiff.Seconds, out carrier); if (minutes == 0 && dateDiff.Minutes > 0) { if(seconds >= 30 || carrier) { return this.GetMinutesText(dateDiff.Minutes + 1); } return this.GetMinutesText(dateDiff.Minutes); } if (minutes == 0 && carrier) { return this.GetMinutesText(1); } if (minutes > 0) { return this.GetMinutesText(minutes); } if (seconds > 0) { return this.GetSecondsText(seconds); } return string.Empty; }
private IDictionary <string, string> GetAttributes(DateDiff period, FormatContext context) { PhysicalQuantity quantity = period.ValueAsPhysicalQuantity; FormatContext newContext = new Ca.Infoway.Messagebuilder.Marshalling.HL7.Formatter.FormatContextImpl("PQ.TIME", context); // getAttributeNameValuePairs is never called with a null value; directly calling it from here is a bit of a cheat, so ensure no null passed in return(quantity == null ? new Dictionary <string, string>() : new PqPropertyFormatter().GetAttributeNameValuePairs(newContext , quantity)); }
public void DefaultsTest() { DateTime test = new DateTime(2008, 10, 12, 15, 32, 44, 243); DateDiff dateDiff = new DateDiff(test, test); Assert.Equal(dateDiff.YearBaseMonth, TimeSpec.CalendarYearStartMonth); Assert.Equal(dateDiff.FirstDayOfWeek, DateDiff.SafeCurrentInfo.FirstDayOfWeek); } // DefaultsTest
public void DifferenceTest() { DateTime date1 = new DateTime(2008, 10, 12, 15, 32, 44, 243); DateTime date2 = new DateTime(2010, 1, 3, 23, 22, 9, 345); DateDiff dateDiff = new DateDiff(date1, date2); Assert.Equal <TimeSpan>(dateDiff.Difference, date2.Subtract(date1)); } // DifferenceTest
private void LoadPatientInfo() { if (_patientCard != null) { txtName.Text = _patientCard.NAME; txtSex.Text = _patientCard.SEX; txtAge.Text = string.IsNullOrEmpty(_patientCard.AGE) ? DateDiff.CalAge(_patientCard.DATE_OF_BIRTH.Value, accountRepository.GetServerTime().Data) : _patientCard.AGE; txtInpNo.Text = _patientCard.INP_NO; txtBedNo.Text = _patientCard.BED_NO; txtDeptName.Text = RefreshDeptCode(_patientCard.DEPT_CODE); txtDiagBeforeOperation.Text = _patientCard.DIAG_BEFORE_OPERATION; txtOperNamePlan.Text = _patientCard.OPERATION_NAME; txtOperScale.Text = _patientCard.OPER_SCALE; txtOperPosition.Text = _patientCard.OPER_POSITION; if (_patientCard.EMERGENCY_IND == 1 || panelEmergency.Visible) { radioGroupEmergency.SelectedIndex = 0; } else { radioGroupEmergency.SelectedIndex = 1; } memoCondition.Text = _patientCard.PATIENT_CONDITION; txtFirstOperDoctor.Text = RefreshHisUsers(_patientCard.SURGEON); txtSecondOperDoctor.Text = RefreshHisUsers(_patientCard.FIRST_OPER_ASSISTANT); txtThirdOperDoctor.Text = RefreshHisUsers(_patientCard.SECOND_OPER_ASSISTANT); txtFourthOperDoctor.Text = RefreshHisUsers(_patientCard.THIRD_OPER_ASSISTANT); txtCPDDoctor.Text = RefreshHisUsers(_patientCard.CPB_DOCTOR); txtSecondCPDDoctor.Text = RefreshHisUsers(_patientCard.SECOND_CPB_ASSISTANT); txtFirstOperNurse.Text = RefreshHisUsers(_patientCard.FIRST_OPER_NURSE); txtSecondOperNurse.Text = RefreshHisUsers(_patientCard.SECOND_OPER_NURSE); txtFirstSupplyNurse.Text = RefreshHisUsers(_patientCard.FIRST_SUPPLY_NURSE); txtSecondSupplyNurse.Text = RefreshHisUsers(_patientCard.SECOND_SUPPLY_NURSE); txtAnesMethod.Text = _patientCard.ANAESTHESIA_TYPE; txtAnesMethod.Text = _patientCard.ANES_METHOD; txtAnesDoctor.Text = RefreshHisUsers(_patientCard.ANES_DOCTOR); txtSecondAnesDoctor.Text = RefreshHisUsers(_patientCard.SECOND_ANES_ASSISTANT); txtThirdAnesDoctor.Text = RefreshHisUsers(_patientCard.THIRD_ANES_ASSISTANT); txtFourthAnesDoctor.Text = RefreshHisUsers(_patientCard.FOURTH_ANES_ASSISTANT); txtASAGrade.Text = _patientCard.ASA_GRADE; txtWoundType.Text = _patientCard.WOUND_TYPE; if (_patientCard.EMERGENCY_IND == 1) { pictureBoxJZ.Visible = true; } if (_patientCard.ISOLATION_IND == 2) { pictureBoxGL.Visible = true; } if (_patientCard.RADIATE_IND == 2) { pictureBoxFS.Visible = true; } } }
public void RichardBasicTest() { DateTime date1 = new DateTime(2012, 12, 1); DateTime date2 = new DateTime(2012, 12, 25); DateDiff dateDiff = new DateDiff(date1, date2); Assert.Equal(0, dateDiff.ElapsedYears); Assert.Equal(0, dateDiff.ElapsedMonths); Assert.Equal(24, dateDiff.ElapsedDays); } // RichardBasicTest
public void RichardBornOnALeapYearTest() { DateTime date1 = new DateTime(2008, 2, 29); DateTime date2 = new DateTime(2009, 2, 28); DateDiff dateDiff = new DateDiff(date1, date2); Assert.AreEqual(dateDiff.ElapsedYears, 0); Assert.AreEqual(dateDiff.ElapsedMonths, 11); Assert.AreEqual(dateDiff.ElapsedDays, 30); } // RichardBornOnALeapYearTest
public void RichardLongMonthToPartWayThruShortMonthTest() { DateTime date1 = new DateTime(2009, 8, 31); DateTime date2 = new DateTime(2009, 9, 10); DateDiff dateDiff = new DateDiff(date1, date2); Assert.AreEqual(dateDiff.ElapsedYears, 0); Assert.AreEqual(dateDiff.ElapsedMonths, 0); Assert.AreEqual(dateDiff.ElapsedDays, 10); } // RichardLongMonthToPartWayThruShortMonthTest
public void RichardLongMonthToLongMonthTest() { DateTime date1 = new DateTime(2010, 1, 31); DateTime date2 = new DateTime(2010, 3, 31); DateDiff dateDiff = new DateDiff(date1, date2); Assert.Equal(0, dateDiff.ElapsedYears); Assert.Equal(2, dateDiff.ElapsedMonths); Assert.Equal(0, dateDiff.ElapsedDays); } // RichardLongMonthToLongMonthTest
public void RichardLongMonthToLongMonthPenultimateDayTest() { DateTime date1 = new DateTime(2009, 1, 31); DateTime date2 = new DateTime(2009, 3, 30); DateDiff dateDiff = new DateDiff(date1, date2); Assert.Equal(0, dateDiff.ElapsedYears); Assert.Equal(1, dateDiff.ElapsedMonths); Assert.Equal(30, dateDiff.ElapsedDays); } // RichardLongMonthToLongMonthPenultimateDayTest
public void RichardLongMonthToShortMonthTest() { DateTime date1 = new DateTime(2009, 8, 31); DateTime date2 = new DateTime(2009, 9, 30); DateDiff dateDiff = new DateDiff(date1, date2); Assert.Equal(0, dateDiff.ElapsedYears); Assert.Equal(0, dateDiff.ElapsedMonths); Assert.Equal(30, dateDiff.ElapsedDays); } // RichardLongMonthToShortMonthTest
public void RichardBornOnALeapYearTest2() { DateTime date1 = new DateTime(2008, 2, 29); DateTime date2 = new DateTime(2009, 3, 01); DateDiff dateDiff = new DateDiff(date1, date2); Assert.Equal(1, dateDiff.ElapsedYears); Assert.Equal(0, dateDiff.ElapsedMonths); Assert.Equal(1, dateDiff.ElapsedDays); } // RichardBornOnALeapYearTest2
public void RichardAlmostTwoYearsTest() { DateTime date1 = new DateTime(2010, 8, 29); DateTime date2 = new DateTime(2012, 8, 14); DateDiff dateDiff = new DateDiff(date1, date2); Assert.Equal(1, dateDiff.ElapsedYears); Assert.Equal(11, dateDiff.ElapsedMonths); Assert.Equal(16, dateDiff.ElapsedDays); } // RichardAlmostTwoYearsTest
public void ValidInput_Successful(DateTime fromDate, DateTime toDate, DateDiffResult expected) { var dateDiff = new DateDiff(fromDate, toDate); Assert.Equal(expected.Years, dateDiff.Years); Assert.Equal(expected.Months, dateDiff.Months); Assert.Equal(expected.Days, dateDiff.Days); Assert.Equal(expected.Distances, dateDiff.Distances); Assert.Equal(expected.ToString(), dateDiff.ToString()); }
public void RichardAlmostThreeYearsTest() { DateTime date1 = new DateTime(2009, 7, 29); DateTime date2 = new DateTime(2012, 7, 14); DateDiff dateDiff = new DateDiff(date1, date2); Assert.Equal(2, dateDiff.ElapsedYears); Assert.Equal(11, dateDiff.ElapsedMonths); Assert.Equal(15, dateDiff.ElapsedDays); } // RichardAlmostThreeYearsTest
public void GetTimeBetween_59Secs_Returns59Seconds() { var t1 = new DateTime(2000, 01, 01, 12, 00, 00); var t2 = new DateTime(2000, 01, 01, 12, 00, 59); var subject = new DateDiff(); var actual = subject.GetTimeBetween(t1, t2); var expected = "(59 seconds ago)"; Assert.AreEqual(expected, actual); }
public void GetTimeBetween_6Mins_Returns6Minutes() { var t1 = new DateTime(2000, 01, 01, 12, 00, 00); var t2 = new DateTime(2000, 01, 01, 12, 06, 00); var subject = new DateDiff(); var actual = subject.GetTimeBetween(t1, t2); var expected = "(6 minutes ago)"; Assert.AreEqual(expected, actual); }
public void GetTimeBetween23H59Mins_Returns23Hour() { var t1 = new DateTime(2000, 01, 01, 12, 00, 00); var t2 = new DateTime(2000, 01, 02, 11, 59, 59); var subject = new DateDiff(); var actual = subject.GetTimeBetween(t1, t2); var expected = "(23 hours ago)"; Assert.AreEqual(expected, actual); }
public void GetTimeBetween_1Sec_Returns1Second() { var t1 = new DateTime(2000, 01, 01, 12, 00, 00); var t2 = new DateTime(2000, 01, 01, 12, 00, 01); var subject = new DateDiff(); var actual = subject.GetTimeBetween(t1, t2); var expected = "(1 second ago)"; Assert.AreEqual(expected, actual); }
public void GetTimeBetween119Mins_Returns1Hour() { var t1 = new DateTime(2000, 01, 01, 12, 00, 00); var t2 = new DateTime(2000, 01, 01, 13, 59, 00); var subject = new DateDiff(); var actual = subject.GetTimeBetween(t1, t2); var expected = "(1 hour ago)"; Assert.AreEqual(expected, actual); }
public void GetTimeBetween1Year_ReturnsMoreThan24Hours() { var t1 = new DateTime(2000, 01, 01, 12, 00, 00); var t2 = new DateTime(2001, 01, 01, 12, 00, 00); var subject = new DateDiff(); var actual = subject.GetTimeBetween(t1, t2); var expected = "(more than 24 hours ago)"; Assert.AreEqual(expected, actual); }
public static String DateDifferencePeriod(DateTime earliestDate, DateTime latestDate) { DateDiff dateDiff = new DateDiff(earliestDate, latestDate); return(string.Format("{0} year{1}, {2} month{3}, {4} day{5}", dateDiff.ElapsedYears, (dateDiff.ElapsedYears > 1) ? "s":"", dateDiff.ElapsedMonths, (dateDiff.ElapsedMonths > 1) ? "s" : "", dateDiff.ElapsedDays, (dateDiff.ElapsedDays > 1) ? "s" : "")); }
public void TimeSpanConstructorTest() { Assert.Equal <TimeSpan>(new DateDiff(TimeSpan.Zero).Difference, TimeSpan.Zero); DateTime date1 = new DateTime(2014, 3, 4, 7, 57, 36, 234); TimeSpan diffence = new TimeSpan(234, 23, 23, 43, 233); DateDiff dateDiff = new DateDiff(date1, diffence); Assert.Equal <DateTime>(dateDiff.Date1, date1); Assert.Equal <DateTime>(dateDiff.Date2, date1.Add(diffence)); Assert.Equal <TimeSpan>(dateDiff.Difference, diffence); } // TimeSpanConstructorTest
public void YearsTest(int? yearDiff) { var year = yearDiff.GetValueOrDefault(1); var date1 = ClockProxy.Clock.Now; var date2 = date1.AddYears(year); var date3 = date1.AddYears(-year); if(IsDebugEnabled) log.Debug("date1=[{0}], date2=[{1}], date3=[{2}]", date1, date2, date3); var dateDiff12 = new DateDiff(date1, date2); Assert.AreEqual(year, dateDiff12.ElapsedYears); Assert.AreEqual(0, dateDiff12.ElapsedMonths); Assert.AreEqual(0, dateDiff12.ElapsedDays); Assert.AreEqual(0, dateDiff12.ElapsedHours); Assert.AreEqual(0, dateDiff12.ElapsedMinutes); Assert.AreEqual(0, dateDiff12.ElapsedSeconds); Assert.AreEqual(year, dateDiff12.Years); Assert.AreEqual(year * TimeSpec.QuartersPerYear, dateDiff12.Quarters); Assert.AreEqual(year * TimeSpec.MonthsPerYear, dateDiff12.Months); // Assert.AreEqual(, dateDiff12.Weeks); var date12Days = date2.Subtract(date1).TotalDays.AsInt(); Assert.AreEqual(date12Days, dateDiff12.Days); Assert.AreEqual(date12Days * TimeSpec.HoursPerDay, dateDiff12.Hours); Assert.AreEqual(date12Days * TimeSpec.HoursPerDay * TimeSpec.MinutesPerHour, dateDiff12.Minutes); Assert.AreEqual(date12Days * TimeSpec.HoursPerDay * TimeSpec.MinutesPerHour * TimeSpec.SecondsPerMinute, dateDiff12.Seconds); var dateDiff13 = new DateDiff(date1, date3); Assert.AreEqual(-year, dateDiff13.ElapsedYears); Assert.AreEqual(0, dateDiff13.ElapsedMonths); Assert.AreEqual(0, dateDiff13.ElapsedDays); Assert.AreEqual(0, dateDiff13.ElapsedHours); Assert.AreEqual(0, dateDiff13.ElapsedMinutes); Assert.AreEqual(0, dateDiff13.ElapsedSeconds); Assert.AreEqual(-year, dateDiff13.Years); Assert.AreEqual(-year * TimeSpec.QuartersPerYear, dateDiff13.Quarters); Assert.AreEqual(-year * TimeSpec.MonthsPerYear, dateDiff13.Months); var date13Days = date1.Subtract(date3).TotalDays.AsInt(); Assert.AreEqual(-date13Days, dateDiff13.Days); Assert.AreEqual(-date13Days * TimeSpec.HoursPerDay, dateDiff13.Hours); Assert.AreEqual(-date13Days * TimeSpec.HoursPerDay * TimeSpec.MinutesPerHour, dateDiff13.Minutes); Assert.AreEqual(-date13Days * TimeSpec.HoursPerDay * TimeSpec.MinutesPerHour * TimeSpec.SecondsPerMinute, dateDiff13.Seconds); }
public void EmptyDateDiffTest() { var now = ClockProxy.Clock.Now; var dateDiff = new DateDiff(now, now); dateDiff.IsEmpty.Should().Be.True(); dateDiff.Difference.Should().Be(TimeSpan.Zero); Assert.AreEqual(0, dateDiff.Years); Assert.AreEqual(0, dateDiff.Quarters); Assert.AreEqual(0, dateDiff.Months); Assert.AreEqual(0, dateDiff.Weeks); Assert.AreEqual(0, dateDiff.Days); Assert.AreEqual(0, dateDiff.Hours); Assert.AreEqual(0, dateDiff.Minutes); Assert.AreEqual(0, dateDiff.Seconds); Assert.AreEqual(0, dateDiff.ElapsedYears); Assert.AreEqual(0, dateDiff.ElapsedMonths); Assert.AreEqual(0, dateDiff.ElapsedDays); Assert.AreEqual(0, dateDiff.ElapsedHours); Assert.AreEqual(0, dateDiff.ElapsedMinutes); Assert.AreEqual(0, dateDiff.ElapsedSeconds); }
public void MonthsTest() { var date1 = new DateTime(2011, 5, 14, 15, 32, 44, 243); var date2 = date1.AddMonths(1); var date3 = date1.AddMonths(-1); var dateDiff12 = new DateDiff(date1, date2); Assert.AreEqual(0, dateDiff12.ElapsedYears); Assert.AreEqual(1, dateDiff12.ElapsedMonths); Assert.AreEqual(0, dateDiff12.ElapsedDays); Assert.AreEqual(0, dateDiff12.ElapsedHours); Assert.AreEqual(0, dateDiff12.ElapsedMinutes); Assert.AreEqual(0, dateDiff12.ElapsedSeconds); Assert.AreEqual(0, dateDiff12.Years); Assert.AreEqual(0, dateDiff12.Quarters); Assert.AreEqual(1, dateDiff12.Months); Assert.AreEqual(5, dateDiff12.Weeks); Assert.AreEqual(31, dateDiff12.Days); Assert.AreEqual(31 * TimeSpec.HoursPerDay, dateDiff12.Hours); Assert.AreEqual(31 * TimeSpec.HoursPerDay * TimeSpec.MinutesPerHour, dateDiff12.Minutes); Assert.AreEqual(31 * TimeSpec.HoursPerDay * TimeSpec.MinutesPerHour * TimeSpec.SecondsPerMinute, dateDiff12.Seconds); var dateDiff13 = new DateDiff(date1, date3); Assert.AreEqual(0, dateDiff13.ElapsedYears); Assert.AreEqual(-1, dateDiff13.ElapsedMonths); Assert.AreEqual(0, dateDiff13.ElapsedDays); Assert.AreEqual(0, dateDiff13.ElapsedHours); Assert.AreEqual(0, dateDiff13.ElapsedMinutes); Assert.AreEqual(0, dateDiff13.ElapsedSeconds); Assert.AreEqual(0, dateDiff13.Years); Assert.AreEqual(0, dateDiff13.Quarters); Assert.AreEqual(-1, dateDiff13.Months); Assert.AreEqual(-4, dateDiff13.Weeks); Assert.AreEqual(-30, dateDiff13.Days); Assert.AreEqual(-30 * TimeSpec.HoursPerDay, dateDiff13.Hours); Assert.AreEqual(-30 * TimeSpec.HoursPerDay * TimeSpec.MinutesPerHour, dateDiff13.Minutes); Assert.AreEqual(-30 * TimeSpec.HoursPerDay * TimeSpec.MinutesPerHour * TimeSpec.SecondsPerMinute, dateDiff13.Seconds); }
public void WeeksTest() { var date1 = new DateTime(2011, 5, 14, 15, 32, 44, 243); var date2 = date1.AddDays(TimeSpec.DaysPerWeek); var date3 = date1.AddDays(-TimeSpec.DaysPerWeek); var dateDiff12 = new DateDiff(date1, date2); Assert.AreEqual(0, dateDiff12.Years); Assert.AreEqual(0, dateDiff12.Quarters); Assert.AreEqual(0, dateDiff12.Months); Assert.AreEqual(1, dateDiff12.Weeks); Assert.AreEqual(TimeSpec.DaysPerWeek, dateDiff12.Days); Assert.AreEqual(TimeSpec.DaysPerWeek * TimeSpec.HoursPerDay, dateDiff12.Hours); Assert.AreEqual(TimeSpec.DaysPerWeek * TimeSpec.HoursPerDay * TimeSpec.MinutesPerHour, dateDiff12.Minutes); Assert.AreEqual(TimeSpec.DaysPerWeek * TimeSpec.HoursPerDay * TimeSpec.MinutesPerHour * TimeSpec.SecondsPerMinute, dateDiff12.Seconds); DateDiff dateDiff13 = new DateDiff(date1, date3); Assert.AreEqual(0, dateDiff13.Years); Assert.AreEqual(0, dateDiff13.Quarters); Assert.AreEqual(0, dateDiff13.Months); Assert.AreEqual(-1, dateDiff13.Weeks); Assert.AreEqual(-TimeSpec.DaysPerWeek, dateDiff13.Days); Assert.AreEqual(-TimeSpec.DaysPerWeek * TimeSpec.HoursPerDay, dateDiff13.Hours); Assert.AreEqual(-TimeSpec.DaysPerWeek * TimeSpec.HoursPerDay * TimeSpec.MinutesPerHour, dateDiff13.Minutes); Assert.AreEqual(-TimeSpec.DaysPerWeek * TimeSpec.HoursPerDay * TimeSpec.MinutesPerHour * TimeSpec.SecondsPerMinute, dateDiff13.Seconds); }
public void MinutesTest(int? minuteDiff) { var minutes = minuteDiff.GetValueOrDefault(1); var date1 = new DateTime(2011, 5, 14, 15, 32, 44, 243); var date2 = date1.AddMinutes(minutes); var date3 = date1.AddMinutes(-minutes); var dateDiff12 = new DateDiff(date1, date2); Assert.AreEqual(0, dateDiff12.ElapsedYears); Assert.AreEqual(0, dateDiff12.ElapsedMonths); Assert.AreEqual(0, dateDiff12.ElapsedDays); Assert.AreEqual(0, dateDiff12.ElapsedHours); Assert.AreEqual(minutes, dateDiff12.ElapsedMinutes); Assert.AreEqual(0, dateDiff12.ElapsedSeconds); Assert.AreEqual(0, dateDiff12.Years); Assert.AreEqual(0, dateDiff12.Quarters); Assert.AreEqual(0, dateDiff12.Months); Assert.AreEqual(0, dateDiff12.Weeks); Assert.AreEqual(0, dateDiff12.Days); Assert.AreEqual(0, dateDiff12.Hours); Assert.AreEqual(minutes, dateDiff12.Minutes); Assert.AreEqual(minutes * TimeSpec.SecondsPerMinute, dateDiff12.Seconds); var dateDiff13 = new DateDiff(date1, date3); Assert.AreEqual(0, dateDiff13.ElapsedYears); Assert.AreEqual(0, dateDiff13.ElapsedMonths); Assert.AreEqual(0, dateDiff13.ElapsedDays); Assert.AreEqual(0, dateDiff13.ElapsedHours); Assert.AreEqual(-minutes, dateDiff13.ElapsedMinutes); Assert.AreEqual(0, dateDiff13.ElapsedSeconds); Assert.AreEqual(0, dateDiff13.Years); Assert.AreEqual(0, dateDiff13.Quarters); Assert.AreEqual(0, dateDiff13.Months); Assert.AreEqual(0, dateDiff13.Weeks); Assert.AreEqual(0, dateDiff13.Days); Assert.AreEqual(0, dateDiff13.Hours); Assert.AreEqual(-minutes, dateDiff13.Minutes); Assert.AreEqual(-minutes * TimeSpec.SecondsPerMinute, dateDiff13.Seconds); }
public void SecondsTest(int? secondDiff) { var seconds = secondDiff.GetValueOrDefault(1); DateTime date1 = new DateTime(2011, 5, 14, 15, 32, 44, 243); DateTime date2 = date1.AddSeconds(seconds); DateTime date3 = date1.AddSeconds(-seconds); var dateDiff12 = new DateDiff(date1, date2); Assert.AreEqual(0, dateDiff12.ElapsedYears); Assert.AreEqual(0, dateDiff12.ElapsedMonths); Assert.AreEqual(0, dateDiff12.ElapsedDays); Assert.AreEqual(0, dateDiff12.ElapsedHours); Assert.AreEqual(0, dateDiff12.ElapsedMinutes); Assert.AreEqual(seconds, dateDiff12.ElapsedSeconds); Assert.AreEqual(0, dateDiff12.Years); Assert.AreEqual(0, dateDiff12.Quarters); Assert.AreEqual(0, dateDiff12.Months); Assert.AreEqual(0, dateDiff12.Weeks); Assert.AreEqual(0, dateDiff12.Days); Assert.AreEqual(0, dateDiff12.Hours); Assert.AreEqual(0, dateDiff12.Minutes); Assert.AreEqual(seconds, dateDiff12.Seconds); var dateDiff13 = new DateDiff(date1, date3); Assert.AreEqual(0, dateDiff13.ElapsedYears); Assert.AreEqual(0, dateDiff13.ElapsedMonths); Assert.AreEqual(0, dateDiff13.ElapsedDays); Assert.AreEqual(0, dateDiff13.ElapsedHours); Assert.AreEqual(0, dateDiff13.ElapsedMinutes); Assert.AreEqual(-seconds, dateDiff13.ElapsedSeconds); Assert.AreEqual(0, dateDiff13.Years); Assert.AreEqual(0, dateDiff13.Quarters); Assert.AreEqual(0, dateDiff13.Months); Assert.AreEqual(0, dateDiff13.Weeks); Assert.AreEqual(0, dateDiff13.Days); Assert.AreEqual(0, dateDiff13.Hours); Assert.AreEqual(0, dateDiff13.Minutes); Assert.AreEqual(-seconds, dateDiff13.Seconds); }
public void NegativeDurationTest(int? diff) { var subtracted = -diff.GetValueOrDefault(1); var date1 = ClockProxy.Clock.Now; //new DateTime(2011, 5, 14, 15, 32, 44, 243); var date2 = date1.AddYears(subtracted).AddMonths(subtracted).AddDays(subtracted).AddHours(subtracted).AddMinutes(subtracted). AddSeconds(subtracted); DateDiff dateDiff = new DateDiff(date1, date2); Assert.AreEqual(subtracted, dateDiff.ElapsedYears); Assert.AreEqual(subtracted, dateDiff.ElapsedMonths); Assert.AreEqual(subtracted, dateDiff.ElapsedDays); Assert.AreEqual(subtracted, dateDiff.ElapsedHours); Assert.AreEqual(subtracted, dateDiff.ElapsedMinutes); Assert.AreEqual(subtracted, dateDiff.ElapsedSeconds); }