*** Settings *** Documentation Test de task. # On inclut les mots-clefs Resource resources/resources.robot # On ouvre/ferme le navigateur au début/à la fin du Test Suite. Suite Setup Run Keywords ... For Suite Setup ... AND Activation des options des task ... AND Activation de la configuration du filestorage alternatif ... AND Activation des platau_type_demande ... AND Rendre les types de dossier d'autorisation détaillés utilisés transmissible à Plat'AU DP Suite Teardown Run Keywords ... Desactivation des options des task ... AND Rendre Un Type De Dossier D'autorisation Detailles Non Transmissible A Plat'AU DP ... AND Désactivation de la configuration du filestorage alternatif ... AND For Suite Teardown *** Variables *** ${alternate_filestorage} filestorage_plop *** Keywords *** Activation de la configuration du filestorage alternatif # On change la configuration du filestorage Move File ..${/}dyn${/}filestorage.inc.php ..${/}dyn${/}filestorage.inc.php.bak Copy File ..${/}tests${/}binary_files${/}alternate_filestorage.inc.php ..${/}dyn${/} Move File ..${/}dyn${/}alternate_filestorage.inc.php ..${/}dyn${/}filestorage.inc.php Désactivation de la configuration du filestorage alternatif # On remet la configuration du filestorage par défaut Move File ..${/}dyn${/}filestorage.inc.php.bak ..${/}dyn${/}filestorage.inc.php *** Test Cases *** Activation des options générales &{param_mode_service_consulte} = Create Dictionary ... libelle=option_mode_service_consulte ... valeur=true ... om_collectivite=agglo Gerer le paramètre par WS ${param_mode_service_consulte} Vérification de l'ajout de la task Sortant Prescription archéologique lors d'une décision sur un dossier ajouté par une task input [Documentation] Permet de vérfier l'ajout d'une tâche de Prescription si le WF est ... correctement paramétré. # En tant qu'admin Depuis la page d'accueil admin admin # isole le contexte du test (création d'une collectivité) &{librecom_values} = Create Dictionary ... om_collectivite_libelle=LIBRECOM_WS_PRESCRIPTION ... departement=016 ... commune=100 ... insee=16100 ... direction_code=1 ... direction_libelle=Direction de LIBRECOM_WS_PRESCRIPTION ... direction_chef=Chef ... division_code=01 ... division_libelle=Division 01 ... division_chef=Chef ... guichet_om_utilisateur_nom=Zurie Parmentier ... guichet_om_utilisateur_email=zparmentier@openads-test.fr ... guichet_om_utilisateur_login=zparmentier ... guichet_om_utilisateur_pwd=zparmentier ... instr_om_utilisateur_nom=Mirabelle Laberge ... instr_om_utilisateur_email=mlaberge@openads-test.fr ... instr_om_utilisateur_login=mlaberge ... instr_om_utilisateur_pwd=mlaberge ... code_entite=LBCOM_16 ... acteur=LIBRECOM-ACT-016-PRESCRIPTION Isolation d'un contexte ${librecom_values} # ajouter le paramètre 'acteur' à la collectivité/au service &{param_platau_acteur} = Create Dictionary ... libelle=platau_acteur_service_consulte ... valeur=${librecom_values["acteur"]} ... om_collectivite=${librecom_values["om_collectivite_libelle"]} Gerer le paramètre par WS ${param_platau_acteur} # Récupère l'identifiant de la collectivité LIBRECOM_WS Depuis le contexte de la collectivité ${librecom_values["om_collectivite_libelle"]} ${librecom_ws_id} = Get Text css=#om_collectivite # Ajout PRESCRIPTION avis_decision + action + evenement &{args_avis_decision} = Create Dictionary ... libelle=300 - Prescription ... typeavis=favorable ... avis_decision_type=Conforme ... avis_decision_nature=Favorable ... prescription=true Ajouter l'avis de décision ${args_avis_decision} &{args_action} = Create Dictionary ... action=Prescription300 ... libelle=Prescription300 ... regle_avis=avis_decision ... regle_date_decision=date_evenement Ajouter l'action depuis le menu ${args_action} @{etat_source} = Create List delai de notification envoye @{type_di} = Create List DP - P - Initiale &{args_evenement} = Create Dictionary ... libelle=300 - Prescription ... etats_depuis_lequel_l_evenement_est_disponible=${etat_source} ... dossier_instruction_type=${type_di} ... avis_decision=${args_avis_decision.libelle} ... action=${args_action.action} # Ajouter l'événement depuis le menu ${args_evenement} Gerer l'événement par WS ${args_evenement} # Récupère le template de payload JSON et le transforme en dictionnaire ${dossier_json_payload} = Get File ${EXECDIR}${/}binary_files${/}json_payload_min.txt # Remplace certaines valeurs ${dossier_json_payload} = Replace String ${dossier_json_payload} EF-DSQ-4512 ${librecom_values["acteur"]} ${dossier_json_payload} = Replace String ${dossier_json_payload} 7SZ-SX8-TR4 000-AAA-20 ${dossier_json_payload} = Replace String ${dossier_json_payload} 2SZ-SX8-AZ6 AAA-000-20 ${dossier_json_payload} = Replace String ${dossier_json_payload} 00009 00001P0 ${dossier_json_payload} = Replace String ${dossier_json_payload} 13055 ${librecom_values["insee"]} ${dossier_payload_dict} = To Json ${dossier_json_payload} # Ajoute d'une tâche de création de DI ${dossier_task_values} = Create Dictionary ... type=create_DI_for_consultation ... json_payload=${dossier_json_payload} Ajouter la tâche par WS ${dossier_task_values} # Lancer le traitement des tâches (entrantes avec statut 'à traiter', par défaut) ${dossier_msg} = Déclencher le traitement des tâches par WS # Extraction du libellé du DI dans le message ${di_regex} = Catenate ^.*\\[[0-9]+\\] ${dossier_task_values["type"]} ... ${dossier_payload_dict["dossier"]["dossier"]} : ... dossier instruction '([^']+)' .*$ ${di_lib} = Replace String Using Regexp ${dossier_msg} ${di_regex} \\1 ${di_lib_sans_espace} = Sans espace ${di_lib} # Ajout d'une instruction Prescription et vérification de la création de la tâche ${instr_ad} = Ajouter une instruction au DI ${di_lib} ${args_evenement.libelle} &{task_values} = Create Dictionary ... type=prescription ... dossier=${di_lib_sans_espace} ... state=new ... object_id=${instr_ad} ... link_dossier=${di_lib_sans_espace} ... stream=output Vérifier que la tâche a bien été ajoutée ou modifiée ${task_values} Vérifier que la tâche à une payload fonctionnelle ${task_values} # Vérification que le champ commentaire est bien intégré au json ${json_payload_loaded} = Récupérer le contenu du champ json_payload ${task_values} Log Dictionary ${json_payload_loaded['avis_decision']} Dictionary Should Contain Key ${json_payload_loaded['avis_decision']['libelle']} ${args_avis_decision.libelle} # On vérifie qu'il n'y ait pas de tâche Décision DI ou avis Depuis le menu Moniteur Plat'AU # Input Text css=div#adv-search-adv-fields input#dossier ${di_lib} # Select From List By Label css=div#adv-search-adv-fields select#type Décision DI # Click On Search Button # Element Should Contain css=.tab-data Aucun enregistrement. # Input Text css=div#adv-search-adv-fields input#dossier ${di_lib} # Select From List By Label css=div#adv-search-adv-fields select#type Avis # Click On Search Button # Element Should Contain css=.tab-data Aucun enregistrement. ${passed} = Run Keyword And Return Status Element Should Not Contain css=div#adv-search-adv-fields select#type Décision DI Run Keyword If ${passed}==False Select From List By Label css=select#type Décision DI Run Keyword If ${passed}==False Input Text css=div#adv-search-adv-fields input#dossier ${di_lib} Run Keyword If ${passed}==False Click On Search Button Run Keyword If ${passed}==False Element Should Contain css=.tab-data Aucun enregistrement. ${passed} = Run Keyword And Return Status Element Should Not Contain css=div#adv-search-adv-fields select#type Avis Run Keyword If ${passed}==False Select From List By Label css=select#type Avis Run Keyword If ${passed}==False Input Text css=div#adv-search-adv-fields input#dossier ${di_lib} Run Keyword If ${passed}==False Click On Search Button Run Keyword If ${passed}==False Element Should Contain css=.tab-data Aucun enregistrement. Désactivation des options &{param_mode_service_consulte} = Create Dictionary ... libelle=option_mode_service_consulte ... valeur=false ... om_collectivite=agglo Gerer le paramètre par WS ${param_mode_service_consulte}