public void MergeUnits_DontMergeBookedUnits_Pass() { unit3.AssignedCourse = new Course(); units1 = new SortedSet<TimeUnit>() { unit1, unit2, unit3 }; units1.MergeUnits(); Assert.AreEqual(2, units1.Count); var units = units1.Where(unit => unit.AssignedCourse == null).ToList(); Assert.AreEqual(1, units.Count); Assert.AreEqual(start, units.First().Start); Assert.AreEqual(point2, units.First().End); }
public void MergeUnits_NoConsecutiveUnits_Pass() { unit1 = new TimeUnit(start, start.AddSeconds(1)); unit2 = new TimeUnit(point1, point1.AddSeconds(1)); unit3 = new TimeUnit(end, end.AddSeconds(1)); units1 = new SortedSet<TimeUnit>() { unit1, unit2, unit3 }; units1.MergeUnits(); Assert.AreEqual(3, units1.Count); }
public void MergeUnits_2ConsecutiveUnits1Not_OneUnit() { unit3 = new TimeUnit(end, end.AddMinutes(1)); units1 = new SortedSet<TimeUnit>() { unit1, unit2, unit3 }; units1.MergeUnits(); Assert.AreEqual(2, units1.Count); TimeUnit result = new TimeUnit(start, point2); Assert.IsTrue(units1.Contains(result)); Assert.IsTrue(units1.Contains(unit3)); }