public async Task <ResponseDTO> Register(RegisterMoveRequest move) { if (ModelState.IsValid) { return(await _movesApplication.RegisterAsync(move)); } return(ModelState.ToResponse()); }
public async Task <ResponseDTO> RegisterAsync(RegisterMoveRequest move) { //Map to Command var command = _mapper.Map <RegisterMoveRequest, RegisterMoveCommand>(move); //Execute Command var resp = await _bus.SendAsync(command); return(ResponseBuilder.Correct(resp)); }
public void RegisterMove_SendCommand_to_Bus() { //Arrange var bus = A.Fake <IBus>(); var mapper = A.Fake <IMapper>(); var appService = new MovesApplicationService(bus, mapper); var request = new RegisterMoveRequest(); var command = new RegisterMoveCommand(); A.CallTo(() => mapper.Map <RegisterMoveRequest, RegisterMoveCommand>(request)).Returns(command); //Act var resp = appService.RegisterAsync(request); //Assert A.CallTo(() => bus.SendAsync(command)).MustHaveHappened(Repeated.Exactly.Once); }