""" 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_userlist_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. """