public async Task <PositionProjection> CreatePosition([FromBody] CreatePositionDTO input) { var command = new CreatePositionCommand(input); var result = await _commandDispatcher.Execute(command); return(result); }
public async Task <Response <Guid> > Handle(CreatePositionCommand request, CancellationToken cancellationToken) { var position = _mapper.Map <Position>(request); await _positionRepository.AddAsync(position); return(new Response <Guid>(position.Id)); }
public void setup_dispatcher_to_verify_createPositionCommands_are_the_same(CreatePositionCommand command) { CommandDispatcherMock.Setup(a => a.Execute(It.IsAny <CreatePositionCommand>())) .Callback <ICommand <PositionProjection> >((a) => { PositonCommand = (CreatePositionCommand)a; }) .ReturnsAsync(new PositionProjection() { PositionName = command.Input.PositionName, }); }
public async void given_create_position_command_command_dispatcher_should_get_same_command_created_in_controller() { var mockAgg = new PositionControllerMockAggregate(); var controller = mockAgg.PositionControllerFactory(); var input = new CreatePositionDTO { PositionName = "testName", }; var command = new CreatePositionCommand(input); mockAgg.setup_dispatcher_to_verify_createPositionCommands_are_the_same(command); var result = await controller.CreatePosition(input); //Assert Assert.IsType <PositionProjection>(result); Assert.Equal(result.PositionName, input.PositionName); }
// [Authorize] public async Task <IActionResult> Post(CreatePositionCommand command) { return(Ok(await Mediator.Send(command))); }
// [Authorize] public async Task <IActionResult> Post(CreatePositionCommand command) { var resp = await Mediator.Send(command); return(CreatedAtAction(nameof(Post), resp)); }