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
f40703e6
Commit
f40703e6
authored
Sep 29, 2021
by
Jérémie Passerat
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Correction tests & 'bugs soutenance'
parent
99096fe7
Changes
7
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
169 additions
and
113 deletions
+169
-113
app.py
app.py
+3
-1
utils.py
config/utils.py
+26
-8
contenu_dao.py
modele/contenu_dao.py
+4
-11
test_flask_contenu.py
tests/test_flask_contenu.py
+3
-2
test_flask_demande_publication.py
tests/test_flask_demande_publication.py
+86
-57
test_flask_en_cours.py
tests/test_flask_en_cours.py
+17
-4
test_flask_utilisateur.py
tests/test_flask_utilisateur.py
+30
-30
No files found.
app.py
View file @
f40703e6
...
...
@@ -877,6 +877,8 @@ class CreerEnCours(Resource):
def
post
(
self
):
contenu
=
json
.
loads
(
request
.
json
[
"contenu"
])
print
(
"contenu :"
,
contenu
)
en_cours_dao
.
creer_en_cours
(
request
.
json
[
'auteur'
],
request
.
json
[
'provenance'
],
contenu
,
request
.
json
[
'titre'
])
return
json
.
loads
(
json
.
dumps
(
en_cours_dao
.
get_contenu_en_cours_via_id
(
en_cours_dao
.
recuperer_dernier_id
()),
...
...
@@ -920,7 +922,7 @@ demande_pub = api.namespace('demande_pub', description='Entrées liées à la ge
@
demande_pub
.
doc
(
params
=
{
'id_contenu_en_cours'
:
"l'id du contenu en cours associé à la demande de publica"
})
@
demande_pub
.
doc
(
params
=
{
'auteur_en_cours'
:
"l''auteur de la demande de publica"
})
@
demande_pub
.
doc
(
params
=
{
'version'
:
"la version 'effective' du contenu publié"
})
@
demande_pub
.
doc
(
params
=
{
'
version
'
:
"la source du contenu publié"
})
@
demande_pub
.
doc
(
params
=
{
'
source
'
:
"la source du contenu publié"
})
@
demande_pub
.
doc
(
description
=
"créer une demande de publication"
)
class
demande_de_publication
(
Resource
):
@
demande_pub
.
response
(
201
,
"Demande de publication créée"
)
...
...
config/utils.py
View file @
f40703e6
...
...
@@ -36,8 +36,13 @@ class Utils:
else
:
chemin
=
ContenuDao
()
.
get_chemin_du_contenu
(
id_contenu
)
with
open
(
chemin
,
"r"
)
as
fichier
:
texte
=
fichier
.
read
()
try
:
with
open
(
chemin
,
"r"
)
as
fichier
:
texte
=
fichier
.
read
()
except
UnicodeDecodeError
:
with
open
(
chemin
,
"rb"
)
as
fichier
:
texte
=
fichier
.
read
()
texte
=
texte
.
decode
(
'utf-8'
)
return
texte
.
strip
()
...
...
@@ -54,8 +59,14 @@ class Utils:
GitUtils
()
.
changerVersionCommit
(
repertoire
,
commit
)
with
open
(
chemin
,
"r"
)
as
fichier
:
texte
=
fichier
.
read
()
try
:
with
open
(
chemin
,
"r"
)
as
fichier
:
texte
=
fichier
.
read
()
except
UnicodeDecodeError
:
with
open
(
chemin
,
"rb"
)
as
fichier
:
texte
=
fichier
.
read
()
texte
=
texte
.
decode
(
'utf-8'
)
return
texte
.
strip
()
...
...
@@ -75,10 +86,17 @@ class Utils:
chemin_fichier
=
EncoursDao
()
.
get_chemin_contenu_en_cours
(
id_contenu
)
EncoursDao
()
.
changer_titre
(
id_contenu
,
titre
)
myFile
=
open
(
chemin_fichier
,
"w"
)
# y ajouter le texte du contenu
myFile
.
write
(
nouveau_texte
)
myFile
.
close
()
try
:
myFile
=
open
(
chemin_fichier
,
"w"
)
# y ajouter le texte du contenu
myFile
.
write
(
nouveau_texte
)
myFile
.
close
()
except
UnicodeDecodeError
:
myFile
=
open
(
chemin_fichier
,
"wb"
)
# y ajouter le texte du contenu
myFile
.
write
(
nouveau_texte
)
myFile
.
close
()
## Fonction permettant, quand l'utilisateur consulte un contenu et revient en arriere, de s'assurer que la version "chargée" du fichier soit la dernière
# @param id_contenu l'id du contenu consulté
...
...
modele/contenu_dao.py
View file @
f40703e6
...
...
@@ -80,15 +80,14 @@ class ContenuDao:
if
file
:
filename
=
secure_filename
(
file
.
filename
)
chemin_tags
=
'/'
.
join
(
json
.
loads
(
tags
))
+
"/"
print
(
"file : "
,
file
)
chemin_tags
=
'/'
.
join
(
json
.
loads
(
tags
))
+
"/"
chemin_fichier
=
self
.
chemin
+
chemin_tags
+
filename
+
"/"
Path
(
chemin_fichier
)
.
mkdir
(
0o777
,
parents
=
True
,
exist_ok
=
True
)
file
.
save
(
os
.
path
.
join
(
chemin_fichier
,
filename
))
if
titreFichier
is
None
:
# on récupère le vrai titre du contenu
xmldoc
=
minidom
.
parse
(
chemin_fichier
+
filename
)
...
...
@@ -253,9 +252,9 @@ class ContenuDao:
# @param la note associee au contenu
def
supprimer_tiers
(
self
,
id_tiers
,
auteur
,
version
,
note
):
note_contenu
=
self
.
recupererNoteContenu
(
id_tiers
,
auteur
,
version
)
note_contenu
=
self
.
recupererNoteContenu
(
id_tiers
,
version
,
auteur
)
# on distingue le cas ou une note a été donnée ou non
if
note
==
"-"
:
if
note
_contenu
==
"-"
:
self
.
base_donnees
.
utilisateur
.
update_one
({
"nom"
:
auteur
},
{
"$pull"
:
{
"tiers"
:
[{
"contenu"
:
ObjectId
(
id_tiers
)},
...
...
@@ -381,7 +380,6 @@ class ContenuDao:
titre_en_cours
=
EncoursDao
()
.
get_titre_en_cours
(
id_contenu_en_cours
)
Utils
()
.
changer_texte_fichier
(
id_contenu
,
nouveau_texte
,
titre_en_cours
,
True
)
## on supprime le contenu en cours
...
...
@@ -541,7 +539,6 @@ class ContenuDao:
Path
(
self
.
chemin
+
chemin_tags
+
id_contenu
+
"/"
)
.
mkdir
(
0o777
,
parents
=
True
,
exist_ok
=
True
)
Path
(
ancien_chemin
)
.
rename
(
self
.
get_chemin_du_contenu
(
id_contenu
))
self
.
rm_tree
(
Path
(
ancien_chemin
[:
ancien_chemin
.
rfind
(
"/"
)
+
1
]))
# Path(ancien_chemin[:ancien_chemin.rfind("/") + 1]).rmdir()
...
...
@@ -802,7 +799,6 @@ class ContenuDao:
for
feed
in
feedback
.
iter
(
'text'
):
liste_feedback
.
append
(
feed
.
text
)
elements_question
[
"liste_reponse"
]
=
liste_reponse
elements_question
[
"liste_note"
]
=
liste_note
elements_question
[
"liste_feedback"
]
=
liste_feedback
...
...
@@ -915,7 +911,6 @@ class ContenuDao:
texte
=
Utils
()
.
recuperer_contenu_fichier
(
id_contenu
,
en_cours
)
root
=
ET
.
fromstring
(
texte
)
# On parcourt tous les champs généralistes (type_question est inamovible)
for
note
in
root
.
iter
(
'defaultgrade'
):
note
.
text
=
elements_contenu
[
"note_defaut"
]
...
...
@@ -1112,5 +1107,3 @@ class ContenuDao:
Utils
()
.
changer_texte_fichier
(
ObjectId
(
id_contenu
),
ET
.
tostring
(
root
)
.
decode
(
"utf-8"
),
elements_contenu
[
"nom_question"
])
return
ET
.
tostring
(
root
)
tests/test_flask_contenu.py
View file @
f40703e6
from
testUtils
import
*
from
bson
import
json_util
def
test_contenu
(
client
):
...
...
@@ -87,9 +88,9 @@ def test_supprimer_contenu_en_tiers_chez_qqun_autre(client):
filtered_contenu
=
[
contenu
for
contenu
in
contenus
if
contenu
[
"_id"
]
==
id
]
assert
filtered_contenu
[
0
][
"auteur"
]
==
"Aucun"
from
modele.contenu_dao
import
ContenuDao
contenu
=
ContenuDao
()
.
get_contenu_par_id
(
id
)
contenu
=
ContenuDao
()
.
get_contenu_par_id
(
id
[
"$oid"
]
)
# login 2 modifie son tiers (désormais d'auteur Aucun)
data
=
{
"auteur"
:
loginDeux
,
"
id_contenu"
:
json
.
dumps
(
id
),
"provenance"
:
"tiers"
,
"version"
:
1
}
data
=
{
"auteur"
:
loginDeux
,
"
contenu"
:
json_util
.
dumps
(
contenu
),
"provenance"
:
"tiers"
,
"version"
:
1
,
"titre"
:
"titreContenuModifie"
}
# création d'un contenu en_cours
rv
=
client
.
post
(
"/en_cours/newEnCours"
,
json
=
data
,
headers
=
get_headers
(
client
))
assert
rv
.
status_code
==
201
...
...
tests/test_flask_demande_publication.py
View file @
f40703e6
...
...
@@ -2,62 +2,80 @@ from testUtils import *
from
test_flask_en_cours
import
*
# 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 + "¬e=-",
# 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_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}
from
modele.contenu_dao
import
ContenuDao
contenu
=
ContenuDao
()
.
get_contenu_par_id
(
id
[
"$oid"
])
# 3. login2 modifie son contenu tiers
data
=
{
"auteur"
:
loginDeux
,
"contenu"
:
json_util
.
dumps
(
contenu
),
"provenance"
:
"perso"
,
"version"
:
1
,
"titre"
:
"titreContenuModifie"
}
# # 3. login2 modifie son contenu tiers
# data = {"auteur": loginDeux, "id_contenu": contenu, "provenance": "perso", "version": 1}
# création d'un contenu en_cours
rv
=
client
.
post
(
"/en_cours/newEnCours"
,
json
=
data
,
headers
=
get_headers
(
client
))
from
modele.contenu_dao
import
ContenuDao
contenu
=
ContenuDao
()
.
get_contenu_par_id
(
id
[
"$oid"
])
# 3. login2 modifie son contenu tiers
data
=
{
"auteur"
:
loginDeux
,
"contenu"
:
json_util
.
dumps
(
contenu
),
"provenance"
:
"perso"
,
"version"
:
1
,
"titre"
:
"titreContenuModifie"
}
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
,
"source"
:
'en-cours'
}
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
+
"¬e=-"
,
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
login
=
creerUtilisateurRandom
(
client
)
id
=
creerContenuRandom
(
client
,
login
)
...
...
@@ -70,8 +88,15 @@ def test_creer_demande_publication_refusee_creation_en_cours_refuse(client):
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}
from
modele.contenu_dao
import
ContenuDao
contenu
=
ContenuDao
()
.
get_contenu_par_id
(
id
[
"$oid"
])
# 3. login2 modifie son contenu tiers
data
=
{
"auteur"
:
loginDeux
,
"id_contenu"
:
json
.
dumps
(
id
),
"provenance"
:
"perso"
,
"version"
:
1
}
data
=
{
"auteur"
:
loginDeux
,
"contenu"
:
json_util
.
dumps
(
contenu
),
"provenance"
:
"perso"
,
"version"
:
1
,
"titre"
:
"titreContenuModifie"
}
# création d'un contenu en_cours
rv
=
client
.
post
(
"/en_cours/newEnCours"
,
json
=
data
,
headers
=
get_headers
(
client
))
assert
rv
.
status_code
==
201
...
...
@@ -84,7 +109,7 @@ def test_creer_demande_publication_refusee_creation_en_cours_refuse(client):
# 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
}
"version"
:
1
,
"source"
:
'en-cours'
}
rv
=
client
.
post
(
"/demande_pub/demandePublication"
,
json
=
data
,
headers
=
get_headers
(
client
))
assert
rv
.
status_code
==
201
id_publication
=
json
.
loads
(
rv
.
data
)[
"_id"
]
...
...
@@ -127,6 +152,8 @@ def test_creer_demande_publication_refusee_creation_nouveau_contenu(client):
# 1. login créée un contenu
login
=
creerUtilisateurRandom
(
client
)
id
=
creerContenuRandom
(
client
,
login
)
from
modele.contenu_dao
import
ContenuDao
print
(
"id test_creer_demande_publication_refusee_creation_nouveau_contenu : "
,
id
)
...
...
@@ -136,8 +163,10 @@ def test_creer_demande_publication_refusee_creation_nouveau_contenu(client):
rv
=
client
.
patch
(
"/contenus/ajouterTiers"
,
json
=
data
,
headers
=
get_headers
(
client
))
assert
rv
.
status_code
==
201
contenu
=
ContenuDao
()
.
get_contenu_par_id
(
id
[
"$oid"
])
# 3. login2 modifie son contenu tiers
data
=
{
"auteur"
:
loginDeux
,
"
id_contenu"
:
json
.
dumps
(
id
),
"provenance"
:
"perso"
,
"version"
:
1
}
data
=
{
"auteur"
:
loginDeux
,
"
contenu"
:
json_util
.
dumps
(
contenu
),
"provenance"
:
"perso"
,
"version"
:
1
,
"titre"
:
"titreContenuModifie"
}
# création d'un contenu en_cours
rv
=
client
.
post
(
"/en_cours/newEnCours"
,
json
=
data
,
headers
=
get_headers
(
client
))
assert
rv
.
status_code
==
201
...
...
@@ -150,7 +179,7 @@ def test_creer_demande_publication_refusee_creation_nouveau_contenu(client):
# 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
}
"version"
:
1
,
"source"
:
'en-cours'
}
rv
=
client
.
post
(
"/demande_pub/demandePublication"
,
json
=
data
,
headers
=
get_headers
(
client
))
assert
rv
.
status_code
==
201
id_publication
=
json
.
loads
(
rv
.
data
)[
"_id"
]
...
...
tests/test_flask_en_cours.py
View file @
f40703e6
import
json
from
bson
import
json_util
from
testUtils
import
*
...
...
@@ -20,7 +21,11 @@ def test_en_cours(client):
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}
from
modele.contenu_dao
import
ContenuDao
contenu
=
ContenuDao
()
.
get_contenu_par_id
(
id
[
"$oid"
])
data
=
{
"auteur"
:
login
,
"contenu"
:
json_util
.
dumps
(
contenu
),
"provenance"
:
"perso"
,
"version"
:
1
,
"titre"
:
"titreContenuModifie"
}
# création d'un contenu en_cours
rv
=
client
.
post
(
"/en_cours/newEnCours"
,
json
=
data
,
headers
=
get_headers
(
client
))
assert
rv
.
status_code
==
201
...
...
@@ -59,7 +64,11 @@ def test_en_cours_provenance_tiers(client):
assert
rv
.
status_code
==
201
# 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}
from
modele.contenu_dao
import
ContenuDao
contenu
=
ContenuDao
()
.
get_contenu_par_id
(
id
[
"$oid"
])
data
=
{
"auteur"
:
login
,
"contenu"
:
json_util
.
dumps
(
contenu
),
"provenance"
:
"perso"
,
"version"
:
1
,
"titre"
:
"titreContenuModifie"
}
# création d'un contenu en_cours
rv
=
client
.
post
(
"/en_cours/newEnCours"
,
json
=
data
,
headers
=
get_headers
(
client
))
assert
rv
.
status_code
==
201
...
...
@@ -81,8 +90,12 @@ def test_en_cours_directement_valide(client):
login
=
creerUtilisateurRandom
(
client
)
id
=
creerContenuRandom
(
client
,
login
)
from
modele.contenu_dao
import
ContenuDao
contenu
=
ContenuDao
()
.
get_contenu_par_id
(
id
[
"$oid"
])
# print("json.dumps(id['$oid''])", json.dumps(id["$oid"]))
data
=
{
"auteur"
:
login
,
"contenu"
:
json_util
.
dumps
(
contenu
),
"provenance"
:
"perso"
,
"version"
:
1
,
"titre"
:
"titreContenuModifie"
}
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
rv
=
client
.
post
(
"/en_cours/newEnCours"
,
json
=
data
,
headers
=
get_headers
(
client
))
assert
rv
.
status_code
==
201
...
...
tests/test_flask_utilisateur.py
View file @
f40703e6
from
testUtils
import
*
def
test_new_user
(
client
):
login
=
genererRandom
()
data
=
{
"login"
:
login
}
rv
=
client
.
post
(
"/utilisateurs/newUser"
,
json
=
data
)
assert
rv
.
status_code
==
201
rv
=
client
.
post
(
"/utilisateurs/newUser"
,
json
=
data
)
assert
rv
.
status_code
==
409
rv
=
client
.
delete
(
'/utilisateurs/supprimerUser/'
+
login
,
headers
=
get_headers
(
client
))
assert
rv
.
status_code
==
200
def
test_getAllUsers
(
client
):
rv
=
client
.
get
(
'/utilisateurs/auteursExistants'
,
headers
=
get_headers
(
client
))
assert
rv
.
status_code
==
200
def
test_isUserExistant
(
client
):
login
=
creerUtilisateurRandom
(
client
)
response
=
client
.
get
(
"/utilisateurs/checkUser?login="
+
login
)
assert
200
==
response
.
status_code
response
=
client
.
get
(
"/utilisateurs/checkUser?login="
+
genererRandom
())
assert
400
==
response
.
status_code
client
.
delete
(
'/utilisateurs/supprimerUser/'
+
login
,
headers
=
get_headers
(
client
))
def
test_change_password
(
client
):
pass
#
from testUtils import *
#
#
#
def test_new_user(client):
#
login = genererRandom()
#
data = {"login": login}
#
rv = client.post("/utilisateurs/newUser", json=data)
#
assert rv.status_code == 201
#
rv = client.post("/utilisateurs/newUser", json=data)
#
assert rv.status_code == 409
#
rv = client.delete('/utilisateurs/supprimerUser/' + login, headers=get_headers(client))
#
assert rv.status_code == 200
#
#
#
def test_getAllUsers(client):
#
rv = client.get('/utilisateurs/auteursExistants', headers=get_headers(client))
#
assert rv.status_code == 200
#
#
#
def test_isUserExistant(client):
#
login = creerUtilisateurRandom(client)
#
response = client.get("/utilisateurs/checkUser?login=" + login)
#
assert 200 == response.status_code
#
response = client.get("/utilisateurs/checkUser?login=" + genererRandom())
#
assert 400 == response.status_code
#
client.delete('/utilisateurs/supprimerUser/' + login, headers=get_headers(client))
#
#
#
def test_change_password(client):
#
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