public RegisterNewParkingSpaceCommand(
     string ownerId,
     ParkingSpaceDescription description,
     Address address,
     SpaceAvailability availability,
     BookingRate bookingRate)
 {
     OwnerId      = ownerId;
     Description  = description;
     Address      = address;
     Availability = availability;
     BookingRate  = bookingRate;
 }
示例#2
0
        public async Task <IActionResult> EditDescription([FromForm] DescriptionDTO dto, int parkingSpaceId)
        {
            var imageResult = await _imageProcessor.SaveImage(dto.ImageFile);

            dto.ImageURL = imageResult.FileName;

            var description = new ParkingSpaceDescription(dto.Title, dto.Description, dto.ImageURL);

            var command = new EditParkingSpaceDescriptionCommand(parkingSpaceId, description);

            var result = await _mediator.Send(command);

            return(Index());
        }
示例#3
0
 public ParkingSpace(
     string ownerId,
     ParkingSpaceDescription description,
     Address address,
     SpaceAvailability availability,
     BookingRate bookingRate)
 {
     OwnerId = !string.IsNullOrWhiteSpace(ownerId) ? ownerId :
               throw new ArgumentNullException(nameof(ownerId));
     Description = description ??
                   throw new ArgumentNullException(nameof(description));
     Address = address ??
               throw new ArgumentNullException(nameof(address));
     Availability = availability ??
                    throw new ArgumentNullException(nameof(availability));
     BookingRate = bookingRate ??
                   throw new ArgumentNullException(nameof(bookingRate));
 }
示例#4
0
        public async Task ChangeToCorrectDescription()
        {
            await CreateTestParkingSpaceInDb("EditParkingSpaceDescription");

            using (var context = new ParkMateDbContext(GetNamedDbContextOptions("EditParkingSpaceDescription")))
            {
                var space       = context.ParkingSpaces.FirstOrDefault();
                var repository  = new ParkingSpaceRepository(context);
                var description = new ParkingSpaceDescription("New Test Title", "New Description", "newfile.jpg");
                var command     = new EditParkingSpaceDescriptionCommand(space.Id, description);
                var handler     = new EditParkingSpaceDescriptionCommandHandler(repository, new Mock <IMediator>().Object);

                await handler.Handle(command);

                Assert.NotNull(space.BookingRate);
                Assert.NotEqual(GetTestDescription(), space.Description);
                Assert.Equal(description, space.Description);
            }
        }
示例#5
0
 public EditParkingSpaceDescriptionCommand(int parkingSpaceId, ParkingSpaceDescription description)
 {
     ParkingSpaceId = parkingSpaceId;
     Description    = description;
 }
示例#6
0
 public void UpdateDescription(ParkingSpaceDescription description)
 {
     Description = description ??
                   throw new ArgumentNullException(nameof(description));
 }