""" Créer un utilisateur, recupérer ses infos, changer son mdp, le supprimer """ import random # La variable context est définie par le script de lancement # l'affecte ainsi pour évietr les warnins pylint: context = context # pylint: disable=undefined-variable REQUEST = REQUEST # pylint: disable=undefined-variable import scotests.sco_fake_gen as sco_fake_gen # pylint: disable=import-error import ZScoUsers import ZScoDoc import ZScolar nomdept = raw_input( "Quel est le nom de votre département test? ATTENTION A NE PAS VOUS TROMPER : " ) # --- Création d'un utilisateur arg = { "passwd": "scodocpass", "user_name": "unutil", "nom": "unnom", "prenom": "unprenom", "email": "unemail@mail.fr", "roles": "Ens" + nomdept + ",RespPe" + nomdept, } # user1 = context.Users.create_user(args=arg, REQUEST=REQUEST) user_info1 = context.Users.user_info(user_name="unutil") assert user_info1["email"] == arg["email"] assert user_info1["user_name"] == arg["user_name"] assert user_info1["nom"] == "unnom" assert user_info1["prenom"] == "unprenom" assert user_info1["roles"] == arg["roles"] # --- Récupération de la liste des Users liste_xml = context.Users.get_user_list_xml(REQUEST=REQUEST) print(liste_xml) liste_user = context.Users.get_userlist() len_liu1 = len(liste_user) assert user_info1 in liste_user # le nouvel utilisateur est bien dans la liste ! # --- Récupérer user_name à partir de nomplogin user_name1 = context.Users.get_user_name_from_nomplogin( nomplogin=user_info1["nomplogin"] ) assert user_name1 == "unutil" # --- Changement du mot de passe de l'utilisateur context.Users.do_change_password(user_name="unutil", password="scodocpass2") # vérification du mdp changé directement sur scodoc web car je ne trouve pas comment récupérer le mdp en python # Vérification : ok! # --- Supression d'un utilisateur # context.Users.delete_user_form(REQUEST=REQUEST, user_name="unutil") # --- Test de la récupération de l'URL url = context.Users.UsersURL() assert url == "ScoDoc/" + nomdept + "/Scolarite/Users" """ Commentaire : La supression d'un utilisateur ne fonctionne pas car nécessite l'envoie d'un formulaire. """