public void HasGapsTest() { DateTime start1 = ClockProxy.Clock.Now.Date; DateTime end1 = start1.AddDays(1); DateTime start2 = end1; DateTime end2 = start2.AddDays(1); DateTime start3 = end2; DateTime end3 = start3.AddDays(1); DateTime start4 = end3; DateTime end4 = start4.AddDays(1); TimePeriodCollection periods = new TimePeriodCollection(); TimeLine <TimeRange> timeLineMoments = new TimeLine <TimeRange>(periods, null, null); Assert.AreEqual(false, timeLineMoments.HasGaps()); periods.Add(new TimeRange(start1, start1)); Assert.AreEqual(false, timeLineMoments.HasGaps()); periods.RemoveAt(periods.Count - 1); periods.Add(new TimeRange(start1, end1)); Assert.AreEqual(false, timeLineMoments.HasGaps()); periods.Add(new TimeRange(start1, end1)); Assert.AreEqual(false, timeLineMoments.HasGaps()); periods.RemoveAt(periods.Count - 1); Assert.AreEqual(false, timeLineMoments.HasGaps()); periods.Add(new TimeRange(start2, end2)); Assert.AreEqual(false, timeLineMoments.HasGaps()); periods.Add(new TimeRange(start1, end2)); Assert.AreEqual(false, timeLineMoments.HasGaps()); periods.RemoveAt(periods.Count - 1); Assert.AreEqual(false, timeLineMoments.HasGaps()); periods.Add(new TimeRange(start3, end3)); Assert.AreEqual(false, timeLineMoments.HasGaps()); periods.Add(new TimeRange(start4, end4)); Assert.AreEqual(false, timeLineMoments.HasGaps()); periods.RemoveAt(2); // start/end 3 Assert.AreEqual(true, timeLineMoments.HasGaps()); periods.RemoveAt(1); // start/end 1 Assert.AreEqual(true, timeLineMoments.HasGaps()); periods.RemoveAt(periods.Count - 1); // start/end 4 Assert.AreEqual(false, timeLineMoments.HasGaps()); periods.RemoveAt(0); Assert.AreEqual(false, timeLineMoments.HasGaps()); periods.Clear(); Assert.AreEqual(false, timeLineMoments.HasGaps()); } // HasGapsTest
public void RemoveAtTest() { DateTime now = ClockProxy.Clock.Now; SchoolDay schoolDay = new SchoolDay(now); TimePeriodCollection timePeriods = new TimePeriodCollection(schoolDay); // inside Assert.Equal(timePeriods[2], schoolDay.Lesson2); timePeriods.RemoveAt(2); Assert.Equal(timePeriods[2], schoolDay.Break2); // first Assert.Equal(timePeriods[0], schoolDay.Lesson1); timePeriods.RemoveAt(0); Assert.Equal(timePeriods[0], schoolDay.Break1); // last Assert.Equal(timePeriods[timePeriods.Count - 1], schoolDay.Lesson4); timePeriods.RemoveAt(timePeriods.Count - 1); Assert.Equal(timePeriods[timePeriods.Count - 1], schoolDay.Break3); } // RemoveAtTest
public void RemoveAtTest() { var now = ClockProxy.Clock.Now; var schoolDay = new SchoolDay(now); var timePeriods = new TimePeriodCollection(schoolDay); // inside timePeriods[2].Should().Be(schoolDay.Lesson2); timePeriods.RemoveAt(2); timePeriods[2].Should().Be(schoolDay.Break2); // first timePeriods[0].Should().Be(schoolDay.Lesson1); timePeriods.RemoveAt(0); timePeriods[0].Should().Be(schoolDay.Break1); // last timePeriods[timePeriods.Count - 1].Should().Be(schoolDay.Lesson4); timePeriods.RemoveAt(timePeriods.Count - 1); timePeriods[timePeriods.Count - 1].Should().Be(schoolDay.Break3); }
public void IsSamePeriodTest() { DateTime now = ClockProxy.Clock.Now; SchoolDay schoolDay = new SchoolDay(now); TimePeriodCollection timePeriods = new TimePeriodCollection(schoolDay); Assert.True(timePeriods.IsSamePeriod(timePeriods)); Assert.True(timePeriods.IsSamePeriod(schoolDay)); Assert.True(schoolDay.IsSamePeriod(schoolDay)); Assert.True(schoolDay.IsSamePeriod(timePeriods)); Assert.False(timePeriods.IsSamePeriod(TimeBlock.Anytime)); Assert.False(schoolDay.IsSamePeriod(TimeBlock.Anytime)); timePeriods.RemoveAt(0); Assert.False(timePeriods.IsSamePeriod(schoolDay)); } // IsSamePeriodTest
public void IsSamePeriodTest() { var now = ClockProxy.Clock.Now; var schoolDay = new SchoolDay(now); var timePeriods = new TimePeriodCollection(schoolDay); Assert.IsTrue(timePeriods.IsSamePeriod(timePeriods)); Assert.IsTrue(timePeriods.IsSamePeriod(schoolDay)); Assert.IsTrue(schoolDay.IsSamePeriod(schoolDay)); Assert.IsTrue(schoolDay.IsSamePeriod(timePeriods)); Assert.IsFalse(timePeriods.IsSamePeriod(TimeBlock.Anytime)); Assert.IsFalse(schoolDay.IsSamePeriod(TimeBlock.Anytime)); timePeriods.RemoveAt(0); Assert.IsFalse(timePeriods.IsSamePeriod(schoolDay)); }
public void IsSamePeriodTest() { var now = ClockProxy.Clock.Now; var schoolDay = new SchoolDay(now); var timePeriods = new TimePeriodCollection(schoolDay); Assert.IsTrue(timePeriods.IsSamePeriod(timePeriods)); Assert.IsTrue(timePeriods.IsSamePeriod(schoolDay)); Assert.IsTrue(schoolDay.IsSamePeriod(schoolDay)); Assert.IsTrue(schoolDay.IsSamePeriod(timePeriods)); Assert.IsFalse(timePeriods.IsSamePeriod(TimeBlock.Anytime)); Assert.IsFalse(schoolDay.IsSamePeriod(TimeBlock.Anytime)); timePeriods.RemoveAt(0); Assert.IsFalse(timePeriods.IsSamePeriod(schoolDay)); }
public void RemoveAtTest() { var now = ClockProxy.Clock.Now; var schoolDay = new SchoolDay(now); var timePeriods = new TimePeriodCollection(schoolDay); // inside timePeriods[2].Should().Be(schoolDay.Lesson2); timePeriods.RemoveAt(2); timePeriods[2].Should().Be(schoolDay.Break2); // first timePeriods[0].Should().Be(schoolDay.Lesson1); timePeriods.RemoveAt(0); timePeriods[0].Should().Be(schoolDay.Break1); // last timePeriods[timePeriods.Count - 1].Should().Be(schoolDay.Lesson4); timePeriods.RemoveAt(timePeriods.Count - 1); timePeriods[timePeriods.Count - 1].Should().Be(schoolDay.Break3); }
public void HasOverlapsTest() { DateTime start1 = ClockProxy.Clock.Now.Date; DateTime end1 = start1.AddDays(1); DateTime start2 = end1; DateTime end2 = start2.AddDays(1); TimePeriodCollection periods = new TimePeriodCollection(); TimeLine <TimeRange> timeLineMoments = new TimeLine <TimeRange>(periods, null, null); Assert.AreEqual(false, timeLineMoments.HasOverlaps()); periods.Add(new TimeRange(start1, start1)); Assert.AreEqual(false, timeLineMoments.HasOverlaps()); periods.RemoveAt(periods.Count - 1); periods.Add(new TimeRange(start1, end1)); Assert.AreEqual(false, timeLineMoments.HasOverlaps()); periods.Add(new TimeRange(start1, end1)); Assert.AreEqual(true, timeLineMoments.HasOverlaps()); periods.RemoveAt(periods.Count - 1); Assert.AreEqual(false, timeLineMoments.HasOverlaps()); periods.Add(new TimeRange(start1.AddHours(1), end1.AddHours(1))); Assert.AreEqual(true, timeLineMoments.HasOverlaps()); periods.RemoveAt(periods.Count - 1); Assert.AreEqual(false, timeLineMoments.HasOverlaps()); periods.Add(new TimeRange(start1.AddHours(-1), end1.AddHours(-1))); Assert.AreEqual(true, timeLineMoments.HasOverlaps()); periods.RemoveAt(periods.Count - 1); Assert.AreEqual(false, timeLineMoments.HasOverlaps()); periods.Add(new TimeRange(start1.AddHours(-1), end1.AddHours(+1))); Assert.AreEqual(true, timeLineMoments.HasOverlaps()); periods.RemoveAt(periods.Count - 1); Assert.AreEqual(false, timeLineMoments.HasOverlaps()); periods.Add(new TimeRange(start1.AddHours(+1), end1.AddHours(-1))); Assert.AreEqual(true, timeLineMoments.HasOverlaps()); periods.RemoveAt(periods.Count - 1); Assert.AreEqual(false, timeLineMoments.HasOverlaps()); periods.Add(new TimeRange(start2, end2)); Assert.AreEqual(false, timeLineMoments.HasOverlaps()); periods.Add(new TimeRange(start2, end2.AddHours(1))); Assert.AreEqual(true, timeLineMoments.HasOverlaps()); periods.RemoveAt(periods.Count - 1); periods.Add(new TimeRange(start2, end2.AddHours(-1))); Assert.AreEqual(true, timeLineMoments.HasOverlaps()); periods.RemoveAt(periods.Count - 1); periods.Add(new TimeRange(start1, end2)); Assert.AreEqual(true, timeLineMoments.HasOverlaps()); periods.RemoveAt(0); Assert.AreEqual(true, timeLineMoments.HasOverlaps()); periods.RemoveAt(0); Assert.AreEqual(false, timeLineMoments.HasOverlaps()); periods.Clear(); Assert.AreEqual(false, timeLineMoments.HasOverlaps()); } // HasOverlapsTest