コード例 #1
0
    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)
コード例 #2
0
 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
コード例 #3
0
    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])
コード例 #4
0
    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)
コード例 #5
0
    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]))
コード例 #6
0
    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)
コード例 #7
0
    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=[]))
コード例 #8
0
ファイル: app.py プロジェクト: brosquinha/legislei
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
コード例 #9
0
 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
コード例 #10
0
 def put(self):
     Inscricao().alterar_configs(request.json["intervalo"],
                                 current_user.email)
     return {'message': 'Configurações de inscrições atualizadas'}
コード例 #11
0
 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}
コード例 #12
0
 def test_nova_inscricao_user_doesnt_exist(self):
     with self.assertRaises(UserDoesNotExist):
         Inscricao().nova_inscricao(self.parlamentar1.cargo,
                                    self.parlamentar1.id, '*****@*****.**')
コード例 #13
0
 def test_obter_minhas_inscricoes_user_doesnt_exist(self):
     with self.assertRaises(UserDoesNotExist):
         Inscricao().obter_minhas_inscricoes('*****@*****.**')