public void TheEventStartDateIsNotUpdatedWithALaterAttendanceIsRemoved() { // Arrange var attendance = new AttendanceBuilder().Arrival(DateTime.Now).Departure(DateTime.Now.AddHours(Randomiser.Int(1, 24))).Build(); var laterAttendance = new AttendanceBuilder().Arrival(DateTime.Now.AddHours(Randomiser.Int(60))).Build(); var happening = new EventBuilder().AddAttendance(attendance).AddAttendance(laterAttendance).Build(); // Act happening.RemoveAttendance(laterAttendance.User); // Assert Assert.AreEqual(attendance.Arrival, happening.Start); }
public void CallingRemoveAttendanceSucceedsWhenTheAttendanceDoesNotExist() { // Arrange var happening = new EventBuilder().AddAttendance(_attendance).Build(); happening.AddAttendance(new AttendanceBuilder().Build()); happening.AddAttendance(new AttendanceBuilder().Build()); // Act happening.RemoveAttendance(new UserBuilder().Build()); // Assert Assert.AreEqual(3, happening.Attendances.Count); }
public void CallingRemoveAttendanceRemovesTheCorrectAttendanceWhenTheAttandanceExistsByReference() { // Arrange var user = new UserBuilder().Build(); var happening = new EventBuilder().AddAttendance(_attendance).Build(); happening.AddAttendance(new AttendanceBuilder().User(user).Build()); happening.AddAttendance(new AttendanceBuilder().Build()); // Act happening.RemoveAttendance(user); // Assert Assert.AreEqual(2, happening.Attendances.Count); Assert.IsNull(happening.Attendances.FirstOrDefault(a => a.User.Username == user.Username)); }