Esempio n. 1
0
        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);
        }
Esempio n. 2
0
        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);
        }
Esempio n. 3
0
        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));
        }