def test_obter_minhas_inscricoes_nenhuma_inscricao(self): User(username='******', password='******', email='*****@*****.**').save() actual = Inscricao().obter_minhas_inscricoes('*****@*****.**') self.assertEqual(actual[0], []) self.assertEqual(actual[1], 7)
def post(self): try: Inscricao().nova_inscricao(request.json['casa'], request.json['parlamentar'], current_user.email) return {'message': 'Criada'}, 201 except InvalidModelId: return {'message': 'Id de casa legislativa inválido'}, 400
def test_obter_todas_inscricoes_para_processar_semana_de_mes(self): data_final = datetime(2019, 11, 2) self._prepare_tests_obter_todas_inscricoes_para_processar() actual = Inscricao().obter_todas_inscricoes_para_processar( data_final=data_final) self.assertEqual(actual, [self.user1, self.user2, self.user4])
def test_alterar_configs_invalida(self): User(username='******', password='******', email='*****@*****.**', inscricoes=Inscricoes(intervalo=7, parlamentares=[])).save() Inscricao().alterar_configs(30, '*****@*****.**') self.assertEqual( User.objects(username='******').first().inscricoes.intervalo, 7)
def test_nova_inscricao_primeira_inscricao(self, mock_obter_parlamentar): warnings.simplefilter("ignore") mock_obter_parlamentar.return_value = self.parlamentar1 User(username='******', password='******', email='*****@*****.**').save() Inscricao().nova_inscricao(self.parlamentar1.cargo, self.parlamentar1.id, '*****@*****.**') self.assertEqual( User.objects(username='******').first().inscricoes, Inscricoes(intervalo=7, parlamentares=[self.parlamentar1]))
def test_obter_minhas_inscricoes_com_inscricoes(self): inscricoes = Inscricoes( intervalo=14, parlamentares=[self.parlamentar1, self.parlamentar2]) User(username='******', password='******', email='*****@*****.**', inscricoes=inscricoes).save() actual = Inscricao().obter_minhas_inscricoes('*****@*****.**') self.assertEqual(actual[0], [self.parlamentar1, self.parlamentar2]) self.assertEqual(actual[1], 14)
def test_remover_inscricao(self): User(username='******', password='******', email='*****@*****.**', inscricoes=Inscricoes(intervalo=14, parlamentares=[self.parlamentar2])).save() Inscricao().remover_inscricao(self.parlamentar2.cargo, self.parlamentar2.id, '*****@*****.**') self.assertEqual( User.objects(username='******').first().inscricoes, Inscricoes(intervalo=14, parlamentares=[]))
def avaliacoes(): email = current_user.email parlamentares, intervalo = Inscricao().obter_minhas_inscricoes(email) try: cargo = request.args['parlamentarTipo'] parlamentar = request.args['parlamentar'] except KeyError: return render_template('avaliacoes_home.html', parlamentares=parlamentares, periodo=intervalo) parlamentar_dados, avaliacoes_dados, nota = Avaliacao().avaliacoes( cargo, parlamentar, email) try: parlamentar_dados = next(p for p in parlamentares if p.id == parlamentar) except StopIteration: pass return render_template('avaliacoes_parlamentar.html', parlamentar=parlamentar_dados, avaliacoes=avaliacoes_dados, nota=nota if nota != None else 0), 200
def delete(self, casa, parlamentar): if not check_if_house_exists(casa): return {'message': 'Id de casa legislativa inválido'}, 400 Inscricao().remover_inscricao(casa, parlamentar, current_user.email) return {'message': 'Inscrição deletada'}, 200
def put(self): Inscricao().alterar_configs(request.json["intervalo"], current_user.email) return {'message': 'Configurações de inscrições atualizadas'}
def get(self): parlamentares, intervalo = Inscricao().obter_minhas_inscricoes( current_user.email) parlamentares_dicts = [json.loads(x.to_json()) for x in parlamentares] return {'intervalo': intervalo, 'parlamentares': parlamentares_dicts}
def test_nova_inscricao_user_doesnt_exist(self): with self.assertRaises(UserDoesNotExist): Inscricao().nova_inscricao(self.parlamentar1.cargo, self.parlamentar1.id, '*****@*****.**')
def test_obter_minhas_inscricoes_user_doesnt_exist(self): with self.assertRaises(UserDoesNotExist): Inscricao().obter_minhas_inscricoes('*****@*****.**')