def add_post(item: postObj): post = Post(connection) try: id = post.adiciona(item.user_id, item.titulo, item.texto, item.url_foto) dici_tags = post.parser_post(item.texto) post.cria_tags(dici_tags, id) return {} except Exception as e: print(e) return {"error": "Não foi possivel adicionar post"}
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 update_posts(post_id: str, item: postUpdateObj): post = Post(connection) try: if item.titulo: post.muda_titulo(post_id, item.titulo) if item.texto: dici_tags = post.parser_post(item.texto) post.muda_texto(post_id, item.texto) post.cria_tags(dici_tags, post_id) if item.url_foto: post.muda_foto(post_id, item.url_foto) except Exception as e: return {"error": "Não foi possivel realizar update posts"} return {}
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_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)