Commit 74a34fc7 authored by Jérémie Passerat's avatar Jérémie Passerat

Tests note ok

parent f2868d89
...@@ -604,6 +604,7 @@ class noter_contenu(Resource): ...@@ -604,6 +604,7 @@ class noter_contenu(Resource):
@contenus.doc(params={'id_contenu': "l'id du contenu déja noté"}) @contenus.doc(params={'id_contenu': "l'id du contenu déja noté"})
@contenus.doc(params={'version': "la version du contenu concernée par la note "}) @contenus.doc(params={'version': "la version du contenu concernée par la note "})
@contenus.doc(params={'auteur': "l'auteur de la note"}) @contenus.doc(params={'auteur': "l'auteur de la note"})
@contenus.doc(description="recuperer la note donnée par un auteur à un contenu")
class RecupererNoteDonneAUnContenu(Resource): class RecupererNoteDonneAUnContenu(Resource):
@contenus.response(200, "note du contenu") @contenus.response(200, "note du contenu")
@jwt_required() @jwt_required()
...@@ -612,6 +613,17 @@ class RecupererNoteDonneAUnContenu(Resource): ...@@ -612,6 +613,17 @@ class RecupererNoteDonneAUnContenu(Resource):
return str(ContenuDao().recupererNoteContenu(id_contenu["$oid"], request.args.get("version"), return str(ContenuDao().recupererNoteContenu(id_contenu["$oid"], request.args.get("version"),
request.args.get("auteur"))), 200 request.args.get("auteur"))), 200
@contenus.route("/recupererNoteGlobale")
@contenus.doc(params={'id_contenu': "l'id du contenu "})
@contenus.doc(params={'version': "la version du contenu concernée par la note "})
@contenus.doc(description="recuperer la note globale d'un contenu (dans une version donnée")
class RecupererNoteDonneAUnContenu(Resource):
@contenus.response(200, "note du contenu")
@jwt_required()
def get(self):
id_contenu = json.loads(request.args.get("id_contenu"))
return str(ContenuDao().recupererNoteGlobaleContenu(id_contenu["$oid"], request.args.get("version"))), 200
## récupérer le texte de la version en cours du contenu ## récupérer le texte de la version en cours du contenu
@contenus.route("/getTexteContenu/<id_json>") @contenus.route("/getTexteContenu/<id_json>")
......
...@@ -218,6 +218,8 @@ class ContenuDao: ...@@ -218,6 +218,8 @@ class ContenuDao:
def supprimer_contenu(self, id_contenu): def supprimer_contenu(self, id_contenu):
import shutil import shutil
if self.existe_en_tiers(id_contenu) != 0: if self.existe_en_tiers(id_contenu) != 0:
self.dissocier_contenu(id_contenu) self.dissocier_contenu(id_contenu)
...@@ -234,11 +236,13 @@ class ContenuDao: ...@@ -234,11 +236,13 @@ class ContenuDao:
# @param la note associee au contenu # @param la note associee au contenu
def supprimer_tiers(self, id_tiers, auteur, version, note): def supprimer_tiers(self, id_tiers, auteur, version, note):
# on distingue le cas ou une note a été donnée ou non # on distingue le cas ou une note a été donnée ou non
if note == "-": if note == "-":
self.base_donnees.utilisateur.update({"nom": auteur}, self.base_donnees.utilisateur.update({"nom": auteur},
{"$pull": { {"$pull": {
"tiers": [{"contenu": ObjectId(id_tiers)}, {"version": version}]}}) "tiers": [{"contenu": ObjectId(id_tiers)}, {"version": version}]}})
else: else:
self.base_donnees.utilisateur.update({"nom": auteur}, self.base_donnees.utilisateur.update({"nom": auteur},
{"$pull": { {"$pull": {
...@@ -630,12 +634,32 @@ class ContenuDao: ...@@ -630,12 +634,32 @@ class ContenuDao:
# @param version la version du contenu notée # @param version la version du contenu notée
# @param auteur l'auteur qui met la note # @param auteur l'auteur qui met la note
def recupererNoteContenu(self, id_contenu, version, auteur): def recupererNoteContenu(self, id_contenu, version, auteur):
if type(id_contenu) == str:
id_contenu = ObjectId(id_contenu)
if type(version) == str:
version = int(version)
contenus_tiers = self.base_donnees.utilisateur.find_one({"nom": auteur})["tiers"] contenus_tiers = self.base_donnees.utilisateur.find_one({"nom": auteur})["tiers"]
for contenu in contenus_tiers: for contenu in contenus_tiers:
if len(contenu) == 3 and contenu[0]["contenu"] == id_contenu and contenu[1]["version"] == version: if len(contenu) == 3 and contenu[0]["contenu"] == id_contenu and contenu[1]["version"] == version:
return json.dumps(contenu[2]["note"]) return json.dumps(contenu[2]["note"])
return '-' return '-'
## Fonction permettant de récupérer une note globale pour une version d'un contenu
# @param id_contenu l'id du contenu concerné
# @param version la version du contenu notée
def recupererNoteGlobaleContenu(self, id_contenu, version):
if int(version) == self.get_version_courante(id_contenu):
return self.base_donnees.contenu.find_one({"_id": ObjectId(id_contenu)})["versionEnCours"]["note"] \
/ self.base_donnees.contenu.find_one({"_id": ObjectId(id_contenu)})["versionEnCours"]["nbreNotes"]
else:
historique = self.base_donnees.contenu.find_one({"_id": ObjectId(id_contenu)})["historique"]
return "popapopapa"
## Fonction permettant de changer la moyenne d'une version d'un contenu à l'insertion d'une nouvelle note ## Fonction permettant de changer la moyenne d'une version d'un contenu à l'insertion d'une nouvelle note
# @param id_contenu l'id du contenu concerné # @param id_contenu l'id du contenu concerné
# @param version la version du contenu notée # @param version la version du contenu notée
......
# from testUtils import * from testUtils import *
#
# #
# def test_contenu(client): # def test_contenu(client):
# login = creerUtilisateurRandom(client) # login = creerUtilisateurRandom(client)
# id = creerContenuRandom(client, login) # id = creerContenuRandom(client, login)
# #
#
# # get contenu par id # # get contenu par id
# rv = client.get("/contenus/getContenu/" + json.dumps(id), headers=get_headers(client)) # rv = client.get("/contenus/getContenu/" + json.dumps(id), headers=get_headers(client))
# assert rv.status_code == 200 # assert rv.status_code == 200
...@@ -61,7 +61,6 @@ ...@@ -61,7 +61,6 @@
# # on lui assigne un contenu # # on lui assigne un contenu
# id = creerContenuRandom(client, login) # id = creerContenuRandom(client, login)
# #
#
# # on créée un second utilisateur quelconque et on lui donne le contenu ci dessus dans ses tiers # # on créée un second utilisateur quelconque et on lui donne le contenu ci dessus dans ses tiers
# loginDeux = creerUtilisateurRandom(client) # loginDeux = creerUtilisateurRandom(client)
# data = {"id_tiers": json.dumps(id), "auteur": loginDeux, "version": 1} # data = {"id_tiers": json.dumps(id), "auteur": loginDeux, "version": 1}
...@@ -118,3 +117,73 @@ ...@@ -118,3 +117,73 @@
# supprimerUtilisateur(client, login) # supprimerUtilisateur(client, login)
# supprimerUtilisateur(client, loginDeux) # supprimerUtilisateur(client, loginDeux)
# supprimerUtilisateur(client, loginTrois) # supprimerUtilisateur(client, loginTrois)
def test_notation_contenu(client):
# on créée un utilisateur quelconque
login = creerUtilisateurRandom(client)
# on lui assigne un contenu
id = creerContenuRandom(client, login)
# on créée un second utilisateur quelconque et on lui donne le contenu ci dessus dans ses tiers
loginDeux = creerUtilisateurRandom(client)
data = {"id_tiers": json.dumps(id), "auteur": loginDeux, "version": 1}
rv = client.patch("/contenus/ajouterTiers", json=data, headers=get_headers(client))
assert rv.status_code == 201
# login2 note le contenu
data = {"auteur": loginDeux, "id_contenu": json.dumps(id), "version": 1, "note": 4}
rv = client.patch("/contenus/noterContenu", json=data, headers=get_headers(client))
assert rv.status_code == 200
# pour essai, on récupère la note juste mise
rv = client.get("/contenus/recupererNote?id_contenu=" + json.dumps(id) + "&version=1&auteur=" + loginDeux,
headers=get_headers(client))
assert rv.status_code == 200
# la note ressort en caracteres et non en entier
assert json.loads(rv.data) == '4'
# on teste la note globale du contenu
rv = client.get("/contenus/recupererNoteGlobale?id_contenu=" + json.dumps(id) + "&version=1",
headers=get_headers(client))
assert rv.status_code == 200
print("popapopapa : ", json.loads(rv.data))
assert json.loads(rv.data) == '4.0'
# un troisieme utilisateur note
# login2 note le contenu
loginTrois = creerUtilisateurRandom(client)
data = {"auteur": loginTrois, "id_contenu": json.dumps(id), "version": 1, "note": 3}
rv = client.patch("/contenus/noterContenu", json=data, headers=get_headers(client))
assert rv.status_code == 200
# pour essai, on récupère la note juste mise
rv = client.get("/contenus/recupererNote?id_contenu=" + json.dumps(id) + "&version=1&auteur=" + loginTrois,
headers=get_headers(client))
assert rv.status_code == 200
# la note ressort en caracteres et non en entier
assert json.loads(rv.data) == '3'
# on teste la note globale du contenu
rv = client.get("/contenus/recupererNoteGlobale?id_contenu=" + json.dumps(id) + "&version=1",
headers=get_headers(client))
assert rv.status_code == 200
print("popapopapa : ", json.loads(rv.data))
assert json.loads(rv.data) == '3.5'
# on supprime le tiers & le contenu
rv = client.delete("/contenus/deleteTiers?id_tiers=" + json.dumps(id) + "&auteur=" + loginDeux + "&note=4",
headers=get_headers(client))
assert rv.status_code == 200
# on supprime le tiers & le contenu
rv = client.delete("/contenus/deleteTiers?id_tiers=" + json.dumps(id) + "&auteur=" + loginTrois + "&note=3",
headers=get_headers(client))
assert rv.status_code == 200
rv = client.delete("/contenus/deletePerso/" + json.dumps(id), headers=get_headers(client))
assert rv.status_code == 200
# et les trois utilisateurs
supprimerUtilisateur(client, login)
supprimerUtilisateur(client, loginDeux)
supprimerUtilisateur(client, loginTrois)
from testUtils import * # from testUtils import *
from test_flask_en_cours import * # from test_flask_en_cours import *
#
#
# def test_creer_demande_publication_acceptee(client): # # def test_creer_demande_publication_acceptee(client):
# # # 1. login créée un contenu
# # login = creerUtilisateurRandom(client)
# # id = creerContenuRandom(client, login)
# #
# # # 2. login2 le met dans ses tiers
# # loginDeux = creerUtilisateurRandom(client)
# # data = {"id_tiers": json.dumps(id), "auteur": loginDeux, "version": 1}
# # rv = client.patch("/contenus/ajouterTiers", json=data, headers=get_headers(client))
# # assert rv.status_code == 201
# #
# # # 3. login2 modifie son contenu tiers
# # data = {"auteur": loginDeux, "id_contenu": json.dumps(id), "provenance": "perso", "version": 1}
# # # création d'un contenu en_cours
# # rv = client.post("/en_cours/newEnCours", json=data, headers=get_headers(client))
# # assert rv.status_code == 201
# # id_en_cours = json.loads(rv.data)["_id"]
# #
# # # 3. et y ajoute un nouveau titre
# # data = {"titre": "nouveauTitreContenu", "id_contenu_en_cours": json.dumps(id_en_cours)}
# # rv = client.patch("/en_cours/changerTitre", json=data, headers=get_headers(client))
# # assert rv.status_code == 201
# #
# # # loginDeux fait une demande de publication sur le contenu en cours qui vient d'être créé
# # data = {"id_contenu": json.dumps(id), "id_contenu_en_cours": json.dumps(id_en_cours), "auteur_en_cours": loginDeux,
# # "version": 1}
# # rv = client.post("/demande_pub/demandePublication", json=data, headers=get_headers(client))
# # assert rv.status_code == 201
# # id_publication = json.loads(rv.data)["_id"]
# #
# # # On controle les demandes de publication recues de login
# # rv = client.get("/demande_pub/demandePublication/" + login + "/False", headers=get_headers(client))
# # assert rv.status_code == 200
# # assert len(json.loads(rv.data)) == 1
# #
# # # On contrôle les demandes de publication proposées de loginDeux
# # rv = client.get("/demande_pub/demandePublication/" + loginDeux + "/True", headers=get_headers(client))
# # assert rv.status_code == 200
# # assert len(json.loads(rv.data)) == 1
# #
# # # Charles accepte la demande de publication
# # data = {"id_publication": json.dumps(id_publication), "reponse": 'o', "auteur": loginDeux}
# # rv = client.patch("/contenus/gererDemandePub", json=data, headers=get_headers(client))
# # assert rv.status_code == 200
# #
# # # On supprime le tiers chez LoginDeux
# # rv = client.delete("/contenus/deleteTiers?id_tiers=" + json.dumps(id) + "&auteur=" + loginDeux + "&note=-",
# # headers=get_headers(client))
# # assert rv.status_code == 200
# #
# # supprimer_demande_publication(client, id, id_publication)
# # supprimerUtilisateur(client, login)
# # supprimerUtilisateur(client, loginDeux)
#
#
# def test_creer_demande_publication_refusee_creation_en_cours_refuse(client):
# # 1. login créée un contenu # # 1. login créée un contenu
# login = creerUtilisateurRandom(client) # login = creerUtilisateurRandom(client)
# id = creerContenuRandom(client, login) # id = creerContenuRandom(client, login)
# #
# print("id test_creer_demande_publication_refusee_creation_en_cours_refuse : ", id)
#
# # 2. login2 le met dans ses tiers # # 2. login2 le met dans ses tiers
# loginDeux = creerUtilisateurRandom(client) # loginDeux = creerUtilisateurRandom(client)
# data = {"id_tiers": json.dumps(id), "auteur": loginDeux, "version": 1} # data = {"id_tiers": json.dumps(id), "auteur": loginDeux, "version": 1}
...@@ -42,173 +99,116 @@ from test_flask_en_cours import * ...@@ -42,173 +99,116 @@ from test_flask_en_cours import *
# assert rv.status_code == 200 # assert rv.status_code == 200
# assert len(json.loads(rv.data)) == 1 # assert len(json.loads(rv.data)) == 1
# #
# # Charles accepte la demande de publication # # Charles refuse la demande de publication
# data = {"id_publication": json.dumps(id_publication), "reponse": 'o', "auteur": loginDeux} # data = {"id_publication": json.dumps(id_publication), "reponse": 'n', "auteur": login}
# rv = client.patch("/contenus/gererDemandePub", json=data, headers=get_headers(client)) # rv = client.patch("/contenus/gererDemandePub", json=data, headers=get_headers(client))
# assert rv.status_code == 200 # assert rv.status_code == 200
# #
# # Jacques créée un en-cours refuse
# data = {"id_contenu_en_cours": json.dumps(id_en_cours)}
# rv = client.patch("/en_cours/newEnCoursRefuse", json=data, headers=get_headers(client))
# assert rv.status_code == 201
#
# rv = client.delete("/en_cours/supprimerEnCoursParId/" + json.dumps(id_en_cours), headers=get_headers(client))
# assert rv.status_code == 200
#
# # On supprime le tiers chez LoginDeux # # On supprime le tiers chez LoginDeux
# rv = client.delete("/contenus/deleteTiers?id_tiers=" + json.dumps(id) + "&auteur=" + loginDeux + "&note=-", # rv = client.delete("/contenus/deleteTiers?id_tiers=" + json.dumps(id) + "&auteur=" + loginDeux + "&note=-",
# headers=get_headers(client)) # headers=get_headers(client))
# assert rv.status_code == 200 # assert rv.status_code == 200
# #
# supprimer_demande_publication(client, id, id_publication) # supprimer_demande_publication(client, id, id_publication)
#
# supprimerUtilisateur(client, login) # supprimerUtilisateur(client, login)
# supprimerUtilisateur(client, loginDeux) # supprimerUtilisateur(client, loginDeux)
#
#
def test_creer_demande_publication_refusee_creation_en_cours_refuse(client): # def test_creer_demande_publication_refusee_creation_nouveau_contenu(client):
# 1. login créée un contenu # # 1. login créée un contenu
login = creerUtilisateurRandom(client) # login = creerUtilisateurRandom(client)
id = creerContenuRandom(client, login) # id = creerContenuRandom(client, login)
#
print("id test_creer_demande_publication_refusee_creation_en_cours_refuse : ", id) # print("id test_creer_demande_publication_refusee_creation_nouveau_contenu : ", id)
#
# 2. login2 le met dans ses tiers # # 2. login2 le met dans ses tiers
loginDeux = creerUtilisateurRandom(client) # loginDeux = creerUtilisateurRandom(client)
data = {"id_tiers": json.dumps(id), "auteur": loginDeux, "version": 1} # data = {"id_tiers": json.dumps(id), "auteur": loginDeux, "version": 1}
rv = client.patch("/contenus/ajouterTiers", json=data, headers=get_headers(client)) # rv = client.patch("/contenus/ajouterTiers", json=data, headers=get_headers(client))
assert rv.status_code == 201 # assert rv.status_code == 201
#
# 3. login2 modifie son contenu tiers # # 3. login2 modifie son contenu tiers
data = {"auteur": loginDeux, "id_contenu": json.dumps(id), "provenance": "perso", "version": 1} # data = {"auteur": loginDeux, "id_contenu": json.dumps(id), "provenance": "perso", "version": 1}
# création d'un contenu en_cours # # création d'un contenu en_cours
rv = client.post("/en_cours/newEnCours", json=data, headers=get_headers(client)) # rv = client.post("/en_cours/newEnCours", json=data, headers=get_headers(client))
assert rv.status_code == 201 # assert rv.status_code == 201
id_en_cours = json.loads(rv.data)["_id"] # id_en_cours = json.loads(rv.data)["_id"]
#
# 3. et y ajoute un nouveau titre # # 3. et y ajoute un nouveau titre
data = {"titre": "nouveauTitreContenu", "id_contenu_en_cours": json.dumps(id_en_cours)} # data = {"titre": "nouveauTitreContenu", "id_contenu_en_cours": json.dumps(id_en_cours)}
rv = client.patch("/en_cours/changerTitre", json=data, headers=get_headers(client)) # rv = client.patch("/en_cours/changerTitre", json=data, headers=get_headers(client))
assert rv.status_code == 201 # assert rv.status_code == 201
#
# loginDeux fait une demande de publication sur le contenu en cours qui vient d'être créé # # loginDeux fait une demande de publication sur le contenu en cours qui vient d'être créé
data = {"id_contenu": json.dumps(id), "id_contenu_en_cours": json.dumps(id_en_cours), "auteur_en_cours": loginDeux, # data = {"id_contenu": json.dumps(id), "id_contenu_en_cours": json.dumps(id_en_cours), "auteur_en_cours": loginDeux,
"version": 1} # "version": 1}
rv = client.post("/demande_pub/demandePublication", json=data, headers=get_headers(client)) # rv = client.post("/demande_pub/demandePublication", json=data, headers=get_headers(client))
assert rv.status_code == 201 # assert rv.status_code == 201
id_publication = json.loads(rv.data)["_id"] # id_publication = json.loads(rv.data)["_id"]
#
# On controle les demandes de publication recues de login # # On controle les demandes de publication recues de login
rv = client.get("/demande_pub/demandePublication/" + login + "/False", headers=get_headers(client)) # rv = client.get("/demande_pub/demandePublication/" + login + "/False", headers=get_headers(client))
assert rv.status_code == 200 # assert rv.status_code == 200
assert len(json.loads(rv.data)) == 1 # assert len(json.loads(rv.data)) == 1
#
# On contrôle les demandes de publication proposées de loginDeux # # On contrôle les demandes de publication proposées de loginDeux
rv = client.get("/demande_pub/demandePublication/" + loginDeux + "/True", headers=get_headers(client)) # rv = client.get("/demande_pub/demandePublication/" + loginDeux + "/True", headers=get_headers(client))
assert rv.status_code == 200 # assert rv.status_code == 200
assert len(json.loads(rv.data)) == 1 # assert len(json.loads(rv.data)) == 1
#
# Charles refuse la demande de publication # # Charles refuse la demande de publication
data = {"id_publication": json.dumps(id_publication), "reponse": 'n', "auteur": login} # data = {"id_publication": json.dumps(id_publication), "reponse": 'n', "auteur": login}
rv = client.patch("/contenus/gererDemandePub", json=data, headers=get_headers(client)) # rv = client.patch("/contenus/gererDemandePub", json=data, headers=get_headers(client))
assert rv.status_code == 200 # assert rv.status_code == 200
#
# Jacques créée un en-cours refuse # # Du coup loginDeux doit avoir un contenu dans son panier
data = {"id_contenu_en_cours": json.dumps(id_en_cours)} # rv = client.get("/contenus/getContenuPanier/" + loginDeux + "?perso=True&tiers=True&en_cours=True",
rv = client.patch("/en_cours/newEnCoursRefuse", json=data, headers=get_headers(client)) # headers=get_headers(client))
assert rv.status_code == 201 # assert rv.status_code == 200
# nombrePanier = len(json.loads(rv.data))
rv = client.delete("/en_cours/supprimerEnCoursParId/" + json.dumps(id_en_cours), headers=get_headers(client)) #
assert rv.status_code == 200 # # Jacques créée un nouveau contenu
# data = {"id_demande_pub": json.dumps(id_publication), "auteur": loginDeux}
# On supprime le tiers chez LoginDeux # rv = client.post("/contenus/newContenu", json=data, headers=get_headers(client))
rv = client.delete("/contenus/deleteTiers?id_tiers=" + json.dumps(id) + "&auteur=" + loginDeux + "&note=-", # assert rv.status_code == 201
headers=get_headers(client)) #
assert rv.status_code == 200 # id_nvo_perso = json.loads(rv.data)["_id"]
#
supprimer_demande_publication(client, id, id_publication) # # Du coup loginDeux doit avoir un contenu de plus dans son panier
# rv = client.get("/contenus/getContenuPanier/" + loginDeux + "?perso=True&tiers=True&en_cours=True",
supprimerUtilisateur(client, login) # headers=get_headers(client))
supprimerUtilisateur(client, loginDeux) # assert rv.status_code == 200
# assert len(json.loads(rv.data)) == nombrePanier + 1
#
def test_creer_demande_publication_refusee_creation_nouveau_contenu(client): # # rv = client.delete("/en_cours/supprimerEnCoursParId/" + json.dumps(id_en_cours), headers=get_headers(client))
# 1. login créée un contenu # # assert rv.status_code == 200
login = creerUtilisateurRandom(client) #
id = creerContenuRandom(client, login) # # On supprime le tiers chez LoginDeux
# rv = client.delete("/contenus/deleteTiers?id_tiers=" + json.dumps(id) + "&auteur=" + loginDeux + "&note=-",
print("id test_creer_demande_publication_refusee_creation_nouveau_contenu : ", id) # headers=get_headers(client))
# assert rv.status_code == 200
# 2. login2 le met dans ses tiers #
loginDeux = creerUtilisateurRandom(client) # rv = client.delete("/contenus/deletePerso/" + json.dumps(id_nvo_perso), headers=get_headers(client))
data = {"id_tiers": json.dumps(id), "auteur": loginDeux, "version": 1} # assert rv.status_code == 200
rv = client.patch("/contenus/ajouterTiers", json=data, headers=get_headers(client)) #
assert rv.status_code == 201 # supprimer_demande_publication(client, id, id_publication)
#
# 3. login2 modifie son contenu tiers # supprimerUtilisateur(client, login)
data = {"auteur": loginDeux, "id_contenu": json.dumps(id), "provenance": "perso", "version": 1} # supprimerUtilisateur(client, loginDeux)
# création d'un contenu en_cours #
rv = client.post("/en_cours/newEnCours", json=data, headers=get_headers(client)) #
assert rv.status_code == 201 # def supprimer_demande_publication(client, id, id_publication):
id_en_cours = json.loads(rv.data)["_id"] # rv = client.delete("/contenus/deletePerso/" + json.dumps(id), headers=get_headers(client))
# assert rv.status_code == 200
# 3. et y ajoute un nouveau titre #
data = {"titre": "nouveauTitreContenu", "id_contenu_en_cours": json.dumps(id_en_cours)} # rv = client.delete("/demande_pub/demandePublication/" + json.dumps(id_publication), headers=get_headers(client))
rv = client.patch("/en_cours/changerTitre", json=data, headers=get_headers(client)) # assert rv.status_code == 200
assert rv.status_code == 201
# loginDeux fait une demande de publication sur le contenu en cours qui vient d'être créé
data = {"id_contenu": json.dumps(id), "id_contenu_en_cours": json.dumps(id_en_cours), "auteur_en_cours": loginDeux,
"version": 1}
rv = client.post("/demande_pub/demandePublication", json=data, headers=get_headers(client))
assert rv.status_code == 201
id_publication = json.loads(rv.data)["_id"]
# On controle les demandes de publication recues de login
rv = client.get("/demande_pub/demandePublication/" + login + "/False", headers=get_headers(client))
assert rv.status_code == 200
assert len(json.loads(rv.data)) == 1
# On contrôle les demandes de publication proposées de loginDeux
rv = client.get("/demande_pub/demandePublication/" + loginDeux + "/True", headers=get_headers(client))
assert rv.status_code == 200
assert len(json.loads(rv.data)) == 1
# Charles refuse la demande de publication
data = {"id_publication": json.dumps(id_publication), "reponse": 'n', "auteur": login}
rv = client.patch("/contenus/gererDemandePub", json=data, headers=get_headers(client))
assert rv.status_code == 200
# Du coup loginDeux doit avoir un contenu dans son panier
rv = client.get("/contenus/getContenuPanier/" + loginDeux + "?perso=True&tiers=True&en_cours=True",
headers=get_headers(client))
assert rv.status_code == 200
nombrePanier = len(json.loads(rv.data))
# Jacques créée un nouveau contenu
data = {"id_demande_pub": json.dumps(id_publication), "auteur": loginDeux}
rv = client.post("/contenus/newContenu", json=data, headers=get_headers(client))
assert rv.status_code == 201
id_nvo_perso = json.loads(rv.data)["_id"]
# Du coup loginDeux doit avoir un contenu de plus dans son panier
rv = client.get("/contenus/getContenuPanier/" + loginDeux + "?perso=True&tiers=True&en_cours=True",
headers=get_headers(client))
assert rv.status_code == 200
assert len(json.loads(rv.data)) == nombrePanier + 1
# rv = client.delete("/en_cours/supprimerEnCoursParId/" + json.dumps(id_en_cours), headers=get_headers(client))
# assert rv.status_code == 200
# On supprime le tiers chez LoginDeux
rv = client.delete("/contenus/deleteTiers?id_tiers=" + json.dumps(id) + "&auteur=" + loginDeux + "&note=-",
headers=get_headers(client))
assert rv.status_code == 200
rv = client.delete("/contenus/deletePerso/" + json.dumps(id_nvo_perso), headers=get_headers(client))
assert rv.status_code == 200
supprimer_demande_publication(client, id, id_publication)
supprimerUtilisateur(client, login)
supprimerUtilisateur(client, loginDeux)
def supprimer_demande_publication(client, id, id_publication):
rv = client.delete("/contenus/deletePerso/" + json.dumps(id), headers=get_headers(client))
assert rv.status_code == 200
rv = client.delete("/demande_pub/demandePublication/" + json.dumps(id_publication), headers=get_headers(client))
assert rv.status_code == 200
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment