Example #1
0
    def test_adiciona_usuario(self):

        conn = self.__class__.connection
        cid = Cidade(conn)
        user = Usuario(conn)

        # Pega todas as cidades
        cids = cid.lista()
        oldUser = ('david', "*****@*****.**", "David Fogelman", cids[0][0])

        user.adiciona(*oldUser)

        # tenta adicionar duas vezes o passaro
        try:
            user.adiciona(*oldUser)
            self.fail('Nao deveria ter adicionado o mesmo passaro duas vezes.')
        except ValueError as e:
            pass

        id = user.acha(oldUser[0])
        self.assertIsNotNone(id)

        # Tenta achar um perigo inexistente.
        id = user.acha('Usuarium NonExistum')
        self.assertIsNone(id)
Example #2
0
    def test_remove_usu_tags(self):  # removendo usuario tag é remomvida
        conn = self.__class__.connection
        pst = Post(conn)
        cid = Cidade(conn)
        user = Usuario(conn)
        pas = Passaro(conn)

        # Pega todas as cidades
        cids = cid.lista()

        oldPst = ('Um novo passaro',
                  'Encontrei um passaro novo na minha caminhada @juju #sabiá',
                  'https://passarito.com')
        oldUser = ('david', "*****@*****.**", "David Fogelman", cids[0][0])

        oldUserju = ('juju', "*****@*****.**", "Julia Pessoa", cids[0][0])

        oldPas = ('sabia', 'saiazito sabioluns', 'sabii')

        user.adiciona(*oldUser)
        user.adiciona(*oldUserju)
        res = user.acha(oldUser[0])
        resju = user.acha(oldUserju[0])
        self.assertSequenceEqual(res, oldUser)
        self.assertSequenceEqual(resju, oldUserju)
        pas.adiciona(*oldPas)

        id = res[0]
        pst.adiciona(id, *oldPst)

        psts = pst.lista()
        self.assertTrue(any(elem in psts[0] for elem in oldPst))

        res = pst.acha_por_id(psts[0][0])
        self.assertSequenceEqual(res, psts[0])

        idPost = psts[0][0]
        dici_tags = pst.parser_post(oldPst[1])

        pst.cria_tags(dici_tags, idPost)

        tagpas = pst.lista_tags_passaro()
        self.assertTrue(any(elem in tagpas[0] for elem in dici_tags['#']))
        tagusu = pst.lista_tags_usuario()
        self.assertTrue(any(elem in tagusu[0] for elem in dici_tags['@']))

        user.remove(id)
        res = pst.lista()
        self.assertIsNone(res)
        tagsU = pst.acha_tags_por_PK_usuario(idPost)
        self.assertIsNone(tagsU)
        tagsP = pst.acha_tags_por_PK_passaro(idPost)
        self.assertIsNone(tagsP)
Example #3
0
    def test_remove_post(self):
        conn = self.__class__.connection
        pst = Post(conn)
        cid = Cidade(conn)
        user = Usuario(conn)

        # Pega todas as cidades
        cids = cid.lista()

        oldPst = ('Um novo passaro',
                  'Encontrei um passaro novo na minha caminhada',
                  'https://passarito.com')
        oldUser = ('david', "*****@*****.**", "David Fogelman", cids[0][0])

        user.adiciona(*oldUser)
        res = user.acha(oldUser[0])

        id = res[0]
        pst.adiciona(id, *oldPst)

        res = pst.lista()
        idPost = res[0][0]

        pst.remove(idPost)
        res = pst.lista()
        self.assertIsNone(res)
Example #4
0
    def test_adiciona_post(self):
        conn = self.__class__.connection
        pst = Post(conn)
        cid = Cidade(conn)
        user = Usuario(conn)

        # Pega todas as cidades
        cids = cid.lista()

        oldPst = ('Um novo passaro',
                  'Encontrei um passaro novo na minha caminhada',
                  'https://passarito.com')
        oldUser = ('david', "*****@*****.**", "David Fogelman", cids[0][0])

        user.adiciona(*oldUser)
        res = user.acha(oldUser[0])
        self.assertSequenceEqual(res, oldUser)

        id = res[0]

        pst.adiciona(id, *oldPst)

        psts = pst.lista()
        self.assertTrue(any(elem in psts[0] for elem in oldPst))

        res = pst.acha_por_id(psts[0][0])
        self.assertSequenceEqual(res, psts[0])

        idPost = psts[0][0]

        pst.remove(idPost)
        res = pst.lista()
        self.assertFalse(res)
Example #5
0
    def test_usuario_remove_preferencia_passaro(self):
        conn = self.__class__.connection
        pas = Passaro(conn)
        cid = Cidade(conn)
        user = Usuario(conn)

        # Pega todas as cidades
        cids = cid.lista()
        oldPas = ('Bentivinus Bolotoide', 'Bem-te-vi', 'Passarinho')
        oldUser = ('david', "*****@*****.**", "David Fogelman", cids[0][0])

        oldPref = (oldUser[0], oldPas[0])

        user.adiciona(*oldUser)
        res = user.acha(oldUser[0])
        self.assertSequenceEqual(res, oldUser)

        pas.adiciona(*oldPas)
        res = pas.lista()
        self.assertCountEqual(res, (oldPas, ))

        res = user.lista_pref(oldUser[0])
        self.assertFalse(res)

        user.adiciona_pref(*oldPref)
        res = user.lista_pref(oldUser[0])
        self.assertIsNotNone(res)
        self.assertSequenceEqual(res, (oldPref, ))
Example #6
0
    def test_lista_usuarios(self):
        conn = self.__class__.connection
        cid = Cidade(conn)
        user = Usuario(conn)
        # Pega todas as cidades
        cids = cid.lista()

        allUsers = [
            ('david', "*****@*****.**", "David Fogelman", cids[0][0]),
            ('david alias', "*****@*****.**", "David Pasaro", cids[0][0])
        ]
        # Verifica que ainda não tem pássaros no sistema.
        res = user.lista()
        self.assertFalse(res)

        # Adiciona alguns perigos.
        users_id = []
        for u in allUsers:
            user.adiciona(*u)
            users_id.append(user.acha(u[0]))

        # Verifica se os perigos foram adicionados corretamente.
        res = user.lista()
        self.assertCountEqual(res, (users_id))

        # Remove os perigos.
        for u in users_id:
            user.remove(u[0])

        # Verifica que todos os perigos foram removidos.
        res = user.lista()
        self.assertFalse(res)
Example #7
0
    def test_url_tag_ref_usr(self):
        conn = self.__class__.connection
        pst = Post(conn)
        cid = Cidade(conn)
        user = Usuario(conn)
        pas = Passaro(conn)
        busca = Busca(conn)

        # Pega todas as cidades
        cids = cid.lista()

        oldPst = ('Um novo passaro',
                  'Encontrei um passaro novo na minha caminhada @juju #sabia',
                  'https://passarito.com')
        oldPas = ('sabia', 'saiazito sabioluns', 'sabii')
        oldUser = ('david', "*****@*****.**", "David Fogelman", cids[0][0])

        oldUserju = ('juju', "*****@*****.**", "Julia Pessoa", cids[0][0])

        user.adiciona(*oldUser)
        user.adiciona(*oldUserju)
        res = user.acha(oldUser[0])
        resju = user.acha(oldUserju[0])
        pas.adiciona(*oldPas)

        id = res[0]
        pst.adiciona(id, *oldPst)

        psts = pst.lista()
        self.assertTrue(any(elem in psts[0] for elem in oldPst))

        res = pst.acha_por_id(psts[0][0])
        self.assertSequenceEqual(res, psts[0])

        idPost = psts[0][0]
        dici_tags = pst.parser_post(oldPst[1])

        pst.cria_tags(dici_tags, idPost)
        bus = busca.url_passaro()[0]
        self.assertIsNotNone(bus)
        self.assertSequenceEqual((oldPas[0], oldPst[-1]), bus)

        # Teste Ref
        self.assertIsNone(busca.ref_usuario(oldUser[0]))
        self.assertEqual(busca.ref_usuario(oldUserju[0])[0][0], oldUser[0])
Example #8
0
def get_id_usuario(usuario_id: str):
    usr = Usuario(connection)
    try:
        u = usr.acha(usuario_id)
        return {
            "username": u[0],
            "email": u[1],
            "nome": u[2],
            "idCidade": u[3]
        }
    except Exception as e:
        return {"error": "Não foi possivel listar usuarios"}
Example #9
0
    def test_adiciona_reacao(self):
        conn = self.__class__.connection

        joi = Joinha(conn)
        pst = Post(conn)
        cid = Cidade(conn)
        user = Usuario(conn)
        pas = Passaro(conn)

        # Pega todas as cidades
        cids = cid.lista()

        oldPst = ('Um novo passaro',
                  'Encontrei um passaro novo na minha caminhada @juju #sabia',
                  'https://passarito.com')
        oldPas = ('sabia', 'saiazito sabioluns', 'sabii')
        oldUser = ('david', "*****@*****.**", "David Fogelman", cids[0][0])

        oldUserju = ('juju', "*****@*****.**", "Julia Pessoa", cids[0][0])

        user.adiciona(*oldUser)
        res = user.lista()
        id = res[0][0]
        pas.adiciona(*oldPas)
        pst.adiciona(id, *oldPst)

        user.adiciona(*oldUserju)
        idJu = user.acha(oldUserju[0])[0]

        psts = pst.lista()
        res = pst.acha_por_id(psts[0][0])
        idPost = psts[0][0]
        dici_tags = pst.parser_post(oldPst[1])
        pst.cria_tags(dici_tags, idPost)

        joi.adiciona(idJu, idPost, 0)
        reac = joi.acha_reacao(idJu, idPost)[0]

        self.assertIsNotNone(reac)
        self.assertEqual(reac[0], 0)
Example #10
0
    def test_lista_posts(self):
        conn = self.__class__.connection
        pst = Post(conn)
        cid = Cidade(conn)
        user = Usuario(conn)
        busca = Busca(conn)

        # Pega todas as cidades
        cids = cid.lista()

        psts = [
            ('Um novo passaro', 'Encontrei um passaro novo na minha caminhada',
             'https://passarito.com'),
            ('Um novo passaro inédito',
             'Encontrei um pássaro inédito no meu cooper matinal',
             'https://pterodactilo.com')
        ]
        oldUser = ('david', "*****@*****.**", "David Fogelman", cids[0][0])

        user.adiciona(*oldUser)
        res = user.acha(oldUser[0])
        id = res[0]
        for p in psts:
            pst.adiciona(id, *p)
            time.sleep(1)

        res = pst.lista()
        posts_id = [p[0] for p in res]

        self.assertEqual(len(posts_id), len(psts))

        for p in posts_id:
            pst.remove(p)

        # Verifica que todos os perigos foram removidos.
        res = pst.lista()
        self.assertFalse(res)
        self.assertIsNotNone(busca.cron_rev(id))
        # Teste de ordem reversa
        self.assertEqual(busca.cron_rev(id)[0][1], psts[1][0])
Example #11
0
    def test_update_post(self):
        conn = self.__class__.connection
        pst = Post(conn)
        cid = Cidade(conn)
        user = Usuario(conn)

        # Pega todas as cidades
        cids = cid.lista()

        oldPst = ('Um novo passaro',
                  'Encontrei um passaro novo na minha caminhada',
                  'https://passarito.com')

        newPst = ('Um novo passaro inédito',
                  'Encontrei um pássaro inédito no meu cooper matinal',
                  'https://pterodactilo.com')
        oldUser = ('david', "*****@*****.**", "David Fogelman", cids[0][0])

        user.adiciona(*oldUser)
        res = user.acha(oldUser[0])

        id = res[0]
        pst.adiciona(id, *oldPst)

        psts = pst.lista()
        idPost = psts[0][0]

        pst.muda_titulo(idPost, newPst[0])
        pst.muda_texto(idPost, newPst[1])
        pst.muda_foto(idPost, newPst[2])

        res = pst.acha_por_id(idPost)

        self.assertTrue(any(elem in res for elem in newPst))

        res = pst.lista()

        pst.remove(idPost)
        res = pst.lista()
        self.assertIsNone(res)
Example #12
0
    def test_remove_usuario(self):

        conn = self.__class__.connection
        cid = Cidade(conn)
        user = Usuario(conn)

        # Pega todas as cidades
        cids = cid.lista()
        oldUser = ('david', "*****@*****.**", "David Fogelman", cids[0][0])

        user.adiciona(*oldUser)

        id = user.acha(oldUser[0])
        self.assertIsNotNone(id)

        # Tenta achar um perigo inexistente.
        res = user.lista()
        self.assertCountEqual(res, (id, ))

        user.remove(oldUser[0])

        res = user.lista()
        self.assertFalse(res)