Exemple #1
0
        public async Task HandleAsync(CreateAirplane command, ICorrelationContext context)
        {
            if (await _airplanesRepository.GetAsync(command.AirplaneRegistrationNumber) != null)
            {
                throw new BeComfyException("airplane_already_exists",
                                           $"Airplane with registration number: '{command.AirplaneRegistrationNumber}' already exists.");
            }

            var airplane = new Airplane(command.AirplaneId, command.AirplaneRegistrationNumber, command.AirplaneModel, command.AvailableSeats,
                                        command.RequiredCrew);

            await _airplanesRepository.AddAsync(airplane);

            await _busPublisher.PublishAsync(new AirplaneCreated(command.AirplaneId, command.AirplaneRegistrationNumber, command.AirplaneModel), context);
        }
Exemple #2
0
 public void empty_airplane_model_throws_domain_validation_exception()
 {
     Assert.Throws <BeComfyException>(() => _airplanesRepository.AddAsync(new Airplane(Guid.NewGuid(),
                                                                                       _airplaneRegistraionNumber, "", _availableSeats, _requiredCrew)), "airplane_empty_id", "Airplane id cannot be empty");
 }