public async Task <bool> Handle(CadastrarAtivoEmCarteiraCommand request, CancellationToken cancellationToken) { if (AtivoJaEmCarteira(request.AtivoId)) { _handlerBase.PublishNotification("Este ativo já está cadastrado na carteira."); return(false); } AtivoEmCarteira entity = _mapper.Map <AtivoEmCarteira>(request); _repository.Insert(entity); return(await _repository.UnitOfWork.Commit()); }
public void AtivoEmCarteira_DadoPrecoMedioEQuantidade_DeveCalcularValorTotal() { // Arrange AtivoEmCarteira ativoEmCarteira = new AtivoEmCarteira( ativoId: Guid.NewGuid(), precoMedio: 33.45M, quantidade: 825, usuarioId: Guid.NewGuid(), dataPrimeiroAporte: DateTime.Now); // Act ativoEmCarteira.CalcularValorAplicado(); // Assert Assert.Equal(27596.25M, ativoEmCarteira.ValorAplicado, 2); }
public void AtivoEmCarteira_DadoPrecoMedioEQuantidadeComValoresExcedentes_DeveRetornarExcecao() { // Arrange // Act var exception = Record.Exception(() => { AtivoEmCarteira ativoEmCarteira = new AtivoEmCarteira( ativoId: Guid.NewGuid(), precoMedio: 999999999999999999995M, quantidade: 999999999999999999995M, usuarioId: Guid.NewGuid(), dataPrimeiroAporte: DateTime.Now); }); // Assert Assert.IsType <OverflowException>(exception); }