Exemple #1
0
    def get(self):
        """Get heroes"""
        try:
            # Fazendo a consulta no banco de dados
            heroes = Hero.get_heroes(request.args.get('cursor'))

            # Montando a resposta, por enquanto iremos deixar o cursor vazio
            response = {
                'cursor': None,
                'heroes': []
            }
            # Vamos percorer os herois e transformar em json
            for hero in heroes:
                response['heroes'].append(hero.to_dict())

            # Adicionando o cursor no resultado da consulta
            if len(response['heroes']) == 16:
                response['cursor'] = response['heroes'][-1]['id']

            return response

        except Exception as error:
            return {
                       'message': 'Error on get heroes',
                       'details': str(error)
                   }, 500
Exemple #2
0
    def test_get_heroes(self):
        """Test get heroes"""
        # Aqui vamos fazer um loop e criar 20 herois
        for index in range(1, 21):
            self.create_hero('Hero {0}'.format(index), 'marvel')

        # Chamando o metodo para obter os herois
        heroes = Hero.get_heroes()
        # Percorrendo todos os herois e transformando eles em dict(json)
        heroes_dict = [hero.to_dict() for hero in heroes]
        # Consultando a quantidade de item que retornou
        self.assertEqual(len(heroes_dict), 16)
        for hero in heroes_dict:
            self.assertTrue(hero['name'].startswith('Hero'))