Browse Source

Add test for models' __str__ (sanity check)

pull/6/head
Marcio Mazza 10 years ago
parent
commit
859aeb425a
  1. 4
      materia/models.py
  2. 6
      parlamentares/models.py
  3. 7
      pytest.ini
  4. 22
      sapl/test_general.py
  5. 8
      sessao/models.py

4
materia/models.py

@ -100,7 +100,7 @@ class AcompanhamentoMateria(models.Model): # AcompMateria
verbose_name_plural = _('Acompanhamentos de Matéria')
def __str__(self):
return self.materia
return str(self.materia) #FIXME
class Anexada(models.Model):
@ -221,7 +221,7 @@ class DocumentoAcessorio(models.Model):
def __str__(self):
return _('%(tipo)s - %(nome)s de %(data)s por %(autor)s') % {
'tipo': self.tipo, 'nome': self.nome, 'ano': self.data, 'autor': self.autor}
'tipo': self.tipo, 'nome': self.nome, 'data': self.data, 'autor': self.autor}
class MateriaAssunto(models.Model):

6
parlamentares/models.py

@ -50,7 +50,7 @@ class Coligacao(models.Model):
class Meta:
verbose_name = _('Coligação')
verbose_name_plural = _('Coligações')
def __str__(self):
return self.nome
@ -81,7 +81,7 @@ class ComposicaoColigacao(models.Model):
verbose_name_plural = ('Composição Coligações')
def __str__ (self):
return self.coligacao
return str(self.coligacao) # FIXME
class Municipio(models.Model): # Localidade
@ -283,7 +283,7 @@ class Mandato(models.Model):
def __str__ (self):
return _(u'%(parlamentar)s %(legislatura)s') % {
'parlamentar': self.parlamentar, 'legislatura': self.legislatura
}
}
class CargoMesa(models.Model):

7
pytest.ini

@ -1,2 +1,9 @@
[pytest]
DJANGO_SETTINGS_MODULE=sapl.settings
# REUSING DATABASE BY DEFAULT (as a performance optimization)
# http://pytest-django.readthedocs.org/en/latest/database.html#example-work-flow-with-reuse-db-and-create-db
#
# Run "py.test --create-db" if you need to recreate the database
#
addopts = --reuse-db

22
sapl/test_general.py

@ -0,0 +1,22 @@
# -*- coding: utf-8 -*-
import pytest
from model_mommy import mommy
from legacy.migration import appconfs
pytestmark = pytest.mark.django_db
def test_str_sanity():
# this simply a sanity check
# __str__ semantics is not considered and should be tested separetely
for app in appconfs:
for model in app.get_models():
obj = mommy.prepare(model)
try:
str(obj)
except Exception as exc:
msg = '%s.%s.__str__ has is broken.' % (
model.__module__, model.__name__)
raise AssertionError(msg, exc) from exc

8
sessao/models.py

@ -163,7 +163,7 @@ class PresencaOrdemDia(models.Model): # OrdemDiaPresenca
verbose_name_plural = _('Presenças da Ordem do Dia')
def __str__(self):
return self.parlamentar
return str(self.parlamentar) # FIXME
class TipoResultadoVotacao(models.Model):
@ -191,7 +191,7 @@ class RegistroVotacao(models.Model):
verbose_name_plural = _('Votações')
def __str__(self):
return self.materia # XXX ?
return str(self.materia) # FIXME
class VotoParlamentar(models.Model): # RegistroVotacaoParlamentar
@ -205,7 +205,7 @@ class VotoParlamentar(models.Model): # RegistroVotacaoParlamentar
verbose_name_plural = _('Registros de Votações de Parlamentares')
def __str__(self):
return self.parlamentar # XXX ?
return str(self.parlamentar) # FIXME
class SessaoPlenariaPresenca(models.Model):
@ -218,4 +218,4 @@ class SessaoPlenariaPresenca(models.Model):
verbose_name_plural = _('Presenças em Sessões Plenárias')
def __str__(self):
return self.parlamentar # XXX ?
return str(self.parlamentar) # FIXME

Loading…
Cancel
Save