Browse Source

Adiciona testes iniciais em Anular Protocolo

pull/285/head
Edward Ribeiro 9 years ago
parent
commit
89e7b3e38b
  1. 2
      protocoloadm/forms.py
  2. 70
      protocoloadm/test_protocoloadm.py

2
protocoloadm/forms.py

@ -162,10 +162,8 @@ class AnularProcoloAdmForm(ModelForm):
# (e ele vai falhar pq numero e ano são obrigatórios)
if not numero or not ano:
return
try:
protocolo = Protocolo.objects.get(numero=numero, ano=ano)
if protocolo.anulado:
raise forms.ValidationError(
_("Protocolo %s/%s já encontra-se anulado")

70
protocoloadm/test_protocoloadm.py

@ -0,0 +1,70 @@
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 model_mommy import mommy
from django.utils.translation import ugettext_lazy as _
@pytest.mark.django_db(transaction=False)
def test_anular_protocolo_acessivel(client):
response = client.get(reverse('anular_protocolo'))
assert response.status_code == 200
@pytest.mark.django_db(transaction=False)
def test_form_anular_protocolo_inexistente():
form = AnularProcoloAdmForm({'numero': '1',
'ano': '2016',
'justificativa_anulacao': 'TESTE'})
assert form.is_valid() == False
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)
form = AnularProcoloAdmForm({'numero': '1',
'ano': '2016',
'justificativa_anulacao': 'TESTE'})
assert form.is_valid() == True
@pytest.mark.django_db(transaction=False)
def test_form_anular_protocolo_campos_obrigatorios():
protocolo = mommy.make(Protocolo, numero='1', ano='2016', anulado=False)
# numero ausente
form = AnularProcoloAdmForm({'numero': '',
'ano': '2016',
'justificativa_anulacao': 'TESTE'})
assert form.is_valid() == False
assert len(form.errors) == 1
assert form.errors['numero'] == [_('Este campo é obrigatório.')]
# ano ausente
form = AnularProcoloAdmForm({'numero': '1',
'ano': '',
'justificativa_anulacao': 'TESTE'})
assert form.is_valid() == False
assert len(form.errors) == 1
assert form.errors['ano'] == [_('Este campo é obrigatório.')]
# ano 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.')]
@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")]
Loading…
Cancel
Save