Código fonte de tests.integration.test_assemblyman_controller

import json
from unittest.mock import patch

from .utils import *

from legislei import controllers
from legislei.models.relatorio import Parlamentar

[documentos]class TestAssemblymanController(ControllerHelperTester):
[documentos] @patch("legislei.controllers.assemblyman_controller.obter_parlamentares") def test_parlamentares_casa_sucesso(self, mock_obter_parlamentares): mock_obter_parlamentares.return_value = [ Parlamentar(id='123', nome='ParlamentarTeste'), Parlamentar(id='12345', nome='Parlamentar2Teste') ] actual = self.app.get("/v1/parlamentares/BR2") actual_data = actual.data.decode('utf-8') self.assertEqual(actual.status_code, 200) self.assertIn("ParlamentarTeste", actual_data) self.assertIn("Parlamentar2Teste", actual_data) json.loads(actual_data)
[documentos] def test_parlamentares_casa_invalida(self): actual = self.app.get("/v1/parlamentares/BR3") actual_data = json.loads(actual.data.decode('utf-8')) self.assertEqual(actual.status_code, 400) self.assertEqual({"message": u"Id de casa legislativa inválido"}, actual_data)
[documentos] @patch("legislei.controllers.assemblyman_controller.obter_parlamentar") def test_parlamentares_casa_parlamentar_sucesso(self, mock_obter_parlamentar): mock_obter_parlamentar.return_value = Parlamentar(id='1', nome='Parlamentar') actual = self.app.get("/v1/parlamentares/BR2/1") actual_data = json.loads(actual.data.decode('utf-8')) self.assertEqual(actual.status_code, 200) self.assertEqual(actual_data["id"], "1") self.assertEqual(actual_data["nome"], "Parlamentar")
[documentos] @patch("legislei.controllers.assemblyman_controller.obter_parlamentar") def test_parlamentares_casa_parlamentar_id_parlamentar_invalido(self, mock_obter_parlamentar): mock_obter_parlamentar.return_value = None actual = self.app.get("/v1/parlamentares/BR2/99") actual_data = json.loads(actual.data.decode('utf-8')) self.assertEqual(actual.status_code, 422) self.assertEqual(actual_data, {"message": "Id de parlamentar inválido"})
[documentos] def test_parlamentares_casa_parlamentar_id_casa_invalido(self): actual = self.app.get("/v1/parlamentares/BR3/1") actual_data = json.loads(actual.data.decode('utf-8')) self.assertEqual(actual.status_code, 400) self.assertEqual(actual_data, {"message": "Id de casa legislativa inválido"})
[documentos] def test_parlamentares_casa_parlamentar_avaliacoes_sucesso(self): login_header = login_api(self.app, "test", "123") actual = self.app.get("/v1/parlamentares/BR1/123/avaliacoes", headers=login_header) actual_data = json.loads(actual.data.decode('utf-8')) self.assertEqual(actual.status_code, 200) self.assertIn("ParlamentarTeste", str(actual_data)) self.assertIn("Evento teste", str(actual_data))
[documentos] def test_parlamentares_casa_parlamentar_avaliacoes_sem_login(self): actual = self.app.get("/v1/parlamentares/BR1/123/avaliacoes") actual_data = json.loads(actual.data.decode('utf-8')) self.assertEqual(actual.status_code, 401) self.assertIn("message", actual_data)