*** 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 Activer le mode service consulté ... AND Activation des options des task ... AND Activation des platau_type_demande Suite Teardown Run Keywords ... Desactivation des options des task ... AND Désactiver le mode service consulté ... AND For Suite Teardown *** Test Cases *** Paramétrage d'un sous dossier [Documentation] Paramètre un type de dossier pour un sous-dossier et un type de ... demande lié à ce type de dossier. Depuis la page d'accueil admin admin # Paramétrage d'un type de sous-dossier ${codeSsDossier} = Set Variable SDTT Set Suite Variable ${codeSsDossier} ${libelleSsDossier} = Set Variable Sous Dossier Test Tasks Set Suite Variable ${libelleSsDossier} @{di_compatibles} = Create List ... PCI - P - Permis de construire pour une maison individuelle et / ou ses annexes - Initial &{args_type_di} = Create Dictionary ... code=${codeSsDossier} ... libelle=${libelleSsDossier} ... dossier_autorisation_type_detaille=PCI (Permis de construire pour une maison individuelle et / ou ses annexes) ... sous_dossier=true ... suffixe=true ... lien_sous_dossier_type_di=@{di_compatibles} ... maj_da_localisation=false ${idSsDossierTestAjout} = Ajouter type de dossier d'instruction ${args_type_di} Set Suite Variable ${idSsDossierTestAjout} &{args_demande_type} = Create Dictionary ... code=TEST${codeSsDossier} ... libelle=Test Tasks sous dossier ... groupe=Autorisation ADS ... dossier_autorisation_type_detaille=PCI (Permis de construire pour une maison individuelle et / ou ses annexes) ... demande_nature=Dossier existant ... dossier_instruction_type=${libelleSsDossier} ... evenement=Notification de delai Ajouter un nouveau type de demande depuis le menu ${args_demande_type} # Ajout d'une famille et de natures de travaux pour vérifier la conservation de ces # natures lors de la création du sous-dossier &{famille_travaux} = Create Dictionary ... libelle=Restauration SSDS ... code=RES ${famille_travaux.id} = Ajouter la famille de travaux ${famille_travaux} Set Suite Variable ${famille_travaux} @{dit_nature_travaux} = Create List ... PCI - Initial &{nature_travaux_ssds1} = Create Dictionary ... libelle=Ravalement d'établissement public ssds ... code=RAEP ... famille_travaux=${famille_travaux.libelle} ${nature_travaux_ssds1.id} = Ajouter la nature de travaux ${nature_travaux_ssds1} ${dit_nature_travaux} Set Suite Variable ${nature_travaux_ssds1} &{nature_travaux2_ssds1} = Create Dictionary ... libelle=Ravalement d'établissement privé ssds ... code=RAEP ... famille_travaux=${famille_travaux.libelle} ${nature_travaux2_ssds1.id} = Ajouter la nature de travaux ${nature_travaux2_ssds1} ${dit_nature_travaux} Set Suite Variable ${nature_travaux2_ssds1} @{nature_travaux_ssds} = Create List ... ${nature_travaux_ssds1.famille_travaux} / ${nature_travaux_ssds1.libelle} ... ${nature_travaux2_ssds1.famille_travaux} / ${nature_travaux2_ssds1.libelle} # Ajout de la compatibilité avec le sous dossier pour une nature de travaux sur les deux @{dit_nature_travaux} = Create List ... PCI - Initial ... ${libelleSsDossier} Modifier la nature de travaux ${nature_travaux_ssds1.id} ${nature_travaux_ssds1} ${dit_nature_travaux} @{not_nature_travaux_ssds} = Create List ... ${nature_travaux2_ssds1.famille_travaux} / ${nature_travaux2_ssds1.libelle} @{nature_travaux_ssds} = Create List ... ${nature_travaux_ssds1.famille_travaux} / ${nature_travaux_ssds1.libelle} # Ajoute l'action et l'événement pour changer la prise en compte métier &{args_action} = Create Dictionary ... action=changer_pec_task ... libelle=Changer PeC Task ... regle_pec_metier=pec_metier Ajouter l'action depuis le menu ${args_action} @{etat_source} = Create List delai de notification envoye @{di_list} = Create List ... PCI - P - Initial ... - SDTT - ${libelleSsDossier} ${libellePecSsDossier} = Set Variable 306 - Prise en compte métier Sous dossier Set Suite Variable ${libellePecSsDossier} &{args_evenement} = Create Dictionary ... libelle=${libellePecSsDossier} ... etats_depuis_lequel_l_evenement_est_disponible=${etat_source} ... dossier_instruction_type=@{di_list} ... action=Changer PeC Task ... etat=delai de notification envoye ... pec_metier=Pris en compte ... commentaire=true Ajouter l'événement depuis le menu ${args_evenement} # Création d'un événement spécifique au sous-dossier &{args_evenement1} = Create Dictionary ... libelle=Test des sous-dossiers ... etats_depuis_lequel_l_evenement_est_disponible=${etat_source} ... dossier_instruction_type=@{di_list} Depuis la page d'accueil admin admin ${evenement_id} = Ajouter l'événement depuis le menu ${args_evenement1} Set Suite Variable ${taks_number} 306 Set Suite Variable ${acteur} taskSsDossierPlatau Set Suite Variable ${collectivite} LIBRECOM_taskSsDossierPlatau &{librecom_values} = Create Dictionary ... om_collectivite_libelle=${collectivite} ... departement=13 ... commune=${taks_number} ... insee=13${taks_number} ... direction_code=Notif${taks_number} ... direction_libelle=Direction de ${collectivite} ... direction_chef=Chef ... division_code=Task${taks_number} ... division_libelle=Division Task ... division_chef=Chef ... guichet_om_utilisateur_nom=Tasks Guichet ... guichet_om_utilisateur_email=task${taks_number}guichet@openads-test.fr ... guichet_om_utilisateur_login=task${taks_number}guichet ... guichet_om_utilisateur_pwd=task${taks_number}guichet ... instr_om_utilisateur_nom=Task Instr ... instr_om_utilisateur_email=task${taks_number}instr@openads-test.fr ... instr_om_utilisateur_login=task${taks_number}instr ... instr_om_utilisateur_pwd=task${taks_number}instr ... acteur=${acteur} Isolation d'un contexte ${librecom_values} # ajoute le paramètre 'acteur' à la collectivité/au service &{om_param} = Create Dictionary ... libelle=platau_acteur_service_consulte ... valeur=${acteur} ... om_collectivite=${collectivite} Gerer le paramètre par WS ${om_param} Vérification de l'ajout des tasks creation_DA, creation_DI, depot_DI et qualification_DI lors de l'ajout d'un dossier sous dossier d'instruction. [Documentation] Permet de vérifier le bon fonctionnement de la création des tâches lié à la création d'un dossier d'instruction ... Vérifie aussi qu'il n'y a pas de création d'autre tâche non concerné Depuis la page d'accueil admin admin # Récupère le payload de création DI ${json_payload} = Get File ${EXECDIR}${/}binary_files${/}json_payload_ref.txt ${json_payload} = Replace String ${json_payload} 3XY-DK4-7X 306-AAA-00 ${json_payload} = Replace String ${json_payload} 7XY-DK8-5X AAA-306-00 ${json_payload} = Replace String ${json_payload} 13055 13306 ${json_payload} = Replace String ${json_payload} SDF-ZER-74R ${acteur} ${json_payload} = Replace String ${json_payload} EF-DSQ-4512 ${acteur} ${json_payload} = Replace String ${json_payload} TEST300TASKPRENOM777 TEST306TASKNOM01 ${json_payload} = Replace String ${json_payload} TEST300TASKNOM0777 TEST306TASKPRENOM01 ${json_payload} = Replace String ${json_payload} PC0130552007777P0 PC0133062007777P0 ${json_payload} = Replace String ${json_payload} PC 013055 20 07777P0 PC 013306 20 07777P0 ${json_payload} = Replace String ${json_payload} "terrain_adresse_voie_numero": "", "terrain_adresse_voie_numero": "24", ${json_payload} = Replace String ${json_payload} "terrain_adresse_voie": "", "terrain_adresse_voie": "rue des marmottons", ${json_payload} = Replace String ${json_payload} "terrain_adresse_lieu_dit": "", "terrain_adresse_lieu_dit": "Le pré des marmottons", ${json_payload} = Replace String ${json_payload} "terrain_adresse_code_postal": "13306", "terrain_adresse_code_postal": "13306", ${json_payload} = Replace String ${json_payload} "terrain_adresse_localite": "", "terrain_adresse_localite": "TEST306AdresseLocalite", ${payload_dict} = To Json ${json_payload} # Préparation de la tâche de création du dossier ${task_values} = Create Dictionary ... type=create_DI_for_consultation ... json_payload=${json_payload} Ajouter la tâche par WS ${task_values} ${msg} = Déclencher le traitement des tâches par WS # Récupération du numéro de dossier ${search_values} = Create Dictionary ... source_depot=Plat'AU ... om_collectivite=${collectivite} ... particulier=TEST306TASKNOM01 Depuis le contexte du dossier d'instruction par la recherche avance ${search_values} ${collectivite} Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Page Should Contain Element css=#dossier_libelle ${di1} = Get Text css=#dossier_libelle ${di1_sans_espace} = Sans espace ${di1} &{donnees_techniques_values} = Create Dictionary ... enga_decla_lieu=TEST306engadelalieu ... enga_decla_date=${DATE_DDMMYYYY} Saisir les données techniques du DI ${di1} ${donnees_techniques_values} # On ferme l'overlay Click Element Until No More Element css=.ui-icon-closethick # Création, affichage d'un sous-dossier Ajouter le sous-dossier au dossier ${idSsDossierTestAjout} # Vérification du numéro de dossier Wait Until Element Contains css=#title > h2 Instruction > ${libelleSsDossier} > ${di1} > ${codeSsDossier}01 ${numSsDossier} = Set Variable ${di1} ${codeSsDossier}01 ${numSsDossier_sans_espace} = Sans espace ${numSsDossier} Element Should Contain css=#dossier_libelle ${numSsDossier} ${instr_pec} = Ajouter une instruction au DI ${numSsDossier} Test des sous-dossiers null sous_dossier null null # Ajout d'une instruction de prise en compte et vérification de la modification # sur le dossier d'instruction, ainsi que de la création de la tâche ${instr_pec} = Ajouter une instruction au DI ${numSsDossier} ${libellePecSsDossier} null sous_dossier null null commentaire sur la pec # Vérifcation d'existence du flux de sortie PEC Depuis le menu Moniteur Plat'AU # On ouvre la recherche Wait Until Element Is Visible css=div#adv-search-adv-fields input#dossier Wait Until Element Is Visible css=div#adv-search-adv-fields select#type # On remplit la recherche Input Text css=div#adv-search-adv-fields input#dossier ${numSsDossier_sans_espace} Select From List By Label css=div#adv-search-adv-fields select#type PeC consultation # On valide le formulaire de recherche Click On Search Button Element Should Contain css=td.col-1 a.lienTable PeC consultation Element Should Contain css=td.col-4 a.lienTable ${numSsDossier_sans_espace} ${task_id} = Get Text css=td.col-0 a.lienTable # On ouvre Click On Link PeC consultation # Vérification des valeurs de la lettre d'incompletude Open Fieldset task json_payload-calculee Element Should Contain css=pre#json_payload "dossier": "AAA-306-00" Element Should Contain css=pre#json_payload "dossier_consultation": "306-AAA-00" # Utilisation de l'action 997 pour ajouter l'external UID &{update_data} = Create Dictionary ... external_uid=306-PEC-01 &{validate_data} = Create Dictionary ... type=prise en compte ... state=à réaliser ${COOKIE} = Get Cookie ${SESSION_COOKIE} ${cookies} = Create Dictionary ${SESSION_COOKIE}=${COOKIE.value} ${session} = Set Variable ${PROJECT_NAME}_web_ihm Create Session ${session} ${PROJECT_URL} cookies=${cookies} ${headers} = Create Dictionary Content-Type=application/x-www-form-urlencoded ${response} = Post Request ${session} /app/index.php?module=form&obj=task&action=997&idx=${task_id} data=${update_data} headers=${headers} # Verification des Id tech sur le sous-dossier Depuis l'onglet des sous_dossiers du dossier d'instruction ${di1} Click On Link css=#sousform-sous_dossier .firstcol a[href$="idx=${numSsDossier_sans_espace}"] Page Should Contain Element css=#fieldset-form-sous_dossier-plat_au---identifiants-techniques Open Fieldset sous_dossier plat_au---identifiants-techniques Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Element Should Contain css=#fieldset-form-sous_dossier-plat_au---identifiants-techniques ${validate_data.type} Element Should Contain css=#fieldset-form-sous_dossier-plat_au---identifiants-techniques ${update_data.external_uid} Element Should Contain css=#fieldset-form-sous_dossier-plat_au---identifiants-techniques ${validate_data.state} # Verification des Id tech sur le dossier parent ${search_values} = Create Dictionary ... source_depot=Plat'AU ... om_collectivite=${collectivite} ... particulier=TEST306TASKNOM01 Depuis le contexte du dossier d'instruction par la recherche avance ${search_values} ${collectivite} Page Should Contain Element css=#fieldset-form-dossier_instruction-plat_au---identifiants-techniques Open Fieldset dossier_instruction plat_au---identifiants-techniques Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Element Should Contain css=#fieldset-form-dossier_instruction-plat_au---identifiants-techniques ${validate_data.type} Element Should Contain css=#fieldset-form-dossier_instruction-plat_au---identifiants-techniques ${update_data.external_uid} Element Should Contain css=#fieldset-form-dossier_instruction-plat_au---identifiants-techniques ${validate_data.state}