public async Task <RendaPorPessoaDto> Armazenar(RendaPorPessoaDto dto)
        {
            if (!ValidarDto(dto))
            {
                return(null);
            }

            var rendaPorPessoa = new RendaPorPessoa(
                dto.PessoaId,
                dto.NomePessoa,
                dto.Valor);

            if (rendaPorPessoa.Invalid)
            {
                Notificador.Notificar(rendaPorPessoa.Notificacoes);
                return(null);
            }

            await _rendaPorPessoaRepositorio.Incluir(rendaPorPessoa);

            await _rendaPorPessoaRepositorio.Salvar();

            var retorno = new RendaPorPessoaDto
            {
                Id         = rendaPorPessoa.Id,
                PessoaId   = rendaPorPessoa.PessoaId,
                NomePessoa = rendaPorPessoa.NomePessoa,
                Valor      = rendaPorPessoa.Valor
            };

            _alteradorDePontosPorInsercaoDeRenda.Alterar(retorno);

            return(retorno);
        }
Esempio n. 2
0
        public void NaoDeveCriarRendaPorValorMenorIgualAhZero()
        {
            //Given
            decimal valorInvalido = _faker.Random.Decimal(-67, 0);

            //When
            var rendaPorPessoa = new RendaPorPessoa(
                _faker.Random.Guid(),
                _faker.Person.FullName,
                valorInvalido);

            //Then
            Assert.NotEmpty(rendaPorPessoa.Notificacoes);
            Assert.True(rendaPorPessoa.Invalid);
        }
Esempio n. 3
0
        public void NaoDeveCriarRendaPorPessoaComNomeInvalido()
        {
            //Given
            string nomeInvalido = null;

            //When
            var rendaPorPessoa = new RendaPorPessoa(
                _faker.Random.Guid(),
                nomeInvalido,
                _faker.Random.Decimal(78));

            //Then
            Assert.NotEmpty(rendaPorPessoa.Notificacoes);
            Assert.True(rendaPorPessoa.Invalid);
        }
Esempio n. 4
0
        public void DeveCriarRendaPorPessoa()
        {
            //Given
            var rendaPorPessoaEsperada = new
            {
                PessoaId     = _faker.Random.Guid(),
                NomeDaPessoa = _faker.Person.FullName,
                Valor        = _faker.Random.Decimal(50)
            };

            //When
            var rendaPorPessoa = new RendaPorPessoa(
                rendaPorPessoaEsperada.PessoaId,
                rendaPorPessoaEsperada.NomeDaPessoa,
                rendaPorPessoaEsperada.Valor);

            //Then
            Assert.Equal(rendaPorPessoaEsperada.PessoaId, rendaPorPessoa.PessoaId);
            Assert.Equal(rendaPorPessoaEsperada.NomeDaPessoa, rendaPorPessoa.NomePessoa);
            Assert.Equal(rendaPorPessoaEsperada.Valor, rendaPorPessoa.Valor);
        }
Esempio n. 5
0
        public async Task <RendaPorPessoa> Incluir(RendaPorPessoa rendaPorPessoa)
        {
            await _contexto.Set <RendaPorPessoa>().AddAsync(rendaPorPessoa);

            return(rendaPorPessoa);
        }