public void Build_WithAValidCommand_ReturnsBooking()
        {
            //arrange
            var validCommand = new CreateBookingCommand
            {
                BookingDate   = DateTime.Now,
                ContactNumber = "0123456789",
                EmailAddress  = "*****@*****.**",
                Flexibility   = Flexibility.PlusMinusOneDay,
                Name          = "Name",
                VehicleSize   = VehicleSize.Large,
            };
            var builder = new BookingBuilder();

            //act
            var booking = builder.Build(validCommand);

            //assert
            Assert.Equal(validCommand.BookingDate, booking.BookingDate);
            Assert.Equal(validCommand.ContactNumber, booking.ContactNumber);
            Assert.Equal(validCommand.EmailAddress, booking.EmailAddress);
            Assert.Equal(validCommand.Flexibility, booking.Flexibility);
            Assert.Equal(validCommand.Name, booking.Name);
            Assert.Equal(validCommand.VehicleSize, booking.VehicleSize);
        }
        public void Build_WithANullCommand_Throws()
        {
            //arrange
            var builder = new BookingBuilder();

            //act + assert
            Assert.Throws <ArgumentNullException>(() => builder.Build(null));
        }
        public void Build_WithAnInvalidCommand_Throws()
        {
            //arrange
            var builder = new BookingBuilder();
            var command = new CreateBookingCommand();

            //act + assert
            Assert.ThrowsAny <Exception>(() => builder.Build(command));
        }
Example #4
0
        public void Adding_Booking_With_Invalid_Place_Number_Should_Return_An_BookingException()
        {
            var booking = new BookingBuilder(this.seance)
                          .WithGuid(Guid.NewGuid())
                          .WithBoughtBool(true)
                          .WithPlaces($"{this.seatsCount + 1}")
                          .Build();

            Assert.Throws(typeof(BookingException), () => bookingService.Add(booking));
        }
Example #5
0
        public void Adding_Booking_With_Already_Booked_Place_Should_Return_An_BookingException()
        {
            var booking = new BookingBuilder(this.seance)
                          .WithGuid(Guid.NewGuid())
                          .WithBoughtBool(true)
                          .WithPlaces("1")
                          .Build();

            Assert.Throws(typeof(BookingException), () => bookingService.Add(booking));
        }
Example #6
0
        public void Adding_Valid_Booking_Should_Return_No_Exceptions()
        {
            var booking = new BookingBuilder(this.seance)
                          .WithGuid(Guid.NewGuid())
                          .WithBoughtBool(true)
                          .WithPlaces("8:9:10:11")
                          .Build();

            bookingService.Add(booking);
        }