Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
O
OpenQuizz
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
10
Issues
10
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Weber Rodolphe
OpenQuizz
Commits
370f395f
Commit
370f395f
authored
Aug 27, 2021
by
Jérémie Passerat
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Correction d'une fonction dépréciée (update)
parent
520f210a
Changes
4
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
328 additions
and
328 deletions
+328
-328
contenu_dao.py
modele/contenu_dao.py
+22
-22
test_flask_demande_publication.py
tests/test_flask_demande_publication.py
+164
-164
test_flask_en_cours.py
tests/test_flask_en_cours.py
+112
-112
test_flask_utilisateur.py
tests/test_flask_utilisateur.py
+30
-30
No files found.
modele/contenu_dao.py
View file @
370f395f
...
@@ -197,7 +197,7 @@ class ContenuDao:
...
@@ -197,7 +197,7 @@ class ContenuDao:
# @param id_contenu le contenu à ajouter en tiers
# @param id_contenu le contenu à ajouter en tiers
# @param version la version dans laquelle le contenu a été pris
# @param version la version dans laquelle le contenu a été pris
def
creer_tiers
(
self
,
auteur
,
id_contenu
,
version
):
def
creer_tiers
(
self
,
auteur
,
id_contenu
,
version
):
self
.
base_donnees
.
utilisateur
.
update
({
"nom"
:
auteur
},
{
self
.
base_donnees
.
utilisateur
.
update
_one
({
"nom"
:
auteur
},
{
"$push"
:
{
"$push"
:
{
"tiers"
:
[{
"contenu"
:
ObjectId
(
id_contenu
)},
{
"version"
:
version
}]}})
"tiers"
:
[{
"contenu"
:
ObjectId
(
id_contenu
)},
{
"version"
:
version
}]}})
self
.
incrementer_popularite
(
id_contenu
)
self
.
incrementer_popularite
(
id_contenu
)
...
@@ -211,7 +211,7 @@ class ContenuDao:
...
@@ -211,7 +211,7 @@ class ContenuDao:
## l'auteur 'renie' son contenu, qui reste disponible dans le panier de ceux qui le possédent
## l'auteur 'renie' son contenu, qui reste disponible dans le panier de ceux qui le possédent
# @param auteur l'id du contenu à renier
# @param auteur l'id du contenu à renier
def
dissocier_contenu
(
self
,
id_contenu
):
def
dissocier_contenu
(
self
,
id_contenu
):
self
.
base_donnees
.
contenu
.
update
({
"_id"
:
ObjectId
(
id_contenu
)},
{
"$set"
:
{
"auteur"
:
"Aucun"
}})
self
.
base_donnees
.
contenu
.
update
_one
({
"_id"
:
ObjectId
(
id_contenu
)},
{
"$set"
:
{
"auteur"
:
"Aucun"
}})
## permet de, soit renier, soit supprimer définitivement un auteur (et le fichier de contenu associé)
## permet de, soit renier, soit supprimer définitivement un auteur (et le fichier de contenu associé)
# @param id_contenu l'id du contenu à supprimer
# @param id_contenu l'id du contenu à supprimer
...
@@ -236,12 +236,12 @@ class ContenuDao:
...
@@ -236,12 +236,12 @@ class ContenuDao:
# 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
_one
({
"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
_one
({
"nom"
:
auteur
},
{
"$pull"
:
{
{
"$pull"
:
{
"tiers"
:
[{
"contenu"
:
ObjectId
(
id_tiers
)},
{
"version"
:
version
},
"tiers"
:
[{
"contenu"
:
ObjectId
(
id_tiers
)},
{
"version"
:
version
},
{
"note"
:
int
(
note
)}]
{
"note"
:
int
(
note
)}]
...
@@ -425,25 +425,25 @@ class ContenuDao:
...
@@ -425,25 +425,25 @@ class ContenuDao:
if
not
refuse
:
if
not
refuse
:
# on vire le précédent
# on vire le précédent
self
.
base_donnees
.
utilisateur
.
update
({
"nom"
:
auteur
},
self
.
base_donnees
.
utilisateur
.
update
_one
({
"nom"
:
auteur
},
{
"$pull"
:
{
{
"$pull"
:
{
"tiers"
:
[{
"contenu"
:
ObjectId
(
id_tiers
)},
"tiers"
:
[{
"contenu"
:
ObjectId
(
id_tiers
)},
{
"version"
:
nouvelle_version
-
1
}]}})
{
"version"
:
nouvelle_version
-
1
}]}})
# et on ajoute la version maj
# et on ajoute la version maj
self
.
base_donnees
.
utilisateur
.
update
({
"nom"
:
auteur
},
self
.
base_donnees
.
utilisateur
.
update
_one
({
"nom"
:
auteur
},
{
"$push"
:
{
{
"$push"
:
{
"tiers"
:
[{
"contenu"
:
ObjectId
(
id_tiers
)},
"tiers"
:
[{
"contenu"
:
ObjectId
(
id_tiers
)},
{
"version"
:
nouvelle_version
}]}})
{
"version"
:
nouvelle_version
}]}})
else
:
else
:
# on vire le précédent
# on vire le précédent
self
.
base_donnees
.
utilisateur
.
update
({
"nom"
:
auteur
},
self
.
base_donnees
.
utilisateur
.
update
_one
({
"nom"
:
auteur
},
{
"$pull"
:
{
{
"$pull"
:
{
"tiers"
:
[{
"contenu"
:
ObjectId
(
id_tiers
)},
"tiers"
:
[{
"contenu"
:
ObjectId
(
id_tiers
)},
{
"version"
:
nouvelle_version
-
1
}]}})
{
"version"
:
nouvelle_version
-
1
}]}})
# et on ajoute la version maj
# et on ajoute la version maj
self
.
base_donnees
.
utilisateur
.
update
({
"nom"
:
auteur
},
self
.
base_donnees
.
utilisateur
.
update
_one
({
"nom"
:
auteur
},
{
"$push"
:
{
{
"$push"
:
{
"tiers"
:
[{
"contenu"
:
ObjectId
(
id_tiers
)},
"tiers"
:
[{
"contenu"
:
ObjectId
(
id_tiers
)},
{
"version"
:
str
(
nouvelle_version
-
1
)
+
'r'
}]}})
{
"version"
:
str
(
nouvelle_version
-
1
)
+
'r'
}]}})
...
@@ -507,7 +507,7 @@ class ContenuDao:
...
@@ -507,7 +507,7 @@ class ContenuDao:
ancien_chemin
=
self
.
get_chemin_du_contenu
(
id_contenu
)
ancien_chemin
=
self
.
get_chemin_du_contenu
(
id_contenu
)
# on modifie les tags
# on modifie les tags
self
.
base_donnees
.
contenu
.
update
({
"_id"
:
ObjectId
(
id_contenu
)},
{
"$set"
:
{
"tags_fixes"
:
tags
}})
self
.
base_donnees
.
contenu
.
update
_one
({
"_id"
:
ObjectId
(
id_contenu
)},
{
"$set"
:
{
"tags_fixes"
:
tags
}})
# et le chemin du fichier
# et le chemin du fichier
chemin_tags
=
'/'
.
join
(
tags
)
+
"/"
chemin_tags
=
'/'
.
join
(
tags
)
+
"/"
...
@@ -546,7 +546,7 @@ class ContenuDao:
...
@@ -546,7 +546,7 @@ class ContenuDao:
# @param id_contenu l'id du contenu associé (potentiellement vide)
# @param id_contenu l'id du contenu associé (potentiellement vide)
def
creer_tag_libre
(
self
,
auteur
,
tag
):
def
creer_tag_libre
(
self
,
auteur
,
tag
):
self
.
base_donnees
.
utilisateur
.
update
({
"nom"
:
auteur
},
{
self
.
base_donnees
.
utilisateur
.
update
_one
({
"nom"
:
auteur
},
{
"$push"
:
{
"$push"
:
{
"tags"
:
[{
"tag"
:
tag
},
{
"contenus"
:
[]}]}})
"tags"
:
[{
"tag"
:
tag
},
{
"contenus"
:
[]}]}})
...
@@ -558,13 +558,13 @@ class ContenuDao:
...
@@ -558,13 +558,13 @@ class ContenuDao:
# on récupère les tags
# on récupère les tags
tags
=
self
.
base_donnees
.
utilisateur
.
find_one
({
"nom"
:
auteur
})[
"tags"
]
tags
=
self
.
base_donnees
.
utilisateur
.
find_one
({
"nom"
:
auteur
})[
"tags"
]
# on "vide" les tags (qu'on réinjectera)
# on "vide" les tags (qu'on réinjectera)
self
.
base_donnees
.
utilisateur
.
update
({
"nom"
:
auteur
},
{
"$set"
:
{
"tags"
:
[]}})
self
.
base_donnees
.
utilisateur
.
update
_one
({
"nom"
:
auteur
},
{
"$set"
:
{
"tags"
:
[]}})
for
tag
in
tags
:
for
tag
in
tags
:
if
tag
[
0
][
'tag'
]
==
mon_tag
:
if
tag
[
0
][
'tag'
]
==
mon_tag
:
tags
.
remove
(
tag
)
tags
.
remove
(
tag
)
self
.
base_donnees
.
utilisateur
.
update
({
"nom"
:
auteur
},
{
"$set"
:
{
"tags"
:
tags
}})
self
.
base_donnees
.
utilisateur
.
update
_one
({
"nom"
:
auteur
},
{
"$set"
:
{
"tags"
:
tags
}})
## Fonction permettant de dissocier un contenu d'un tag libre
## Fonction permettant de dissocier un contenu d'un tag libre
# @param auteur l'auteur du nouveau tag
# @param auteur l'auteur du nouveau tag
...
@@ -574,13 +574,13 @@ class ContenuDao:
...
@@ -574,13 +574,13 @@ class ContenuDao:
# on récupère les tags
# on récupère les tags
tags
=
self
.
base_donnees
.
utilisateur
.
find_one
({
"nom"
:
auteur
})[
"tags"
]
tags
=
self
.
base_donnees
.
utilisateur
.
find_one
({
"nom"
:
auteur
})[
"tags"
]
# on "vide" les tags (qu'on réinjectera)
# on "vide" les tags (qu'on réinjectera)
self
.
base_donnees
.
utilisateur
.
update
({
"nom"
:
auteur
},
{
"$set"
:
{
"tags"
:
[]}})
self
.
base_donnees
.
utilisateur
.
update
_one
({
"nom"
:
auteur
},
{
"$set"
:
{
"tags"
:
[]}})
# on parcourt chaque tag et on vire les mentions à id_contenu
# on parcourt chaque tag et on vire les mentions à id_contenu
for
tag
in
tags
:
for
tag
in
tags
:
if
tag
[
0
][
'tag'
]
==
mon_tag
:
if
tag
[
0
][
'tag'
]
==
mon_tag
:
tag
[
1
][
'contenus'
]
.
remove
(
ObjectId
(
id_contenu
))
tag
[
1
][
'contenus'
]
.
remove
(
ObjectId
(
id_contenu
))
self
.
base_donnees
.
utilisateur
.
update
({
"nom"
:
auteur
},
{
"$set"
:
{
"tags"
:
tags
}})
self
.
base_donnees
.
utilisateur
.
update
_one
({
"nom"
:
auteur
},
{
"$set"
:
{
"tags"
:
tags
}})
## Fonction permettant d'associer un contenu à un tag libre
## Fonction permettant d'associer un contenu à un tag libre
# @param auteur l'auteur du nouveau tag
# @param auteur l'auteur du nouveau tag
...
@@ -590,7 +590,7 @@ class ContenuDao:
...
@@ -590,7 +590,7 @@ class ContenuDao:
# on récupère les tags
# on récupère les tags
tags
=
self
.
base_donnees
.
utilisateur
.
find_one
({
"nom"
:
auteur
})[
"tags"
]
tags
=
self
.
base_donnees
.
utilisateur
.
find_one
({
"nom"
:
auteur
})[
"tags"
]
# on "vide" les tags (qu'on réinjectera)
# on "vide" les tags (qu'on réinjectera)
self
.
base_donnees
.
utilisateur
.
update
({
"nom"
:
auteur
},
{
"$set"
:
{
"tags"
:
[]}})
self
.
base_donnees
.
utilisateur
.
update
_one
({
"nom"
:
auteur
},
{
"$set"
:
{
"tags"
:
[]}})
# on parcourt chaque tag et on vire les mentions à id_contenu
# on parcourt chaque tag et on vire les mentions à id_contenu
for
letag
in
tags
:
for
letag
in
tags
:
if
letag
[
0
][
'tag'
]
==
tag
:
if
letag
[
0
][
'tag'
]
==
tag
:
...
@@ -598,7 +598,7 @@ class ContenuDao:
...
@@ -598,7 +598,7 @@ class ContenuDao:
# print(letag[1]['contenu'], type(letag[1]['contenu']))
# print(letag[1]['contenu'], type(letag[1]['contenu']))
# for contenu_associe in letag[1]:
# for contenu_associe in letag[1]:
# print(contenu_associe)
# print(contenu_associe)
self
.
base_donnees
.
utilisateur
.
update
({
"nom"
:
auteur
},
{
"$set"
:
{
"tags"
:
tags
}})
self
.
base_donnees
.
utilisateur
.
update
_one
({
"nom"
:
auteur
},
{
"$set"
:
{
"tags"
:
tags
}})
## Fonction permettant de récupérer tous les tags libres d'un auteur
## Fonction permettant de récupérer tous les tags libres d'un auteur
# @param auteur l'auteur du nouveau tag
# @param auteur l'auteur du nouveau tag
...
@@ -632,13 +632,13 @@ class ContenuDao:
...
@@ -632,13 +632,13 @@ class ContenuDao:
def
noterContenuTiers
(
self
,
id_contenu
,
version
,
auteur
,
note
):
def
noterContenuTiers
(
self
,
id_contenu
,
version
,
auteur
,
note
):
# on vire le précédent
# on vire le précédent
self
.
base_donnees
.
utilisateur
.
update
({
"nom"
:
auteur
},
self
.
base_donnees
.
utilisateur
.
update
_one
({
"nom"
:
auteur
},
{
"$pull"
:
{
{
"$pull"
:
{
"tiers"
:
[{
"contenu"
:
ObjectId
(
id_contenu
)},
"tiers"
:
[{
"contenu"
:
ObjectId
(
id_contenu
)},
{
"version"
:
version
}]}})
{
"version"
:
version
}]}})
# et on ajoute la version maj
# et on ajoute la version maj
self
.
base_donnees
.
utilisateur
.
update
({
"nom"
:
auteur
},
self
.
base_donnees
.
utilisateur
.
update
_one
({
"nom"
:
auteur
},
{
"$push"
:
{
{
"$push"
:
{
"tiers"
:
[{
"contenu"
:
ObjectId
(
id_contenu
)},
"tiers"
:
[{
"contenu"
:
ObjectId
(
id_contenu
)},
{
"version"
:
version
},
{
"version"
:
version
},
...
@@ -685,10 +685,10 @@ class ContenuDao:
...
@@ -685,10 +685,10 @@ class ContenuDao:
def
modifierMoyenneContenu
(
self
,
id_contenu
,
version
,
note
):
def
modifierMoyenneContenu
(
self
,
id_contenu
,
version
,
note
):
if
version
==
self
.
get_version_courante
(
id_contenu
):
if
version
==
self
.
get_version_courante
(
id_contenu
):
versionEnCours
=
self
.
base_donnees
.
contenu
.
find_one
({
"_id"
:
ObjectId
(
id_contenu
)})[
"versionEnCours"
]
versionEnCours
=
self
.
base_donnees
.
contenu
.
find_one
({
"_id"
:
ObjectId
(
id_contenu
)})[
"versionEnCours"
]
self
.
base_donnees
.
contenu
.
update
({
"_id"
:
ObjectId
(
id_contenu
)},
{
"$set"
:
{
"versionEnCours"
:
[]}})
self
.
base_donnees
.
contenu
.
update
_one
({
"_id"
:
ObjectId
(
id_contenu
)},
{
"$set"
:
{
"versionEnCours"
:
[]}})
versionEnCours
[
'note'
]
=
versionEnCours
[
'note'
]
+
note
versionEnCours
[
'note'
]
=
versionEnCours
[
'note'
]
+
note
versionEnCours
[
'nbreNotes'
]
=
versionEnCours
[
'nbreNotes'
]
+
1
versionEnCours
[
'nbreNotes'
]
=
versionEnCours
[
'nbreNotes'
]
+
1
self
.
base_donnees
.
contenu
.
update
({
"_id"
:
ObjectId
(
id_contenu
)},
self
.
base_donnees
.
contenu
.
update
_one
({
"_id"
:
ObjectId
(
id_contenu
)},
{
"$set"
:
{
"versionEnCours"
:
versionEnCours
}})
{
"$set"
:
{
"versionEnCours"
:
versionEnCours
}})
return
json
.
dumps
([
versionEnCours
[
'note'
],
versionEnCours
[
'nbreNotes'
]])
return
json
.
dumps
([
versionEnCours
[
'note'
],
versionEnCours
[
'nbreNotes'
]])
...
@@ -697,10 +697,10 @@ class ContenuDao:
...
@@ -697,10 +697,10 @@ class ContenuDao:
else
:
else
:
print
(
"Non, là"
)
print
(
"Non, là"
)
contenus
=
self
.
base_donnees
.
contenu
.
find_one
({
"_id"
:
ObjectId
(
id_contenu
)})[
"historique"
]
contenus
=
self
.
base_donnees
.
contenu
.
find_one
({
"_id"
:
ObjectId
(
id_contenu
)})[
"historique"
]
self
.
base_donnees
.
contenu
.
update
({
"_id"
:
ObjectId
(
id_contenu
)},
{
"$set"
:
{
"historique"
:
[]}})
self
.
base_donnees
.
contenu
.
update
_one
({
"_id"
:
ObjectId
(
id_contenu
)},
{
"$set"
:
{
"historique"
:
[]}})
for
cont
in
contenus
:
for
cont
in
contenus
:
if
cont
[
'numero'
]
==
version
:
if
cont
[
'numero'
]
==
version
:
cont
[
'note'
]
=
cont
[
'note'
]
+
note
cont
[
'note'
]
=
cont
[
'note'
]
+
note
cont
[
'nbreNotes'
]
=
cont
[
'nbreNotes'
]
+
1
cont
[
'nbreNotes'
]
=
cont
[
'nbreNotes'
]
+
1
self
.
base_donnees
.
contenu
.
update
({
"_id"
:
ObjectId
(
id_contenu
)},
{
"$set"
:
{
"historique"
:
contenus
}})
self
.
base_donnees
.
contenu
.
update
_one
({
"_id"
:
ObjectId
(
id_contenu
)},
{
"$set"
:
{
"historique"
:
contenus
}})
return
json
.
dumps
([
cont
[
'note'
],
cont
[
'nbreNotes'
]])
return
json
.
dumps
([
cont
[
'note'
],
cont
[
'nbreNotes'
]])
tests/test_flask_demande_publication.py
View file @
370f395f
This diff is collapsed.
Click to expand it.
tests/test_flask_en_cours.py
View file @
370f395f
#
#
from testUtils import *
from
testUtils
import
*
#
#
#
def supprimer_les_contenus(client, id, id_en_cours):
def
supprimer_les_contenus
(
client
,
id
,
id_en_cours
):
#
# suppression du contenu en_cours
# suppression du contenu en_cours
#
#
rv = client.delete("/en_cours/supprimerEnCoursParId/" + json.dumps(id_en_cours), headers=get_headers(client))
rv
=
client
.
delete
(
"/en_cours/supprimerEnCoursParId/"
+
json
.
dumps
(
id_en_cours
),
headers
=
get_headers
(
client
))
#
assert rv.status_code == 200
assert
rv
.
status_code
==
200
#
#
# suppression du contenu "intial"
# suppression du contenu "intial"
#
rv = client.delete("/contenus/deletePerso/" + json.dumps(id), headers=get_headers(client))
rv
=
client
.
delete
(
"/contenus/deletePerso/"
+
json
.
dumps
(
id
),
headers
=
get_headers
(
client
))
#
assert rv.status_code == 200
assert
rv
.
status_code
==
200
#
#
#
def test_en_cours(client):
def
test_en_cours
(
client
):
#
# on récupère l'id du contenu en cours créé
# on récupère l'id du contenu en cours créé
#
# Dans un premier temps, créer un contenu
# Dans un premier temps, créer un contenu
#
login = creerUtilisateurRandom(client)
login
=
creerUtilisateurRandom
(
client
)
#
id = creerContenuRandom(client, login)
id
=
creerContenuRandom
(
client
,
login
)
#
#
#
data = {"auteur": login, "id_contenu": json.dumps(id), "provenance": "perso", "version": 1}
data
=
{
"auteur"
:
login
,
"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"
]
#
#
# récupération du texte (avant modif)
# récupération du texte (avant modif)
#
rv = client.get("/en_cours/getTexteContenuEnCours/" + json.dumps(id_en_cours), headers=get_headers(client))
rv
=
client
.
get
(
"/en_cours/getTexteContenuEnCours/"
+
json
.
dumps
(
id_en_cours
),
headers
=
get_headers
(
client
))
#
assert rv.status_code == 200
assert
rv
.
status_code
==
200
#
assert "Texte du contenu" == json.loads(rv.data)
assert
"Texte du contenu"
==
json
.
loads
(
rv
.
data
)
#
#
# modification du texte du contenu en cours
# modification du texte du contenu en cours
#
data = {"nouveau_texte": "Nouveau Texte du contenu", "nouveau_titre": "nouveauTitreContenu"}
data
=
{
"nouveau_texte"
:
"Nouveau Texte du contenu"
,
"nouveau_titre"
:
"nouveauTitreContenu"
}
#
rv = client.patch("/contenus/changerTexte/" + json.dumps(id_en_cours), json=data, headers=get_headers(client))
rv
=
client
.
patch
(
"/contenus/changerTexte/"
+
json
.
dumps
(
id_en_cours
),
json
=
data
,
headers
=
get_headers
(
client
))
#
assert rv.status_code == 200
assert
rv
.
status_code
==
200
#
#
# récupération du texte (après modif)
# récupération du texte (après modif)
#
rv = client.get("/en_cours/getTexteContenuEnCours/" + json.dumps(id_en_cours), headers=get_headers(client))
rv
=
client
.
get
(
"/en_cours/getTexteContenuEnCours/"
+
json
.
dumps
(
id_en_cours
),
headers
=
get_headers
(
client
))
#
assert rv.status_code == 200
assert
rv
.
status_code
==
200
#
assert "Nouveau Texte du contenu" == json.loads(rv.data)
assert
"Nouveau Texte du contenu"
==
json
.
loads
(
rv
.
data
)
#
#
supprimer_les_contenus(client, id, id_en_cours)
supprimer_les_contenus
(
client
,
id
,
id_en_cours
)
#
supprimerUtilisateur(client, login)
supprimerUtilisateur
(
client
,
login
)
#
#
#
def test_en_cours_provenance_tiers(client):
def
test_en_cours_provenance_tiers
(
client
):
#
#
login = creerUtilisateurRandom(client)
login
=
creerUtilisateurRandom
(
client
)
#
id = creerContenuRandom(client, login)
id
=
creerContenuRandom
(
client
,
login
)
#
#
#
loginDeux = creerUtilisateurRandom(client)
loginDeux
=
creerUtilisateurRandom
(
client
)
#
# création d'un tiers
# création d'un tiers
#
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
#
#
# création d'un en_cours
# création d'un en_cours
#
data = {"auteur": loginDeux, "id_contenu": json.dumps(id), "provenance": "tiers", "version": 1}
data
=
{
"auteur"
:
loginDeux
,
"id_contenu"
:
json
.
dumps
(
id
),
"provenance"
:
"tiers"
,
"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"
]
#
#
supprimer_les_contenus(client, id, id_en_cours)
supprimer_les_contenus
(
client
,
id
,
id_en_cours
)
#
rv = client.delete("/contenus/deleteTiers?id_tiers=" + json.dumps(id) + "&auteur=" + loginDeux + "¬e=-",
rv
=
client
.
delete
(
"/contenus/deleteTiers?id_tiers="
+
json
.
dumps
(
id
)
+
"&auteur="
+
loginDeux
+
"¬e=-"
,
#
headers=get_headers(client))
headers
=
get_headers
(
client
))
#
assert rv.status_code == 200
assert
rv
.
status_code
==
200
#
#
supprimerUtilisateur(client, login)
supprimerUtilisateur
(
client
,
login
)
#
supprimerUtilisateur(client, loginDeux)
supprimerUtilisateur
(
client
,
loginDeux
)
#
#
#
def test_en_cours_directement_valide(client):
def
test_en_cours_directement_valide
(
client
):
#
# on récupère l'id du contenu en cours créé
# on récupère l'id du contenu en cours créé
#
# Dans un premier temps, créer un contenu
# Dans un premier temps, créer un contenu
#
login = creerUtilisateurRandom(client)
login
=
creerUtilisateurRandom
(
client
)
#
id = creerContenuRandom(client, login)
id
=
creerContenuRandom
(
client
,
login
)
#
#
#
data = {"auteur": login, "id_contenu": json.dumps(id), "provenance": "perso", "version": 1}
data
=
{
"auteur"
:
login
,
"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"
]
#
#
# modification du texte du contenu en cours
# modification du texte du contenu en cours
#
data = {"nouveau_texte": "Nouveau Texte du contenu", "nouveau_titre": "nouveauTitreContenu"}
data
=
{
"nouveau_texte"
:
"Nouveau Texte du contenu"
,
"nouveau_titre"
:
"nouveauTitreContenu"
}
#
rv = client.patch("/contenus/changerTexte/" + json.dumps(id_en_cours), json=data, headers=get_headers(client))
rv
=
client
.
patch
(
"/contenus/changerTexte/"
+
json
.
dumps
(
id_en_cours
),
json
=
data
,
headers
=
get_headers
(
client
))
#
assert rv.status_code == 200
assert
rv
.
status_code
==
200
#
#
data = {"auteur": "", "id_contenu_en_cours": json.dumps(id_en_cours)}
data
=
{
"auteur"
:
""
,
"id_contenu_en_cours"
:
json
.
dumps
(
id_en_cours
)}
#
rv = client.patch("/contenus/majContenu", json=data, headers=get_headers(client))
rv
=
client
.
patch
(
"/contenus/majContenu"
,
json
=
data
,
headers
=
get_headers
(
client
))
#
assert rv.status_code == 200
assert
rv
.
status_code
==
200
#
#
# test du texte sur le contenu d'id 'id'
# test du texte sur le contenu d'id 'id'
#
rv = client.get("/contenus/getTexteContenu/" + json.dumps(id), headers=get_headers(client))
rv
=
client
.
get
(
"/contenus/getTexteContenu/"
+
json
.
dumps
(
id
),
headers
=
get_headers
(
client
))
#
assert rv.status_code == 200
assert
rv
.
status_code
==
200
#
assert "Nouveau Texte du contenu" == json.loads(rv.data)
assert
"Nouveau Texte du contenu"
==
json
.
loads
(
rv
.
data
)
#
#
#
# suppression du contenu "intial"
# suppression du contenu "intial"
#
rv = client.delete("/contenus/deletePerso/" + json.dumps(id), headers=get_headers(client))
rv
=
client
.
delete
(
"/contenus/deletePerso/"
+
json
.
dumps
(
id
),
headers
=
get_headers
(
client
))
#
assert rv.status_code == 200
assert
rv
.
status_code
==
200
#
#
supprimerUtilisateur(client, login)
supprimerUtilisateur
(
client
,
login
)
#
tests/test_flask_utilisateur.py
View file @
370f395f
#
from testUtils import *
from
testUtils
import
*
#
#
#
def test_new_user(client):
def
test_new_user
(
client
):
#
login = genererRandom()
login
=
genererRandom
()
#
data = {"login": login}
data
=
{
"login"
:
login
}
#
rv = client.post("/utilisateurs/newUser", json=data)
rv
=
client
.
post
(
"/utilisateurs/newUser"
,
json
=
data
)
#
assert rv.status_code == 201
assert
rv
.
status_code
==
201
#
rv = client.post("/utilisateurs/newUser", json=data)
rv
=
client
.
post
(
"/utilisateurs/newUser"
,
json
=
data
)
#
assert rv.status_code == 409
assert
rv
.
status_code
==
409
#
rv = client.delete('/utilisateurs/supprimerUser/' + login, headers=get_headers(client))
rv
=
client
.
delete
(
'/utilisateurs/supprimerUser/'
+
login
,
headers
=
get_headers
(
client
))
#
assert rv.status_code == 200
assert
rv
.
status_code
==
200
#
#
#
def test_getAllUsers(client):
def
test_getAllUsers
(
client
):
#
rv = client.get('/utilisateurs/auteursExistants', headers=get_headers(client))
rv
=
client
.
get
(
'/utilisateurs/auteursExistants'
,
headers
=
get_headers
(
client
))
#
assert rv.status_code == 200
assert
rv
.
status_code
==
200
#
#
#
def test_isUserExistant(client):
def
test_isUserExistant
(
client
):
#
login = creerUtilisateurRandom(client)
login
=
creerUtilisateurRandom
(
client
)
#
response = client.get("/utilisateurs/checkUser?login=" + login)
response
=
client
.
get
(
"/utilisateurs/checkUser?login="
+
login
)
#
assert 200 == response.status_code
assert
200
==
response
.
status_code
#
response = client.get("/utilisateurs/checkUser?login=" + genererRandom())
response
=
client
.
get
(
"/utilisateurs/checkUser?login="
+
genererRandom
())
#
assert 400 == response.status_code
assert
400
==
response
.
status_code
#
client.delete('/utilisateurs/supprimerUser/' + login, headers=get_headers(client))
client
.
delete
(
'/utilisateurs/supprimerUser/'
+
login
,
headers
=
get_headers
(
client
))
#
#
#
def test_change_password(client):
def
test_change_password
(
client
):
#
pass
pass
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment