Exemple #1
0
 public void TesteValor_NaoNumero()
 {
     try
     {
         string valorExtenso = ValorMonetario.Converte("asdfasdfsa");
     }
     catch (Exception ex)
     {
         AssertFailedException.Equals(MensagemValorInvalido, ex);
     }
 }
Exemple #2
0
 public void TesteValor_MenorQueZero()
 {
     try
     {
         string valorExtenso = ValorMonetario.Converte(-5);
     }
     catch (Exception ex)
     {
         AssertFailedException.Equals(MensagemValorInvalido, ex);
     }
 }
Exemple #3
0
 public void TesteValor_MaiorQueTresAlgarismos()
 {
     try
     {
         string valorExtenso = ValorMonetario.Converte(5000);
     }
     catch (Exception ex)
     {
         AssertFailedException.Equals(MensagemValorInvalido, ex);
     }
 }
Exemple #4
0
        public void Somatorio_de_valores_monetarios_como_decimal(decimal valor1, decimal valor2, decimal valor3, decimal resultado)
        {
            var valores =
                new Collection <decimal>()
            {
                ValorMonetario.ToDecimal(new ValorMonetario(valor1)),
                ValorMonetario.ToDecimal(new ValorMonetario(valor2)),
                ValorMonetario.ToDecimal(new ValorMonetario(valor3))
            };

            valores.Sum().Should().Be(ValorMonetario.ToDecimal(new ValorMonetario(resultado)));
        }
Exemple #5
0
        public void Criar_contrato(ContratoData data)
        {
            var id       = Guid.NewGuid();
            var contrato = ContratoDeEmprestimoAggregate.CriarContrato(
                new ParametrosDeContratoDeEmprestimo
            {
                Id                   = id,
                ValorLiquido         = data.ValorLiquido,
                QuantidadeDeParcelas = data.Prazo,
                TaxaAoMes            = data.TaxaAoMes,
                Tac                  = data.Tac,
                Iof                  = data.Iof,
                DiasDeCarencia       = data.DiasDeCarencia
            });

            contrato.Id.Should().Be(id);
            contrato.TaxaAoDia.Should().BeEquivalentTo(new Percentual(data.TaxaAoDia));
            contrato.ValorCarencia.Should().BeEquivalentTo(new ValorMonetario(data.ValorCarencia));
            contrato.ValorFinanciado.Should().BeEquivalentTo(new ValorMonetario(data.ValorFinanciado));
            ValorMonetario.ToDecimal(contrato.ValorDaParcela)
            .Should()
            .BeApproximately(data.ValorDaParcela, PRECISION);
            contrato.Parcelas.Should().HaveCount(data.Prazo);

            foreach (var parcela in contrato.Parcelas)
            {
                var parcelaExpected = data.Parcelas.Single(p => p.Numero == parcela.Numero);

                ValorMonetario.ToDecimal(parcela.SaldoDevedorInicial)
                .Should()
                .BeApproximately(ValorMonetario.ToDecimal(parcelaExpected.SaldoDevedorInicial), PRECISION);

                ValorMonetario.ToDecimal(parcela.Valor)
                .Should()
                .BeApproximately(ValorMonetario.ToDecimal(parcelaExpected.Valor), PRECISION);

                ValorMonetario.ToDecimal(parcela.Principal)
                .Should()
                .BeApproximately(ValorMonetario.ToDecimal(parcelaExpected.Principal), PRECISION);

                ValorMonetario.ToDecimal(parcela.Juros)
                .Should()
                .BeApproximately(ValorMonetario.ToDecimal(parcelaExpected.Juros), PRECISION);

                ValorMonetario.ToDecimal(parcela.SaldoDevedorFinal)
                .Should()
                .BeApproximately(ValorMonetario.ToDecimal(parcelaExpected.SaldoDevedorFinal), PRECISION);
            }
        }
Exemple #6
0
        public void TesteValor_Arredondamento()
        {
            string valorExtenso = ValorMonetario.Converte(888.98654321m);

            Assert.AreEqual(valorExtenso, "oitocentos e oitenta e oito reais e noventa e nove centavos");
        }
Exemple #7
0
        public void TesteValor_Minimo()
        {
            string valorExtenso = ValorMonetario.Converte(0.01m);

            Assert.AreEqual(valorExtenso, "um centavo");
        }
Exemple #8
0
        public void TesteValor_Maximo()
        {
            string valorExtenso = ValorMonetario.Converte(999.99m);

            Assert.AreEqual(valorExtenso, "novecentos e noventa e nove reais e noventa e nove centavos");
        }
Exemple #9
0
        public void TesteValor_Fracionado()
        {
            string valorExtenso = ValorMonetario.Converte(22.58m);

            Assert.AreEqual(valorExtenso, "vinte e dois reais e cinquenta e oito centavos");
        }
Exemple #10
0
        public void TesteValor_10_reais()
        {
            string valorExtenso = ValorMonetario.Converte(10);

            Assert.AreEqual(valorExtenso, "dez reais");
        }
Exemple #11
0
        public void Valor_monetario_para_decimal(decimal valor)
        {
            decimal valorMonetario = ValorMonetario.ToDecimal(ValorMonetario.FromDecimal(valor));

            valorMonetario.Should().Be(valor);
        }
Exemple #12
0
        public void Criar_valor_monetario_de_decimal_implicitamente(decimal valor)
        {
            ValorMonetario valorMonetario = valor;

            valorMonetario.Should().BeEquivalentTo(new ValorMonetario(valor));
        }
Exemple #13
0
        public void Criar_valor_monetario_de_decimal(decimal valor)
        {
            var valorMonetario = ValorMonetario.FromDecimal(valor);

            valorMonetario.Should().BeEquivalentTo(new ValorMonetario(valor));
        }