public void ComoDecimal_Valores_TasaBrutaComoNumero() { elResultadoEsperado = 11.9679979015017; losDatos = new DatosDeTasaBruta { ValorFacial = 320000, ValorTransadoNeto = 300000, TasaDeImpuesto = 0.08, DiasAlVencimiento = 221 }; elResultadoObtenido = new TasaBruta(losDatos).ComoNumero(); Assert.AreEqual(elResultadoEsperado, elResultadoObtenido, 13); }
public void GenereElRendimientosPorDescuento_NoTieneTratamientoFiscal_SinRedondeo() { elResultadoEsperado = 19999.9999; losDatos = new DatosDeTasaBrutaSinTratamiento { ValorFacial = 320000, ValorTransadoNeto = 300000.0001, TasaDeImpuesto = 0.08, FechaDeVencimiento = new DateTime(2016, 10, 10), FechaActual = new DateTime(2016, 3, 3) }; elResultadoObtenido = new RendimientoPorDescuentoRedondeado(losDatos).ConCuatroDecimales(); Assert.AreEqual(elResultadoEsperado, elResultadoObtenido); }
public void GenereElRendimientosPorDescuento_TieneTratamientoFiscalYSeDebeRedondear_RedondeaHaciaAbajo() { elResultadoEsperado = 22159.3592; losDatos = new DatosDeTasaBrutaConTratamiento { ValorFacial = 320500, ValorTransadoNeto = 300000, TasaDeImpuesto = 0.08, FechaDeVencimiento = new DateTime(2016, 10, 10), FechaActual = new DateTime(2016, 3, 3) }; elResultadoObtenido = new RendimientoPorDescuentoRedondeado(losDatos).ConCuatroDecimales(); Assert.AreEqual(elResultadoEsperado, elResultadoObtenido); }
public void ComoDecimal_Valores_TasaBrutaComoNumero() { elResultadoEsperado = 11.9679979015017; losDatos = new DatosDeTasaBrutaConTratamiento { ValorFacial = 320000, ValorTransadoNeto = 300000, TasaDeImpuesto = 0.08, FechaDeVencimiento = new DateTime(2016, 10, 10), FechaActual = new DateTime(2016, 3, 3) }; elResultadoObtenido = new TasaBruta(losDatos).ComoNumero(); Assert.AreEqual(elResultadoEsperado, elResultadoObtenido, 13); }
public void ComoNumero_ValoresDeEntrada_ImpuestoCorrecto() { elResultadoEsperado = 1621.6216216216562; losDatos = new DatosDeTasaBrutaConTratamiento { ValorFacial = 320000, ValorTransadoNeto = 300000, TasaDeImpuesto = 0.08, FechaDeVencimiento = new DateTime(2016, 10, 10), FechaActual = new DateTime(2016, 3, 3) }; elResultadoObtenido = new Impuesto(losDatos).ComoNumero(); Assert.AreEqual(elResultadoEsperado, elResultadoObtenido); }
public void ConCuatroDecimales_ValoresDeEntrada_ImpuestoRedondeadoA4Decimales() { elResultadoEsperado = 1621.6216; losDatos = new DatosDeTasaBrutaConTratamiento { ValorFacial = 320000, ValorTransadoNeto = 300000, TasaDeImpuesto = 0.08, FechaDeVencimiento = new DateTime(2016, 10, 10), FechaActual = new DateTime(2016, 3, 3) }; elResultadoObtenido = new ImpuestoRedondeado(losDatos).ConCuatroDecimales(); Assert.AreEqual(elResultadoEsperado, elResultadoObtenido); }
public void GenereElImpuesto_NoTieneTratamientoFiscal_EsCero() { elResultadoEsperado = 0; losDatos = new DatosDeTasaBrutaSinTratamiento { ValorFacial = 320500, ValorTransadoNeto = 300000, TasaDeImpuesto = 0.08, FechaDeVencimiento = new DateTime(2016, 10, 10), FechaActual = new DateTime(2016, 3, 3) }; elResultadoObtenido = losDatos.Impuesto; Assert.AreEqual(elResultadoEsperado, elResultadoObtenido); }
public void GenereElImpuesto_TieneTratamientoFiscalYSeRedondea_RedondeoHaciaArriba() { elResultadoEsperado = 1659.3592; losDatos = new DatosDeTasaBrutaConTratamiento { ValorFacial = 320500, ValorTransadoNeto = 300000, TasaDeImpuesto = 0.08, FechaDeVencimiento = new DateTime(2016, 10, 10), FechaActual = new DateTime(2016, 3, 3) }; elResultadoObtenido = losDatos.Impuesto; Assert.AreEqual(elResultadoEsperado, elResultadoObtenido); }
public void ComoNumero_SinTratamientoFiscal_RendimientoPorDescuentoCorrecto() { elResultadoEsperado = 19999.999899999995; losDatos = new DatosDeTasaBrutaSinTratamiento { ValorFacial = 320000.0, ValorTransadoNeto = 300000.0001, TasaDeImpuesto = 0.08, FechaDeVencimiento = new DateTime(2016, 10, 10), FechaActual = new DateTime(2016, 3, 3) }; elResultadoObtenido = new RendimientoPorDescuento(losDatos).ComoNumero(); Assert.AreEqual(elResultadoEsperado, elResultadoObtenido); }
public void ComoUnNumero_CalculaValorTransadoBrutoConTratamiento() { elResultadoEsperado = 298378.378378378; losDatos = new DatosDeTasaBrutaSinTratamiento { ValorFacial = 320000, ValorTransadoNeto = 300000, TasaDeImpuesto = 0.08, FechaDeVencimiento = new DateTime(2016, 10, 10), FechaActual = new DateTime(2016, 3, 3) }; elResultadoObtenido = new ValorTransadoBruto(losDatos).ComoNumero(); Assert.AreEqual(elResultadoEsperado, elResultadoObtenido, 9); }
public Impuesto(DatosDeTasaBruta losDatos) { elValorTransadoNeto = losDatos.ValorTransadoNeto; elValorTransadoBruto = new ValorTransadoBruto(losDatos).ComoNumero(); }
public TasaBruta(DatosDeTasaBruta losDatos) { laTasaDeImpuesto = losDatos.TasaDeImpuesto; laTasaNeta = CalculeLaTasaNeta(losDatos); }
private static double CalculeLaTasaNeta(DatosDeTasaBruta losDatos) { // TODO: Arreglar return(((losDatos.ValorFacial - losDatos.ValorTransadoNeto) / (losDatos.ValorTransadoNeto * (losDatos.DiasAlVencimiento / 365))) * 100); }
public TasaBruta(DatosDeTasaBruta losDatos) { laTasaDeImpuesto = losDatos.TasaDeImpuesto; laTasaNeta = losDatos.TasaNeta; }
public ImpuestoRedondeado(DatosDeTasaBruta losDatos) { elImpuesto = new Impuesto(losDatos).ComoNumero(); }
public RendimientoPorDescuento(DatosDeTasaBruta losDatos) { elValorFacial = losDatos.ValorFacial; elValorTransadoBruto = losDatos.ValorTransadoBruto; }