예제 #1
0
    def test_passes_when_orcado_lower_limit_is_not_exceeded(self):
        percent_limit = Decimal(constants.ORCADO_DIFFERENCE_PERCENT_LIMIT)

        orcado_sum = Decimal(100)
        mommy.make(Execucao,
                   orgao__id=SME_ORGAO_ID,
                   orcado_atualizado=orcado_sum / 2,
                   _quantity=2)
        execucoes = Execucao.objects.all()

        orcado_limit = orcado_sum - (orcado_sum * percent_limit) + 1
        mommy.make(ExecucaoTemp,
                   orgao_id=SME_ORGAO_ID,
                   orcado_atualizado=orcado_limit / 2,
                   _quantity=2)
        execucoes_temp = ExecucaoTemp.objects.all()

        services.verify_total_sum(execucoes, execucoes_temp)
예제 #2
0
    def test_raise_exception_when_orcado_lower_limit_is_exceeded(self):
        percent_limit = Decimal(constants.ORCADO_DIFFERENCE_PERCENT_LIMIT)

        orcado_sum = Decimal(100)
        mommy.make(Execucao,
                   orgao__id=SME_ORGAO_ID,
                   orcado_atualizado=orcado_sum / 2,
                   _quantity=2)
        execucoes = Execucao.objects.all()

        orcado_under_limit = orcado_sum - (orcado_sum * percent_limit) - 10
        mommy.make(ExecucaoTemp,
                   orgao_id=SME_ORGAO_ID,
                   orcado_atualizado=orcado_under_limit / 2,
                   _quantity=2)
        execucoes_temp = ExecucaoTemp.objects.all()

        with pytest.raises(exceptions.OrcadoDifferenceOverLimitException):
            services.verify_total_sum(execucoes, execucoes_temp)
예제 #3
0
    def test_passes_when_empenhado_upper_limit_is_not_exceeded(self):
        percent_limit = Decimal(constants.EMPENHADO_DIFFERENCE_PERCENT_LIMIT)

        empenhado_sum = Decimal(100)
        mommy.make(Execucao,
                   orgao__id=SME_ORGAO_ID,
                   orcado_atualizado=10,
                   empenhado_liquido=empenhado_sum / 2,
                   _quantity=2)
        execucoes = Execucao.objects.all()

        empenhado_limit = empenhado_sum + (empenhado_sum * percent_limit) - 1
        mommy.make(ExecucaoTemp,
                   orgao_id=SME_ORGAO_ID,
                   orcado_atualizado=10,
                   empenhado_liquido=empenhado_limit / 2,
                   _quantity=2)
        execucoes_temp = ExecucaoTemp.objects.all()

        services.verify_total_sum(execucoes, execucoes_temp)
예제 #4
0
    def test_raise_exception_when_empenhado_upper_limit_is_exceeded(self):
        percent_limit = Decimal(constants.EMPENHADO_DIFFERENCE_PERCENT_LIMIT)

        empenhado_sum = Decimal(100)
        mommy.make(Execucao,
                   orgao__id=SME_ORGAO_ID,
                   orcado_atualizado=10,
                   empenhado_liquido=empenhado_sum / 2,
                   _quantity=2)
        execucoes = Execucao.objects.all()

        empenhado_over_limit = empenhado_sum + \
            (empenhado_sum * percent_limit) + 10
        mommy.make(ExecucaoTemp,
                   orgao_id=SME_ORGAO_ID,
                   orcado_atualizado=10,
                   empenhado_liquido=empenhado_over_limit / 2,
                   _quantity=2)
        execucoes_temp = ExecucaoTemp.objects.all()

        with pytest.raises(exceptions.EmpenhadoDifferenceOverLimitException):
            services.verify_total_sum(execucoes, execucoes_temp)