public async Task <IActionResult> CreateExpenseType([FromBody] CreateExpenseTypeCommand command)
        {
            var response = await _mediator.Send <ResultResponse <ExpenseTypeDTO> >(command);

            if (response.IsSuccess)
            {
                return(CreatedAtAction(nameof(GetExpenseTypeDetail), new { id = response.Result.Id }, response.Result));
            }
            return(BadRequest(response.ErrorMessage));
        }
Exemplo n.º 2
0
        public async Task ShouldCreateNew()
        {
            // Arrange
            Guid expectedId = Guid.NewGuid();
            var  repository = new Mock <IExpenseTypeRepository>();
            CreateExpenseTypeCommand cmd =
                new CreateExpenseTypeCommand(expectedId, Guid.NewGuid(), "Name", "Symbol");

            ExpenseTypeCommandHandler actual = new ExpenseTypeCommandHandler(repository.Object);

            // Act
            await actual.HandleAsync(cmd);

            // Assert
            repository.Verify(e =>
                              e.Add(It.Is <ExpenseType>(a => a.Id == expectedId)
                                    ),
                              Times.Once
                              );
        }