示例#1
0
        public void ConstructingAnAttendanceWithANullUserThrowsAnArgumentNullException()
        {
            // Arrange
            var arrival   = Randomiser.ArrivalDate;
            var departure = Randomiser.DepartureDate(arrival);

            // Act
            Action action = () => new Attendance(null, arrival, departure);

            // Assert
            action
            .ShouldThrow <ArgumentNullException>()
            .WithMessage("The user cannot be null.\n\rParameter name: user");
        }
示例#2
0
        public void ConstructingAnAttendanceWithValidParametersSucceeds()
        {
            // Arrange
            var user      = new UserBuilder().Build();
            var arrival   = Randomiser.ArrivalDate;
            var departure = Randomiser.DepartureDate(arrival);

            // Act
            var attendance = new Attendance(user, arrival, departure);

            // Assert
            Assert.IsNotNull(attendance);
            Assert.AreEqual(user, attendance.User);
            Assert.AreEqual(arrival, attendance.Arrival);
            Assert.AreEqual(departure, attendance.Departure);
        }
示例#3
0
        public void ANewEventIsConstructedCorrectlyWithAnAttendanceList()
        {
            // Arrange
            var user          = new UserBuilder().Build();
            var arrivalDate   = Randomiser.ArrivalDate;
            var departureDate = Randomiser.DepartureDate(arrivalDate);

            // Act
            var attendances = new List <Attendance>
            {
                new Attendance(user, arrivalDate, departureDate),
                new Attendance(user, arrivalDate, departureDate)
            };

            var happening = new EventBuilder().Attendances(attendances).Build();

            // Assert
            Assert.IsNotNull(happening.Attendances);
            Assert.AreEqual(2, happening.Attendances.Count);
            // Assert.AreEqual("Location", happening.Location);
        }