Ejemplo n.º 1
0
        public ActionResult <int> Post([FromBody] CreateTrackDTO request)
        {
            var command = new CreateTrackCommand(_mapper.Map <Track>(request));
            var handler = _commandHandler.Build(command);

            return(Ok(handler.Execute()));
        }
        public async Task ShouldRequireMinimumFields()
        {
            var command = new CreateTrackCommand();

            var result = await SendAsync(command);

            result.IsBadRequest.Should().BeTrue();
            result.ValidationFailures.Should().ContainNotEmptyValidationErrorForProperty(nameof(CreateTrackCommand.Name));
        }
        public async Task ShouldCreateRace()
        {
            var command = new CreateTrackCommand()
            {
                Name = "Tour de France 2020",
            };

            var result = await SendAsync(command);

            var race = await FindAsync <Race>(result.Content);

            race.Should().NotBeNull();
            race.Name.Should().Be("Tour de France 2020");
        }
Ejemplo n.º 4
0
        public async Task <ActionResult <int> > PostTrack(CreateTrackCommand track)
        {
            if (_context.Tracks.Any(e => e.NascarId == track.NascarId))
            {
                return(Conflict());
            }

            var result = await _mediator.Send(track);

            return(ResponseHelpers.BuildCreatedAtResponse(
                       this,
                       result,
                       nameof(GetTrack),
                       () => new { id = result.Content }));
        }
 public ICommandHandler <CreateTrackCommand, int> Build(CreateTrackCommand command)
 {
     return(new CreateTrackCommandHandler(_service, command));
 }