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)
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)
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, ))
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)
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)
def post_usuario(item: usuarioObj): usr = Usuario(connection) try: usr.adiciona(item.username, item.email, item.nome, item.idCidade) except Exception as e: print(e) return {"error": "Não foi possivel adicionar usuário"} return {}
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)
def test_adiciona_busca(self): conn = self.__class__.connection pst = Post(conn) cid = Cidade(conn) user = Usuario(conn) vis = Visualizacao(conn) aces = Acesso(conn) busca = Busca(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]) newUser = ('david_test', "*****@*****.**", "David Fogelman", cids[0][0]) user.adiciona(*oldUser) id = oldUser[0] user.adiciona(*newUser) idNew = newUser[0] pst.adiciona(id, *oldPst) psts = pst.lista() idPost = psts[0][0] aces.adiciona('127.0.0.1', 'Chrome', 'Android') res = aces.lista() idAcesso = res[0][0] oldVis = (idAcesso, idPost, idNew) vis.adiciona(*oldVis) time.sleep(2) newVis = (idAcesso, idPost, id) vis.adiciona(*newVis) time.sleep(1) vis.adiciona(*newVis) viss = vis.lista() self.assertTrue(any(elem in viss[0] for elem in oldVis)) bus = busca.mais_visualizador() self.assertIsNotNone(bus) self.assertSequenceEqual(bus, (oldUser[0], 2)) cru = busca.tabela_cruz()[0] self.assertIsNotNone(cru) self.assertSequenceEqual(cru, ('Android', 'Chrome', 1))
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])
def test_adiciona_vizualizacao(self): conn = self.__class__.connection pst = Post(conn) cid = Cidade(conn) user = Usuario(conn) vis = Visualizacao(conn) aces = Acesso(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) id = oldUser[0] pst.adiciona(id, *oldPst) psts = pst.lista() self.assertTrue(any(elem in psts[0] for elem in oldPst)) idPost = psts[0][0] aces.adiciona('127.0.0.1', 'Chrome', 'Android') res = aces.lista() idAcesso = res[0][0] oldVis = (idAcesso, idPost, id) vis.adiciona(*oldVis) viss = vis.lista() self.assertTrue(any(elem in viss[0] for elem in oldVis)) # DELETA POST pst.remove(idPost) res = pst.lista() self.assertFalse(res) # TESTA TRIGGER DE POST viss = vis.lista() self.assertFalse(viss) acess = aces.lista() self.assertFalse(acess)
def test_busca_mais_pop(self): conn = self.__class__.connection pst = Post(conn) cid = Cidade(conn) user = Usuario(conn) pas = Passaro(conn) aces = Acesso(conn) vis = Visualizacao(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) id = oldUser[0] idJu = oldUserju[0] pst.adiciona(id, *oldPst) pst.adiciona(idJu, *oldPst) psts = pst.lista() res = pst.acha_por_id(psts[0][0]) aces.adiciona('127.0.0.1', 'Chrome', 'Android') res = aces.lista() idAcesso = res[0][0] oldVis = [(idAcesso, psts[0][0], idJu), (idAcesso, psts[0][0], idJu), (idAcesso, psts[0][0], idJu), (idAcesso, psts[1][0], id), (idAcesso, psts[1][0], id)] for v in oldVis: vis.adiciona(*v) time.sleep(1)
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)
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])
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)
def test_update_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]) newUser = ('david', "*****@*****.**", "David Pasaro", cids[0][0]) user.adiciona(*oldUser) user.muda_email(newUser[0], newUser[1]) user.muda_nome(newUser[0], newUser[2]) user.muda_cidade(newUser[0], newUser[3]) res = user.lista() self.assertSequenceEqual(res, (newUser, )) user.remove(newUser[0]) res = user.lista() self.assertFalse(res)
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)