|
|
@ -1,12 +1,10 @@ |
|
|
|
import pytest |
|
|
|
from django.core.urlresolvers import reverse |
|
|
|
from django.core.files.uploadedfile import SimpleUploadedFile |
|
|
|
from .views import AnularProtocoloAdmView |
|
|
|
from .forms import AnularProcoloAdmForm |
|
|
|
from .models import Protocolo |
|
|
|
from django.utils.translation import ugettext_lazy as _ |
|
|
|
from model_mommy import mommy |
|
|
|
|
|
|
|
from django.utils.translation import ugettext_lazy as _ |
|
|
|
from .forms import AnularProcoloAdmForm |
|
|
|
from .models import Protocolo |
|
|
|
|
|
|
|
|
|
|
|
@pytest.mark.django_db(transaction=False) |
|
|
@ -20,27 +18,44 @@ def test_form_anular_protocolo_inexistente(): |
|
|
|
form = AnularProcoloAdmForm({'numero': '1', |
|
|
|
'ano': '2016', |
|
|
|
'justificativa_anulacao': 'TESTE'}) |
|
|
|
assert form.is_valid() == False |
|
|
|
|
|
|
|
# Não usa o assert form.is_valid() == False por causa do PEP8 |
|
|
|
if form.is_valid(): |
|
|
|
pytest.xfail("Form deve ser inválido") |
|
|
|
assert form.errors['__all__'] == [_("Protocolo 1/2016 não existe")] |
|
|
|
|
|
|
|
|
|
|
|
@pytest.mark.django_db(transaction=False) |
|
|
|
def test_form_anular_protocolo_valido(): |
|
|
|
protocolo = mommy.make(Protocolo, numero='1', ano='2016', anulado=False) |
|
|
|
mommy.make(Protocolo, numero='1', ano='2016', anulado=False) |
|
|
|
form = AnularProcoloAdmForm({'numero': '1', |
|
|
|
'ano': '2016', |
|
|
|
'justificativa_anulacao': 'TESTE'}) |
|
|
|
if not form.is_valid(): |
|
|
|
pytest.xfail("Form deve ser válido") |
|
|
|
|
|
|
|
|
|
|
|
@pytest.mark.django_db(transaction=False) |
|
|
|
def test_form_anular_protocolo_anulado(): |
|
|
|
mommy.make(Protocolo, numero='1', ano='2016', anulado=True) |
|
|
|
form = AnularProcoloAdmForm({'numero': '1', |
|
|
|
'ano': '2016', |
|
|
|
'justificativa_anulacao': 'TESTE'}) |
|
|
|
assert form.is_valid() == True |
|
|
|
assert form.errors['__all__'] == \ |
|
|
|
[_("Protocolo 1/2016 já encontra-se anulado")] |
|
|
|
|
|
|
|
|
|
|
|
@pytest.mark.django_db(transaction=False) |
|
|
|
def test_form_anular_protocolo_campos_obrigatorios(): |
|
|
|
protocolo = mommy.make(Protocolo, numero='1', ano='2016', anulado=False) |
|
|
|
mommy.make(Protocolo, numero='1', ano='2016', anulado=False) |
|
|
|
|
|
|
|
# numero ausente |
|
|
|
form = AnularProcoloAdmForm({'numero': '', |
|
|
|
'ano': '2016', |
|
|
|
'justificativa_anulacao': 'TESTE'}) |
|
|
|
assert form.is_valid() == False |
|
|
|
if form.is_valid(): |
|
|
|
pytest.xfail("Form deve ser inválido") |
|
|
|
|
|
|
|
assert len(form.errors) == 1 |
|
|
|
assert form.errors['numero'] == [_('Este campo é obrigatório.')] |
|
|
|
|
|
|
@ -48,23 +63,19 @@ def test_form_anular_protocolo_campos_obrigatorios(): |
|
|
|
form = AnularProcoloAdmForm({'numero': '1', |
|
|
|
'ano': '', |
|
|
|
'justificativa_anulacao': 'TESTE'}) |
|
|
|
assert form.is_valid() == False |
|
|
|
if form.is_valid(): |
|
|
|
pytest.xfail("Form deve ser inválido") |
|
|
|
|
|
|
|
assert len(form.errors) == 1 |
|
|
|
assert form.errors['ano'] == [_('Este campo é obrigatório.')] |
|
|
|
|
|
|
|
# ano ausente |
|
|
|
# justificativa_anulacao ausente |
|
|
|
form = AnularProcoloAdmForm({'numero': '1', |
|
|
|
'ano': '2016', |
|
|
|
'justificativa_anulacao': ''}) |
|
|
|
assert form.is_valid() == False |
|
|
|
assert len(form.errors) == 1 |
|
|
|
assert form.errors['justificativa_anulacao'] == [_('Este campo é obrigatório.')] |
|
|
|
|
|
|
|
if form.is_valid(): |
|
|
|
pytest.xfail("Form deve ser inválido") |
|
|
|
|
|
|
|
@pytest.mark.django_db(transaction=False) |
|
|
|
def test_form_anular_protocolo_anulado(): |
|
|
|
protocolo = mommy.make(Protocolo, numero='1', ano='2016', anulado=True) |
|
|
|
form = AnularProcoloAdmForm({'numero': '1', |
|
|
|
'ano': '2016', |
|
|
|
'justificativa_anulacao': 'TESTE'}) |
|
|
|
assert form.errors['__all__'] == [_("Protocolo 1/2016 já encontra-se anulado")] |
|
|
|
assert len(form.errors) == 1 |
|
|
|
assert form.errors['justificativa_anulacao'] == \ |
|
|
|
[_('Este campo é obrigatório.')] |
|
|
|