public void ReviewCreatesCorrectRequest() { CustomerMakeBookingRequest request = null; _bookingControllerFactory.BookingService .Setup(x => x.SummarizeCustomerMake(It.IsAny <CustomerMakeBookingRequest>())) .Callback(delegate(CustomerMakeBookingRequest x) { request = x; }) .Returns(_booking.Object); _bookingControllerFactory.GetController().Review(_inViewModel); Assert.That(request.BusId, Is.EqualTo(_inViewModel.BusId)); Assert.That(request.PickUp, Is.EqualTo(_inViewModel.PickUp)); Assert.That(request.DropOff, Is.EqualTo(_inViewModel.DropOff)); Assert.That(request.Forename, Is.EqualTo(_inViewModel.Forename)); Assert.That(request.Surname, Is.EqualTo(_inViewModel.Surname)); Assert.That(request.AddressLine1, Is.EqualTo(_inViewModel.AddressLine1)); Assert.That(request.AddressLine2, Is.EqualTo(_inViewModel.AddressLine2)); Assert.That(request.AddressLine3, Is.EqualTo(_inViewModel.AddressLine3)); Assert.That(request.Town, Is.EqualTo(_inViewModel.Town)); Assert.That(request.County, Is.EqualTo(_inViewModel.County)); Assert.That(request.PostCode, Is.EqualTo(_inViewModel.PostCode)); Assert.That(request.Email, Is.EqualTo(_inViewModel.Email)); Assert.That(request.TelephoneNumber, Is.EqualTo(_inViewModel.TelephoneNumber)); Assert.That(request.IsMainDriver, Is.EqualTo(_inViewModel.IsMainDriver)); Assert.That(request.DrivingLicenceNumber, Is.EqualTo(_inViewModel.DrivingLicenceNumber)); Assert.That(request.DriverForename, Is.EqualTo(_inViewModel.DriverForename)); Assert.That(request.DriverSurname, Is.EqualTo(_inViewModel.DriverSurname)); Assert.That(request.NumberOfAdults, Is.EqualTo(_inViewModel.NumberOfAdults)); Assert.That(request.NumberOfChildren, Is.EqualTo(_inViewModel.NumberOfChildren)); Assert.That(request.VoucherCode, Is.EqualTo(_inViewModel.VoucherCode)); }
public static CustomerMakeBookingRequest Map(MakeViewModel viewModel) { var request = new CustomerMakeBookingRequest(); request.BusId = viewModel.BusId; request.PickUp = viewModel.PickUp.HasValue ? viewModel.PickUp.Value : (DateTime?)null; request.DropOff = viewModel.DropOff.HasValue ? viewModel.DropOff.Value : (DateTime?)null; request.Forename = viewModel.Forename; request.Surname = viewModel.Surname; request.AddressLine1 = viewModel.AddressLine1; request.AddressLine2 = viewModel.AddressLine2; request.AddressLine3 = viewModel.AddressLine3; request.Town = viewModel.Town; request.County = viewModel.County; request.PostCode = viewModel.PostCode; request.Email = viewModel.Email; request.TelephoneNumber = viewModel.TelephoneNumber; request.IsMainDriver = viewModel.IsMainDriver; request.DrivingLicenceNumber = viewModel.DrivingLicenceNumber; request.DriverForename = viewModel.DriverForename; request.DriverSurname = viewModel.DriverSurname; request.NumberOfAdults = viewModel.NumberOfAdults; request.NumberOfChildren = viewModel.NumberOfChildren; request.VoucherCode = viewModel.VoucherCode; request.TermsAndConditionsAccepted = viewModel.TermsAndConditionsAccepted; request.RestrictionsAccepted = viewModel.RestrictionsAccepted; return(request); }
public CustomerMakeBookingParameterSet MapWithOtherBookingsToday(CustomerMakeBookingRequest request) { var parameterSet = Map(request); parameterSet.OtherBookingsToday = _bookingRepository.GetByDate(parameterSet.CreatedOn); return(parameterSet); }
public Booking SummarizeCustomerMake(CustomerMakeBookingRequest request) { _log.Add(request); var parameterSet = _customerMakePendingParameterSetMapper.Map(request); var booking = Booking.CustomerMake(parameterSet); return(booking); }
public ValidationMessageCollection ValidateCustomerMake(CustomerMakeBookingRequest request) { _log.Add(request); var parameterSet = _customerMakePendingParameterSetMapper.Map(request); var validationMessages = Booking.ValidateCustomerMake(parameterSet); return(validationMessages); }
public void CustomerMakeReturnsCorrectResult() { var bookingServiceFactory = new BookingServiceFactory(); var bookingService = bookingServiceFactory.GetService(); var request = new CustomerMakeBookingRequest(); var bookingNumber = bookingService.CustomerMake(request); Assert.That(bookingNumber, Is.EqualTo("201310010003_Blue")); }
public void SummarizeCustomerMakeCallsCorrectMethods() { var bookingServiceFactory = new BookingServiceFactory(); var bookingService = bookingServiceFactory.GetService(); var request = new CustomerMakeBookingRequest(); var booking = bookingService.SummarizeCustomerMake(request); bookingServiceFactory.CustomerMakeParameterSetMapper.Verify(x => x.Map(request), Times.Once()); }
public string CustomerMake(CustomerMakeBookingRequest request) { _log.Add(request); var parameterSet = _customerMakePendingParameterSetMapper.MapWithOtherBookingsToday(request); var booking = Booking.CustomerMakeWithBookingNumber(parameterSet); _bookingRepository.Save(booking); return(booking.BookingNumber); }
public void CustomerMakeCallsCorrectMethods() { var bookingServiceFactory = new BookingServiceFactory(); var bookingService = bookingServiceFactory.GetService(); var request = new CustomerMakeBookingRequest(); bookingService.CustomerMake(request); bookingServiceFactory.CustomerMakeParameterSetMapper.Verify(x => x.MapWithOtherBookingsToday(request), Times.Once()); bookingServiceFactory.BookingRepository.Verify(x => x.Save(It.IsAny <Booking>()), Times.Once()); }
public CustomerMakeBookingParameterSet Map(CustomerMakeBookingRequest request) { var parameterSet = PropertyMapper.MapMatchingProperties <CustomerMakeBookingRequest, CustomerMakeBookingParameterSet>(request); parameterSet.CreatedOn = DateTime.Now; parameterSet.Bus = _busRepository.GetById(request.BusId); parameterSet.Voucher = !string.IsNullOrEmpty(request.VoucherCode) ? _voucherRepository.GetByCode(request.VoucherCode) : null; parameterSet.CurrentUser = _userRepository.GetByUsername("Application"); return(parameterSet); }
public void SetUp() { _busRepository = new Mock <IBusRepository>(); _userRepository = new Mock <IUserRepository>(); _voucherRepository = new Mock <IVoucherRepository>(); _bookingRepository = new Mock <IBookingRepository>(); _bus = new Bus { Id = Guid.NewGuid() }; _user = new User { Id = Guid.NewGuid() }; _voucher = new Voucher { Id = Guid.NewGuid(), Code = "ABC123" }; _busRepository .Setup(x => x.GetById(_bus.Id.Value)) .Returns(_bus); _userRepository .Setup(x => x.GetByUsername("Application")) .Returns(_user); _voucherRepository .Setup(x => x.GetByCode(_voucher.Code)) .Returns(_voucher); _bookingRepository .Setup(x => x.GetByDate(It.IsAny <DateTime>())) .Returns(new List <Booking>() { new Booking { BookingNumber = "Book01" }, new Booking { BookingNumber = "Book02" } }); _mapper = new CustomerMakeParameterSetMapper( _busRepository.Object, _userRepository.Object, _voucherRepository.Object, _bookingRepository.Object); _request = new CustomerMakeBookingRequest(); _request.BusId = _bus.Id.Value; _request.PickUp = new DateTime(2090, 10, 1); _request.DropOff = new DateTime(2090, 10, 8); _request.Forename = "Barry"; _request.Surname = "Blue"; _request.AddressLine1 = "1 Orange Lane"; _request.AddressLine2 = "Address Line 2"; _request.AddressLine3 = "Address Line 3"; _request.Town = "Greenville"; _request.County = "Brownshire"; _request.PostCode = "M1 1AA"; _request.Email = "*****@*****.**"; _request.TelephoneNumber = "0123456789"; _request.IsMainDriver = true; _request.NumberOfAdults = 2; _request.NumberOfChildren = 2; _request.VoucherCode = _voucher.Code; }