*** Settings *** Documentation Test les dépôts de demandes # On inclut les mots-clefs Resource resources/resources.robot # On ouvre/ferme le navigateur au début/à la fin du Test Suite. Suite Setup For Suite Setup Suite Teardown For Suite Teardown *** Test Cases *** TNR Vérification du numéro de siret # On se connecte à l'application Depuis la page d'accueil admin admin Go To Submenu In Menu guichet_unique nouveau-dossier # Informations à saisir &{args_demande} = Create Dictionary ... dossier_autorisation_type_detaille=PCI - Permis de construire pour une maison individuelle et / ou ses annexes ... om_collectivite=MARSEILLE &{args_petitionnaire} = Create Dictionary ... qualite=personne morale ... personne_morale_denomination=Notaire&Co ... personne_morale_raison_sociale=Société ... personne_morale_civilite=Monsieur ... personne_morale_nom=Martin ... personne_morale_prenom=Nicolas ... personne_morale_siret=12345678912345 ... om_collectivite=MARSEILLE # On remplit les champs de la demande Saisir la demande ${args_demande} # On ajoute le pétitionnaire Click Element Until New Element add_petitionnaire_principal css=.ui-widget-overlay # Contrôle du numéro siret Select From List By Label css=#qualite personne morale # On saisi un numéro siret qui n'a pas 14 caractères Input Text css=#personne_morale_siret 123456789 Click Element css=#sousform-petitionnaire input[value="Ajouter le demandeur"] # Vérification du message d'erreur Error Message Should Contain Le champ siret doit contenir 14 caractères. # On ferme l'overlay Click Element Until No More Element css=.ui-icon-closethick Ajouter le demandeur petitionnaire_principal ${args_petitionnaire} Click On Submit Button TNR la date de dépôt ne doit pas être supérieur à la date du jour [Documentation] Ce test vérifie que si dans le formualire de nouvelle demande ... l'utilisateur à saisi une date de demande dans le futur un message d'erreur ... s'affiche et ses modifications ne sont pas enregistrées Depuis la page d'accueil guichet guichet ${demain} = Add Time To Date ${DATE_DDMMYYYY} 1 days %d/%m/%Y True %d/%m/%Y &{args_demande} = Create Dictionary ... dossier_autorisation_type_detaille=PCI - Permis de construire pour une maison individuelle et / ou ses annexes ... date_demande=${demain} &{args_petitionnaire} = Create Dictionary ... qualite=personne morale ... personne_morale_denomination=Notaire&Co ... personne_morale_raison_sociale=Société ... personne_morale_civilite=Monsieur ... personne_morale_nom=Martin ... personne_morale_prenom=Nicolas ... personne_morale_siret=12345678912345 # On remplit les champs de la demande Go To Submenu In Menu guichet_unique nouveau-dossier Saisir la demande ${args_demande} Ajouter le demandeur petitionnaire_principal ${args_petitionnaire} Click On Submit Button Error Message Should Contain La date de demande ne peut pas être superieure à la date du jour. TNR vérification utilisation simple de département Corse (2A) [Documentation] Permet la vérification de l'utilisation du département Corse (2A) et de son bon fonctionnement # Activation du paramètre option dossier commune &{param_division} = Create Dictionary ... libelle=option_dossier_commune ... valeur=true ... om_collectivite=agglo Gerer le paramètre par WS ${param_division} # Activation de l'option dossier saisie numero &{param_values} = Create Dictionary ... libelle=option_dossier_saisie_numero ... valeur=true ... om_collectivite=agglo Gerer le paramètre par WS ${param_values} Depuis la page d'accueil admin admin # Ajouter commune Corse 2A &{corse_commune} = Create Dictionary ... typecom=COM ... com=2A390 ... reg=12 ... dep=2A ... arr=645 ... libelle=Corse Ajouter commune avec dates validité ${corse_commune} # Ajouter une demande &{args_demande} = Create Dictionary ... dossier_autorisation_type_detaille=Permis de construire pour une maison individuelle et / ou ses annexes ... demande_type=Dépôt Initial ... commune=2A390 - Corse ... terrain_adresse_code_postal=2A390 ... om_collectivite=MARSEILLE &{args_petitionnaire} = Create Dictionary ... om_collectivite=MARSEILLE ... particulier_nom=Dada ... particulier_prenom=Idi Amin ${new_dossier} = Ajouter la demande par WS ${args_demande} ${args_petitionnaire} Depuis le listing dossier_instruction Input Text css=div#adv-search-adv-fields input#dossier ${new_dossier} Click On Search Button # Vérification que le dossier à bien été enregistrer et que les numero de dossier et la localisation # correspondent bien aux données saisis précédemment Element Should Contain css=#tab-dossier_instruction table.tab-tab tbody td.col-3 ${new_dossier} Click Element css=#tab-dossier_instruction table.tab-tab tbody td.col-3 a ${get_num_dossier} = Get Text dossier_libelle Should Be Equal ${new_dossier} ${get_num_dossier} Wait Until Element Contains css=.localisation-terrain-adresse ${args_demande.terrain_adresse_code_postal} Reset Params - TNR vérification utilisation de département Corse (2A) # Désactivation du paramètre option dossier commune &{param_division} = Create Dictionary ... libelle=option_dossier_commune ... valeur=false ... om_collectivite=agglo Gerer le paramètre par WS ${param_division} # Désactivation de l'option dossier saisie numero &{param_values} = Create Dictionary ... libelle=option_dossier_saisie_numero ... valeur=false ... om_collectivite=agglo Gerer le paramètre par WS ${param_values} TNR Isolation du contexte du département Corse (2A) Depuis la page d'accueil admin admin &{isolation_values} = Create Dictionary ... om_collectivite_libelle=AJACCIO ... departement=02A ... commune=004 ... insee=2A004 ... direction_code=A ... direction_libelle=Direction de Ajaccio ... direction_chef=Chef ... division_code=A ... division_libelle=Division Ajaccio ... division_chef=Chef ... guichet_om_utilisateur_nom=Guichet corse ... guichet_om_utilisateur_email=guichet.corse@openads-test.fr ... guichet_om_utilisateur_login=gcorse ... guichet_om_utilisateur_pwd=gcorse ... instr_om_utilisateur_nom=User Ajaccio ... instr_om_utilisateur_email=user.ajaccio@openads-test.fr ... instr_om_utilisateur_login=uajaccio ... instr_om_utilisateur_pwd=uajaccio Isolation d'un contexte ${isolation_values} #-- ajouter manuellement une commune &{expiredcom_values} = Create Dictionary ... typecom=COM ... com=2A001 ... reg=2A ... dep=2A ... arr=001 ... tncc=0 ... ncc=AFA ... nccenr=afa ... libelle=Afa ... can=2A ... comparent= ... om_validite_debut=01/01/2020 Ajouter commune avec dates validité ${expiredcom_values} #-- ajouter manuellement une commune &{expiredcom_values} = Create Dictionary ... typecom=COM ... com=2A004 ... reg=2A ... dep=2A ... arr=004 ... tncc=0 ... ncc=AJACCIO ... nccenr=ajaccio ... libelle=Ajaccio ... can=2A ... comparent= Ajouter commune avec dates validité ${expiredcom_values} # pour l'utilisateur admin &{param_commune} = Create Dictionary ... libelle=option_dossier_commune ... valeur=true ... om_collectivite=agglo Gerer le paramètre par WS ${param_commune} # pour les autres utilisateurs &{param_commune} = Create Dictionary ... libelle=option_dossier_commune ... valeur=true ... om_collectivite=AJACCIO Gerer le paramètre par WS ${param_commune} # En tant que guichet unique de AJACCIO Depuis la page d'accueil gcorse gcorse # limiter les communes associables à LIBRECOM &{param_commune} = Create Dictionary ... libelle=param_communes ... valeur=2A001,2A004,2A390 ... om_collectivite=AJACCIO Gerer le paramètre par WS ${param_commune} # à l'ajout d'un dossier # vérifier que les communes non valides ne soient pas sélectionnables Depuis le contexte de nouvelle demande via l'URL Wait Until Element Is Visible commune_chosen Select From Chosen List Should Not Contain commune 13905 - LibreCom 5e Arrondissement Click Element css=#commune_chosen .info-16.chosen-tooltip Select From Chosen List Should Contain commune 2A004 - Ajaccio Click Element css=#commune_chosen .info-16.chosen-tooltip Select From Chosen List commune 2A004 - Ajaccio Select From Chosen List dossier_autorisation_type_detaille DP - Déclaration préalable Sleep 2 # obligation d'attendre car lors d'un changement de type de dossier il y a une temporisation JS d'une seconde Wait Until Element Is Visible css=input#date_demande Input Text until text is correct css=input#date_demande ${DATE_FORMAT_DD/MM/YYYY} Simulate Event css=input#date_demande change &{args_petitionnaire} = Create Dictionary ... particulier_civilite=Monsieur ... particulier_nom=DURAND Ajouter le demandeur petitionnaire_principal ${args_petitionnaire} Click On Submit Button Click Element link_demande_dossier_instruction Wait Until Element Is Visible dossier_libelle ${num_dossier} = Get Text dossier_libelle Page should contain commune Ajaccio # En tant que guichet unique de AJACCIO Depuis la page d'accueil uajaccio uajaccio # On affiche le listing des dossiers d'instruction Go To Submenu In Menu instruction dossier_instruction_recherche # On fait une recherche sur le libellé du DI Input Text css=div#adv-search-adv-fields input#dossier ${num_dossier} # On valide le formulaire de recherche Click On Search Button Page should contain commune Ajaccio Depuis la page d'accueil admin admin ${code_service1} = Set Variable 2A ${libelle_service1} = Set Variable TEST2AService &{args_service} = Create Dictionary ... abrege=${code_service1} ... libelle=${libelle_service1} ... edition=Consultation - Demande d'avis ... om_collectivite=AJACCIO ... service_type=openADS ... generate_edition=true Gerer le service par WS ${args_service} # Ajout d'une consultation Ajouter une consultation depuis un dossier ${num_dossier} ${code_service1} - ${libelle_service1} # instruction du dossier Ajouter une instruction au DI ${num_dossier} accepter un dossier sans réserve Les dossiers liés géograhiquement sont filtrés par commune et vérification de la liaison avec les DI [Documentation] Ce test case a pour but de vérifier que les dossiers liés géographiquement ... sont bien filtrés par commune, ainsi que par collectivité/service ... et de tester l'ajout de références cadastrales à des dossiers existants # Activation du paramètre permettant d'accéder au champ commune &{param_values} = Create Dictionary ... libelle=option_dossier_commune ... valeur=true ... om_collectivite=agglo Gerer le paramètre par WS ${param_values} Depuis la page d'accueil admin admin # communes &{com_mars_1_values} = Create Dictionary ... typecom=COM ... com=13001 ... reg=13 ... dep=13 ... arr=001 ... tncc=0 ... ncc=Mars1 ... nccenr=Mars1 ... libelle=Marseille 1er ... can=1 ... comparent= Ajouter commune avec dates validité ${com_mars_1_values} &{com_mars_2_values} = Create Dictionary ... typecom=COM ... com=13002 ... reg=13 ... dep=13 ... arr=002 ... tncc=0 ... ncc=Mars2 ... nccenr=Mars2 ... libelle=Marseille 2ème ... can=1 ... comparent= Ajouter commune avec dates validité ${com_mars_2_values} &{com_allauch_values} = Create Dictionary ... typecom=COM ... com=13190 ... reg=13 ... dep=13 ... arr=000 ... tncc=0 ... ncc=Allauch ... nccenr=Allauch ... libelle=Allauch ... can=1 ... comparent= Ajouter commune avec dates validité ${com_allauch_values} &{args_petitionnaire} = Create Dictionary ... particulier_nom=Rick ... particulier_prenom=Pat ... om_collectivite=MARSEILLE # Création du Dossier 1 sans référence cadastrale &{args_demande_1} = Create Dictionary ... dossier_autorisation_type_detaille=Permis de construire pour une maison individuelle et / ou ses annexes ... demande_type=Dépôt Initial ... om_collectivite=MARSEILLE ... commune=13001 - Marseille 1er ${libelle_di_1} = Ajouter la demande par WS ${args_demande_1} ${args_petitionnaire} # Création du Dossier 2 avec référence cadastrale 0000A0001 @{ref_cad_2} = Create List 000 0A 0001 &{args_demande_2} = Create Dictionary ... dossier_autorisation_type_detaille=Permis de construire pour une maison individuelle et / ou ses annexes ... demande_type=Dépôt Initial ... terrain_references_cadastrales=${ref_cad_2} ... om_collectivite=MARSEILLE ... commune=13001 - Marseille 1er ${libelle_di_2} = Ajouter la demande par WS ${args_demande_2} ${args_petitionnaire} # En tant qu'Instructeur, compléter le Dossier 1 en ajoutant la même référence cadastrale que le Dossier 2 Depuis le contexte du dossier d'instruction ${libelle_di_1} Click On Form Portlet Action dossier_instruction modifier Open Fieldset dossier_instruction localisation Wait Until Element Is Visible css=.reference_cadastrale_custom_fields Saisir les références cadastrales ${ref_cad_2} Click On Submit Button # Préparation des libellés sans P0 pour les vérifications des DA ${libelle_di_1_noP0} = Replace String Using Regexp ${libelle_di_1} P0$ ${EMPTY} ${libelle_di_2_noP0} = Replace String Using Regexp ${libelle_di_2} P0$ ${EMPTY} # Dans le Dossier 1, vérifier que le Dossier 2 apparaît dans les dossiers liés géographiquement Depuis l'onglet Dossiers Liés du dossier d'instruction ${libelle_di_1} Element Should Contain sousform-dossier_lies_geographiquement ${libelle_di_2_noP0} # Dans le Dossier 2, vérifier que le Dossier 1 apparaît dans les dossiers liés géographiquement Depuis l'onglet Dossiers Liés du dossier d'instruction ${libelle_di_2} Element Should Contain sousform-dossier_lies_geographiquement ${libelle_di_1_noP0} # Création du Dossier 3 avec référence cadastrale 0000A0002 @{ref_cad_3} = Create List 000 0A 0002 &{args_demande_3} = Create Dictionary ... dossier_autorisation_type_detaille=Permis de construire pour une maison individuelle et / ou ses annexes ... demande_type=Dépôt Initial ... terrain_references_cadastrales=${ref_cad_3} ... om_collectivite=MARSEILLE ... commune=13002 - Marseille 2ème ${libelle_di_3} = Ajouter la demande par WS ${args_demande_3} ${args_petitionnaire} # Désactivation de la commune pour que ça ne soit pas pris en compte dans les première vérification &{param_values} = Create Dictionary ... libelle=option_dossier_commune ... valeur=false ... om_collectivite=agglo Gerer le paramètre par WS ${param_values} ${libelle_di_3_noP0} = Replace String Using Regexp ${libelle_di_3} P0$ ${EMPTY} # En tant qu'Instructeur, vérifier que le Dossier 3 n'affiche aucun dossier lié Depuis la page d'accueil instr instr Depuis l'onglet Dossiers Liés du dossier d'instruction ${libelle_di_3} Element Should Not Contain sousform-dossier_lies_geographiquement ${libelle_di_1_noP0} Element Should Not Contain sousform-dossier_lies_geographiquement ${libelle_di_2_noP0} # En tant qu'Instructeur, modifier le Dossier 2 pour lui ajouter également la référence cadastrale du Dossier 3 # Le Dossier 2 doit avoir les deux références cadastrales : 0000A0001 et 0000A0002 # Activation de la commune pour que la modification n'efface pas la commune du dossier 2 &{param_values} = Create Dictionary ... libelle=option_dossier_commune ... valeur=true ... om_collectivite=agglo Gerer le paramètre par WS ${param_values} @{ref_cad_2_et_3} = Create List 000 0A 0001 A 0002 Depuis le contexte du dossier d'instruction ${libelle_di_2} Click On Form Portlet Action dossier_instruction modifier Open Fieldset dossier_instruction localisation Wait Until Element Is Visible css=.reference_cadastrale_custom_fields Saisir les références cadastrales ${ref_cad_2_et_3} Click On Submit Button # Désactivation de la commune pour que ça ne soit pas pris en compte dans les première vérification &{param_values} = Create Dictionary ... libelle=option_dossier_commune ... valeur=false ... om_collectivite=agglo Gerer le paramètre par WS ${param_values} # Dans le Dossier 2, vérifier que le Dossier 3 apparaît désormais dans les dossiers liés Depuis l'onglet Dossiers Liés du dossier d'instruction ${libelle_di_2} Element Should Contain sousform-dossier_lies_geographiquement ${libelle_di_1_noP0} Element Should Contain sousform-dossier_lies_geographiquement ${libelle_di_3_noP0} # Dans le Dossier 3, vérifier que le Dossier 2 apparaît dans les dossiers liés Depuis l'onglet Dossiers Liés du dossier d'instruction ${libelle_di_3} Element Should Contain sousform-dossier_lies_geographiquement ${libelle_di_2_noP0} Element Should Not Contain sousform-dossier_lies_geographiquement ${libelle_di_1_noP0} # Depuis le Dossier 1, vérifier qu'il ne fait pas apparaître le Dossier 3 # (le Dossier 1 ne partage aucune parcelle commune avec le Dossier 3) Depuis l'onglet Dossiers Liés du dossier d'instruction ${libelle_di_1} Element Should Contain sousform-dossier_lies_geographiquement ${libelle_di_2_noP0} Element Should Not Contain sousform-dossier_lies_geographiquement ${libelle_di_3_noP0} Depuis la page d'accueil admin admin # Vérification du filtrage par commune &{param_values} = Create Dictionary ... libelle=option_dossier_commune ... valeur=true ... om_collectivite=agglo Gerer le paramètre par WS ${param_values} @{ref_cad} = Create List 000 0A 0001 &{args_demande_4} = Create Dictionary ... dossier_autorisation_type_detaille=Permis de construire pour une maison individuelle et / ou ses annexes ... demande_type=Dépôt Initial ... terrain_references_cadastrales=${ref_cad} ... om_collectivite=ALLAUCH ... commune=13001 - Marseille 1er ${libelle_di_4} = Ajouter la demande par WS ${args_demande_4} ${args_petitionnaire} &{args_demande_5} = Create Dictionary ... dossier_autorisation_type_detaille=Permis de construire pour une maison individuelle et / ou ses annexes ... demande_type=Dépôt Initial ... terrain_references_cadastrales=${ref_cad} ... om_collectivite=ALLAUCH ... commune=13190 - Allauch ${libelle_di_5} = Ajouter la demande par WS ${args_demande_5} ${args_petitionnaire} ${libelle_di_4_noP0} = Replace String Using Regexp ${libelle_di_4} P0$ ${EMPTY} ${libelle_di_5_noP0} = Replace String Using Regexp ${libelle_di_5} P0$ ${EMPTY} Depuis l'onglet Dossiers Liés du dossier d'instruction ${libelle_di_1} Element Should Not Contain sousform-dossier_lies_geographiquement ${libelle_di_4_noP0} Element Should Not Contain sousform-dossier_lies_geographiquement ${libelle_di_5_noP0} Depuis l'onglet Dossiers Liés du dossier d'instruction ${libelle_di_2} Element Should Not Contain sousform-dossier_lies_geographiquement ${libelle_di_3_noP0} Element Should Not Contain sousform-dossier_lies_geographiquement ${libelle_di_4_noP0} Element Should Not Contain sousform-dossier_lies_geographiquement ${libelle_di_5_noP0} Depuis l'onglet Dossiers Liés du dossier d'instruction ${libelle_di_3} Element Should Not Contain sousform-dossier_lies_geographiquement ${libelle_di_1_noP0} Element Should Not Contain sousform-dossier_lies_geographiquement ${libelle_di_2_noP0} Element Should Not Contain sousform-dossier_lies_geographiquement ${libelle_di_4_noP0} Element Should Not Contain sousform-dossier_lies_geographiquement ${libelle_di_5_noP0} Depuis l'onglet Dossiers Liés du dossier d'instruction ${libelle_di_4} Element Should Not Contain sousform-dossier_lies_geographiquement ${libelle_di_1_noP0} Element Should Not Contain sousform-dossier_lies_geographiquement ${libelle_di_2_noP0} Element Should Not Contain sousform-dossier_lies_geographiquement ${libelle_di_3_noP0} Element Should Not Contain sousform-dossier_lies_geographiquement ${libelle_di_5_noP0} Depuis l'onglet Dossiers Liés du dossier d'instruction ${libelle_di_5} Element Should Not Contain sousform-dossier_lies_geographiquement ${libelle_di_1_noP0} Element Should Not Contain sousform-dossier_lies_geographiquement ${libelle_di_2_noP0} Element Should Not Contain sousform-dossier_lies_geographiquement ${libelle_di_3_noP0} Element Should Not Contain sousform-dossier_lies_geographiquement ${libelle_di_4_noP0} # Vérification de la prise en compte de la ref cadastrale sur 8 caractères @{ref_cad} = Create List 000 A 0001 Depuis le contexte du dossier d'instruction ${libelle_di_1} Click On Form Portlet Action dossier_instruction modifier Open Fieldset dossier_instruction localisation Wait Until Element Is Visible css=.reference_cadastrale_custom_fields Saisir les références cadastrales ${ref_cad} Click On Submit Button Depuis l'onglet Dossiers Liés du dossier d'instruction ${libelle_di_1} Element Should Contain sousform-dossier_lies_geographiquement ${libelle_di_2_noP0} Depuis l'onglet Dossiers Liés du dossier d'instruction ${libelle_di_2} Element Should Contain sousform-dossier_lies_geographiquement ${libelle_di_1_noP0} Suppression des paramètres &{param_args} = Create Dictionary ... delete=true ... libelle=option_dossier_saisie_numero ... om_collectivite=agglo Gerer le paramètre par WS ${param_args} &{param_args} = Create Dictionary ... delete=true ... libelle=option_dossier_commune ... om_collectivite=agglo Gerer le paramètre par WS ${param_args}