public void CanAddBooking() { Guid bookingId; var makeBookingRequest = new MakeBookingRequest() { StartDate = new DateTime(2015, 01, 12), EndDate = new DateTime(2015, 01, 16), VehicleId = Guid.NewGuid(), CustomerId = Guid.NewGuid(), UserId = Guid.NewGuid() }; using (_contextProvider) { var booking = Booking.Make(makeBookingRequest); _bookingRepository.Save(booking); bookingId = booking.Id.Value; _contextProvider.SaveChanges(); } using (_contextProvider) { var allBookings = _bookingRepository.GetAll(); var storedBooking = _bookingRepository.GetById(bookingId); Assert.AreEqual(1, allBookings.Count); Assert.IsNotNull(storedBooking.Id); Assert.IsNotNull(storedBooking.BookingNumber); Assert.AreEqual(makeBookingRequest.EndDate, storedBooking.EndDate); Assert.AreEqual(makeBookingRequest.EndDate, storedBooking.EndDate); Assert.AreEqual(makeBookingRequest.CustomerId.Value, storedBooking.CustomerId); Assert.AreEqual(makeBookingRequest.UserId.Value, storedBooking.CreatedById); } }
public void ValidRequestPasses() { var request = new MakeBookingRequest(); request.CustomerId = Guid.NewGuid(); request.StartDate = new DateTime(2050, 10, 1); request.EndDate = new DateTime(2050, 10, 3); request.VehicleId = Guid.NewGuid(); var validationMessages = Booking.ValidateMake(request); Assert.AreEqual(0, validationMessages.Count); }
public void InvalidRequestFails() { var request = new MakeBookingRequest(); request.CustomerId = Guid.NewGuid(); request.StartDate = new DateTime(2050, 10, 1); request.EndDate = new DateTime(2050, 10, 3); request.VehicleId = Guid.NewGuid(); var validationMessages = Booking.ValidateMake(request); Assert.AreEqual(1, validationMessages.Count); Assert.IsTrue(validationMessages.Any(x => x.Text.Equals("Booking conflicts with existing bookings."))); }
public void CanMakeBooking() { var request = new MakeBookingRequest(); request.CustomerId = Guid.NewGuid(); request.StartDate = new DateTime(2050, 10, 1); request.EndDate = new DateTime(2050, 10, 3); request.VehicleId = Guid.NewGuid(); var booking = Booking.Make(request); Assert.IsNotNull(booking.Id); Assert.AreNotEqual(default(Guid), booking.Id.Value); Assert.IsNotNull(booking.BookingNumber); Assert.AreEqual(request.StartDate, booking.StartDate); Assert.AreEqual(request.EndDate, booking.EndDate); Assert.AreSame(request.CustomerId.Value, booking.CustomerId); Assert.AreSame(request.VehicleId.Value, booking.VehicleId); Assert.AreEqual(300m, booking.Total); }