def calcula_final_depende(salario, dependentes): salario_base = salario - calcula_inss(salario) salario_base = salario_base - DeducaoDependente().deducao_dependente( dependentes) aliquota = 0 if type(enquadramento_aliquota( salario_base)) == str else enquadramento_aliquota(salario_base) calculo_irrf = CalculadoraIRRF().subtrair_base_irrf(salario_base) valor_imposto = (calculo_irrf * aliquota) / 100 valor_imposto = float('%.2f' % valor_imposto) return valor_imposto
def teste_enquadramento_aliquota_01(salario, dependentes, expected): salario_descontado_inss = calcula_inss(salario) salario_base = salario - salario_descontado_inss deducao_dependente = DeducaoDependente().deducao_dependente(dependentes) salario_apos_reducao = CalculadoraIRRF().subtrair_base_irrf( salario_base - deducao_dependente) enquadramento_aliquota = enquadramento_aliquota(salario_apos_reducao) assert enquadramento_aliquota == expected
def calculo_final(salario_bruto): salario_base = calcula_inss(salario_bruto) aliquota = enquadramento_aliquota(salario_base) if (aliquota == 0): valor_total = salario_base elif (aliquota == 7.5): valor_total = (salario_base - 142.80) * 7.5 elif (aliquota == 15): valor_total = (salario_base - 354.80) * 15 elif (aliquota == 22.5): valor_total = (salario_base - 636.13) * 22.5 elif (aliquota == 27.5): valor_total = (salario_base - 869.36) * 27.5 return valor_total
def teste_enquadramento_01(salario, expected): assert enquadramento_aliquota(salario) == expected