class ModelCMSPCase(TestCase): """Caso de teste de métodos que usam objetos model no XmlCMSP""" def setUp(self): casa = GeradorCasaLegislativa().gerar_cmsp() self.xmlCMSP = XmlCMSP(casa, True) type(self).preencher_banco(casa) @staticmethod def preencher_banco(casa): partido = models.Partido(nome="PTest", numero="1") partido.save() parlamentar = models.Parlamentar( id_parlamentar="1", nome="Teste_vereador", partido=partido, casa_legislativa=casa) parlamentar.save() def test_vereador_sem_partido(self): xml_vereador = etree.fromstring( "<Vereador Partido=\"nao tem partido\"/>") partido = self.xmlCMSP.partido(xml_vereador) self.assertEquals( partido, models.Partido.objects.get(nome=models.SEM_PARTIDO)) def test_vereador_com_partido(self): xml_vereador = etree.fromstring("<Vereador Partido=\"PTest\"/>") partido = self.xmlCMSP.partido(xml_vereador) self.assertEquals(partido, models.Partido.objects.get(nome="PTest")) # def test_retorna_vereador_existente(self): # TODO: 2 parlamentares identicos podem ser cadastrados se 1 # ja existir no banco # xml_vereador = etree.fromstring("<Vereador IDParlamentar=\"1\" # NomeParlamentar=\"Teste_vereador\"/>") # parlamentar = self.xmlCMSP.votante(xml_vereador) # self.assertEquals(parlamentar,models.Parlamentar.objects.get( # nome = "Teste_vereador")) def test_salva_vereador_inexistente(self): xml_vereador = etree.fromstring("<Vereador IDParlamentar=\"999\" \ Nome=\"Nao_consta\" Partido=\"PN\"/>") parlamentar = self.xmlCMSP.vereador(xml_vereador) self.assertEquals( parlamentar, models.Parlamentar.objects.get(id_parlamentar=999))
class ModelCMSPCase(TestCase): """Caso de teste de métodos que usam objetos model no XmlCMSP""" def setUp(self): casa = GeradorCasaLegislativa().gerar_cmsp() self.xmlCMSP = XmlCMSP(casa) type(self).preencher_banco(casa) @staticmethod def preencher_banco(casa): partido = models.Partido(nome="PTest", numero="1") partido.save() parlamentar = models.Parlamentar(id_parlamentar="1", nome="Teste_vereador", partido=partido, casa_legislativa=casa) parlamentar.save() def test_vereador_sem_partido(self): xml_vereador = etree.fromstring( "<Vereador Partido=\"nao tem partido\"/>") partido = self.xmlCMSP.partido(xml_vereador) self.assertEquals(partido, models.Partido.objects.get(nome=models.SEM_PARTIDO)) def test_vereador_com_partido(self): xml_vereador = etree.fromstring("<Vereador Partido=\"PTest\"/>") partido = self.xmlCMSP.partido(xml_vereador) self.assertEquals(partido, models.Partido.objects.get(nome="PTest")) def test_retorna_vereador_existente(self): xml_vereador = etree.fromstring( "<Vereador IDParlamentar=\"2\" Nome=\"Seu Vereador\" Partido=\"PTest\"/>" ) parlamentar = self.xmlCMSP.vereador(xml_vereador) self.assertEquals(parlamentar.nome, 'Seu Vereador') self.assertEquals(parlamentar.partido.nome, 'PTest') self.assertEquals(parlamentar.id_parlamentar, '2') def test_salva_vereador_inexistente(self): xml_vereador = etree.fromstring("<Vereador IDParlamentar=\"999\" \ Nome=\"Nao_consta\" Partido=\"PN\"/>") parlamentar = self.xmlCMSP.vereador(xml_vereador) self.assertEquals(parlamentar, models.Parlamentar.objects.get(id_parlamentar=999))
class ModelCMSPCase(TestCase): """Caso de teste de métodos que usam objetos model no XmlCMSP""" def setUp(self): casa = GeradorCasaLegislativa().gerar_cmsp() self.xmlCMSP = XmlCMSP(casa) type(self).preencher_banco(casa) @staticmethod def preencher_banco(casa): partido = models.Partido(nome="PTest", numero="1") partido.save() parlamentar = models.Parlamentar( id_parlamentar="1", nome="Teste_vereador", partido=partido, casa_legislativa=casa) parlamentar.save() def test_vereador_sem_partido(self): xml_vereador = etree.fromstring( "<Vereador Partido=\"nao tem partido\"/>") partido = self.xmlCMSP.partido(xml_vereador) self.assertEqual( partido, models.Partido.objects.get(nome=models.SEM_PARTIDO)) def test_vereador_com_partido(self): xml_vereador = etree.fromstring("<Vereador Partido=\"PTest\"/>") partido = self.xmlCMSP.partido(xml_vereador) self.assertEqual(partido, models.Partido.objects.get(nome="PTest")) def test_retorna_vereador_existente(self): xml_vereador = etree.fromstring("<Vereador IDParlamentar=\"2\" Nome=\"Seu Vereador\" Partido=\"PTest\"/>") parlamentar = self.xmlCMSP.vereador(xml_vereador) self.assertEqual(parlamentar.nome, 'Seu Vereador') self.assertEqual(parlamentar.partido.nome, 'PTest') self.assertEqual(parlamentar.id_parlamentar, '2') def test_salva_vereador_inexistente(self): xml_vereador = etree.fromstring("<Vereador IDParlamentar=\"999\" \ Nome=\"Nao_consta\" Partido=\"PN\"/>") parlamentar = self.xmlCMSP.vereador(xml_vereador) self.assertEqual( parlamentar, models.Parlamentar.objects.get(id_parlamentar=999))
class EstaticosCMSPCase(TestCase): """Caso de teste de métodos Estáticos do XmlCMSP""" def setUp(self): casa = GeradorCasaLegislativa().gerar_cmsp() self.xmlCMSP = XmlCMSP(casa, True) def test_converte_data_valida(self): from django.utils.dateparse import parse_datetime data = self.xmlCMSP.converte_data("1/1/1000") self.assertEquals(data, parse_datetime("1000-1-1 0:0:0")) def test_converte_data_invalida(self): data = self.xmlCMSP.converte_data("1000") self.assertEquals(data, None) def test_prop_nome_valido(self): texto = "encontra Proposicoes como PL 1 /1000 no texto" pl = self.xmlCMSP.prop_nome(texto) self.assertEquals(pl, "PL 1 /1000") def test_prop_nome_invalido(self): texto = "n encontra proposicoes no texto" pl = self.xmlCMSP.prop_nome(texto) self.assertEquals(pl, None) def test_tipo_num_ano_de_prop_nome_valido(self): prop_nome = "PL 1 /1000" num_ano = self.xmlCMSP.tipo_num_anoDePropNome(prop_nome) self.assertEquals(num_ano, ("PL", "1", "1000")) def test_tipo_num_ano_de_prop_nome_invalido(self): prop_nome = "nao e proposicao valida" num_ano = self.xmlCMSP.tipo_num_anoDePropNome(prop_nome) self.assertEquals(num_ano, (None, None, None)) def test_voto_cmsp_mapeado(self): voto = "Sim" modelo_voto = self.xmlCMSP.voto_cmsp_to_model(voto) self.assertEquals(modelo_voto, models.SIM) def test_voto_cmsp_nao_mapeado(self): voto = "voto nao mapeado" modelo_voto = self.xmlCMSP.voto_cmsp_to_model(voto) self.assertEquals(modelo_voto, models.ABSTENCAO)
class EstaticosCMSPCase(TestCase): """Caso de teste de métodos Estáticos do XmlCMSP""" def setUp(self): casa = GeradorCasaLegislativa().gerar_cmsp() self.xmlCMSP = XmlCMSP(casa, True) def test_converte_data_valida(self): from django.utils.dateparse import parse_datetime data = self.xmlCMSP.converte_data("1/1/1000") self.assertEquals(data, parse_datetime("1000-1-1 0:0:0")) def test_converte_data_invalida(self): data = self.xmlCMSP.converte_data("1000") self.assertEquals(data, None) def test_prop_nome_valido(self): texto = "encontra Proposicoes como PL 1 /1000 no texto" pl = self.xmlCMSP.prop_nome(texto) self.assertEquals(pl, "PL 1/1000") def test_prop_nome_invalido(self): texto = "n encontra proposicoes no texto" pl = self.xmlCMSP.prop_nome(texto) self.assertEquals(pl, None) def test_tipo_num_ano_de_prop_nome_valido(self): prop_nome = "PL 1 /1000" num_ano = self.xmlCMSP.tipo_num_anoDePropNome(prop_nome) self.assertEquals(num_ano, ("PL", "1", "1000")) def test_tipo_num_ano_de_prop_nome_invalido(self): prop_nome = "nao e proposicao valida" num_ano = self.xmlCMSP.tipo_num_anoDePropNome(prop_nome) self.assertEquals(num_ano, (None, None, None)) def test_voto_cmsp_mapeado(self): voto = "Sim" modelo_voto = self.xmlCMSP.voto_cmsp_to_model(voto) self.assertEquals(modelo_voto, models.SIM) def test_voto_cmsp_nao_mapeado(self): voto = "voto nao mapeado" modelo_voto = self.xmlCMSP.voto_cmsp_to_model(voto) self.assertEquals(modelo_voto, models.ABSTENCAO)
def setUp(self): casa = GeradorCasaLegislativa().gerar_cmsp() self.xmlCMSP = XmlCMSP(casa, True)
def setUp(self): casa = GeradorCasaLegislativa().gerar_cmsp() self.xmlCMSP = XmlCMSP(casa, True) type(self).preencher_banco(casa)
def setUp(self): casa = GeradorCasaLegislativa().gerar_cmsp() self.xmlCMSP = XmlCMSP(casa) type(self).preencher_banco(casa)