*** Settings *** Resource resources/resources.robot Suite Setup For Suite Setup Suite Teardown For Suite Teardown Documentation Tests sur les contacts (concessionnaires, ayants-droit, autres) *** Test Cases *** Constitution du jeu de données [Documentation] Création du jeu de données de base pour les tests de contact # Depuis la page d'accueil admin admin # Set Suite Variable ${TESTID} 112 # &{cimetiere01} = Create Dictionary ... cimetierelib=CIMETIERE${TESTID}-01 ... adresse1=RUE DE LA REPUBLIQUE ... adresse2= ... cp=99607 ... ville=LIBREVILLE ... observations= Ajouter le cimetière ${cimetiere01} Set Suite Variable ${cimetiere01} # &{zone01_cim01} = Create Dictionary ... cimetiere=${cimetiere01.cimetierelib} ... zonetype=CARRE ... zonelib=Z${TESTID}-01 Ajouter la zone ${zone01_cim01} Set Suite Variable ${zone01_cim01} # &{voie01_zone01_cim01} = Create Dictionary ... zone=${zone01_cim01.zonetype} ${zone01_cim01.zonelib} (${zone01_cim01.cimetiere}) ... voietype=ALLEE ... voielib=V${TESTID}-01 Ajouter la voie ${voie01_zone01_cim01} Set Suite Variable ${voie01_zone01_cim01} # &{type_de_sepulture_01} = Create Dictionary ... code=TDS-${TESTID}-01 ... libelle=Type de sépulture ${TESTID}-01 ${type_de_sepulture_01.id} = Ajouter le *type de sépulture* ${type_de_sepulture_01} Set Suite Variable ${type_de_sepulture_01} # &{concession01} = Create Dictionary ... famille=DURAND${TESTID} ... numero=12 ... cimetierelib=${cimetiere01.cimetierelib} ... zonelib=${zone01_cim01.zonetype} ${zone01_cim01.zonelib} ... voielib=${voie01_zone01_cim01.voietype} ${voie01_zone01_cim01.voielib} ... sepulturetype=${type_de_sepulture_01.libelle} ${concession01.id} = Ajouter la concession ${concession01} Set Suite Variable ${concession01} &{concession_nom_intel} = Create Dictionary ... famille=DUROND${TESTID}1 ... numero=23 ... cimetierelib=${cimetiere01.cimetierelib} ... zonelib=${zone01_cim01.zonetype} ${zone01_cim01.zonelib} ... voielib=${voie01_zone01_cim01.voietype} ${voie01_zone01_cim01.voielib} ... sepulturetype=${type_de_sepulture_01.libelle} ${concession_nom_intel.id} = Ajouter la concession ${concession_nom_intel} Set Suite Variable ${concession_nom_intel} &{concession05} = Create Dictionary ... famille=DUPONT${TESTID}04 ... numero=14 ... complement=A ... cimetierelib=${cimetiere01.cimetierelib} ... zonelib=${zone01_cim01.zonetype} ${zone01_cim01.zonelib} ... voielib=${voie01_zone01_cim01.voietype} ${voie01_zone01_cim01.voielib} ... nature_emplacement=concession ... typeconcession=Familiale ... terme=temporaire ... duree=20 ... datevente=20/03/2020 ... emplacement_date_terme=20/03/2040 ... duree_lettre=vingt ... sepulturetype=${type_de_sepulture_01.libelle} ${concession05_id} = Ajouter la concession ${concession05} Set Suite Variable ${concession05_id} Ajout de contacts sur une concession [Documentation] Ce test permet de vérifier l'ajout de contacts ... sur un emplacement. # Depuis la page d'accueil admin admin # &{contact01} = Create Dictionary ... titre=Monsieur ... nom=MOI ... marital=MOIDEUX ... datenaissance=01/01/2001 ... prenom=CMOI ... adresse1=ICI ... adresse2=LA ... cp=13013 ... ville=Marseille ... telephone1=0836646464 ... telephone2=0636646464 ... courriel=lecouriel@couriel.couriel ... dcd=Oui ... datedeces=01/01/2024 ... lieudeces=PLOPIPLOP ... parente=C LE OUI ... dateexhumation=05/05/2005 ... observation=C'est le contact ${contact01_id} = Ajouter le contact dans le contexte de l'emplacement ${contact01} ${concession01.id} concessionnaire Set Suite Variable ${contact01_id} &{contact02} = Create Dictionary ... titre=Monsieur ... nom=GONZOLA ... marital= ... datenaissance=01/01/2001 ... prenom=IGOR ... adresse1=ICI ... adresse2=LA ... cp=13013 ... ville=Marseille ... telephone1=0836646464 ... telephone2=0636646464 ... courriel=lecouriel@couriel.couriel ... dcd=Oui ... datedeces=01/01/2024 ... lieudeces=PLOPIPLOP ... parente=C LE OUI ... dateexhumation=05/05/2005 ... observation=C'est le contact ${contact02_id} = Ajouter le contact dans le contexte de l'emplacement ${contact02} ${concession01.id} concessionnaire Set Suite Variable ${contact02_id} Ajout d'un concessionnaire sur une concession [Documentation] Ce test permet de vérifier l'ajout d'un concessionnaire ... sur un emplacement. # Depuis la page d'accueil admin admin # &{concessionnaire} = Create Dictionary ... titre=Monsieur ... nom=MICHEL ... marital= ... prenom=HENRI ... datenaissance=10/01/1980 ... adresse1=12 RUE DE LA RÉPUBLIQUE ... cp=99678 ... ville=LIBREVILLE ... dcd=true ... telephone1=0123456789 ... courriel=mhenri@courriel.com &{concessionnaire_secondaire} = Create Dictionary ... titre=Monsieur ... nom=HENRI ... marital= ... prenom=MICHEL ... datenaissance=13/12/1989 ... adresse1=23 RUE DE LA LIBERTÉ ... adresse2=LA VILLE ... cp=01234 ... ville=LIBREBOURG= ${concessionnaire_secondaire.id} = Ajouter le concessionnaire dans le contexte de la concession ${concessionnaire_secondaire} ${concession01.id} Depuis le contexte de la concession ${concession01.id} Element Should Contain css=section#concession-informations-contacts h3 span.badge 3 Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Element Should Contain css=article#concession-informations-contact-${contact01_id} Monsieur CMOI MOIDEUX MOI Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Element Should Contain css=article#concession-informations-contact-${contact02_id} Monsieur IGOR GONZOLA Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Element Should Contain css=article#concession-informations-contact-${concessionnaire_secondaire.id} Monsieur MICHEL HENRI Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Element Should Contain css=article#concession-informations-contact-${concessionnaire_secondaire.id} Concessionnaire ${concessionnaire.id} = Ajouter le concessionnaire dans le contexte de la concession ${concessionnaire} ${concession01.id} Depuis le contexte de la concession ${concession01.id} Element Should Contain css=section#concession-informations-contacts h3 span.badge 4 Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Element Should Contain css=article#concession-informations-contact-${concessionnaire.id} Monsieur HENRI MICHEL Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Element Should Contain css=article#concession-informations-contact-${concessionnaire.id} Concessionnaire Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Element Should Contain css=article#concession-informations-contact-${concessionnaire.id} ${concessionnaire.adresse1} ${concessionnaire.cp} ${concessionnaire.ville} Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Element Should Contain css=article#concession-informations-contact-${concessionnaire.id} 0123456789 Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Element Should Contain css=article#concession-informations-contact-${concessionnaire.id} mhenri@courriel.com Click Element css=article#concession-informations-contact-${concessionnaire_secondaire.id} .article-footer .contact-link Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Element Should Be Visible css=#sousform-autorisation Element Should Contain css=.autorisation-form #autorisation ${concessionnaire_secondaire.id} Element Should Contain css=.autorisation-form #nom HENRI Element Should Contain css=.autorisation-form #prenom MICHEL Vérification du bon fonctionnement du nom intelligent pour les destinataires dans les courriers [Documentation] le nom intelligent consiste à afficher dans la liste déroulante du destinataire ... le nom d'usage si il est saisi sinon le nom de naissance Depuis la page d'accueil admin admin &{concessionnaire} = Create Dictionary ... titre=Monsieur ... nom=CONCNOMINTELLIGENT${TESTID} ... prenom=CONCJOJO${TESTID} ... datenaissance=10/01/1980 ... adresse1=12 RUE DE LA RÉPUBLIQUE ... cp=99678 ... ville=LIBREVILLE ${concessionnaire.id} = Ajouter le concessionnaire dans le contexte de la concession ${concessionnaire} ${concession_nom_intel.id} &{ayantdroit} = Create Dictionary ... titre=Monsieur ... nom=AYDNOMINTELLIGENT${TESTID} ... prenom=AYDPLOP${TESTID} ... datenaissance=10/01/1980 ... adresse1=12 RUE DE LA RÉPUBLIQUE ... cp=99678 ... ville=LIBREVILLE ${ayantdroit.id} = Ajouter l'ayant-droit dans le contexte de la concession ${ayantdroit} ${concession_nom_intel.id} &{autre} = Create Dictionary ... titre=Monsieur ... nom=AUTRENOMINTELLIGENT${TESTID} ... prenom=AUTREPLOPL${TESTID} ... datenaissance=10/01/1980 ... adresse1=12 RUE DE LA RÉPUBLIQUE ... cp=99678 ... ville=LIBREVILLE ${autre.id} = Ajouter un contact autre dans le contexte de la concession ${autre} ${concession_nom_intel.id} Depuis le formulaire d'ajout d'un courrier dans le contexte de la concession ${concession_nom_intel.id} @{expected_destinataire} = Create List ... Choisir destinataire ... (concessionnaire) ${concessionnaire.nom} ${concessionnaire.prenom} ... (ayantdroit) ${ayantdroit.nom} ${ayantdroit.prenom} ... (autre) ${autre.nom} ${autre.prenom} ${liste_destinataire} = Get List Items css=#destinataire List Should Contain Sub List ${expected_destinataire} ${liste_destinataire} ${marital} = Create Dictionary ... marital=NOMMARITAL${TESTID} Modifier le contact ${marital} ${concession_nom_intel.id} ${concessionnaire.id} Modifier le contact ${marital} ${concession_nom_intel.id} ${ayantdroit.id} Modifier le contact ${marital} ${concession_nom_intel.id} ${autre.id} # Vérif sur formulaire ajouter Depuis le formulaire d'ajout d'un courrier dans le contexte de la concession ${concession_nom_intel.id} @{expected_destinataire} = Create List ... Choisir destinataire ... (concessionnaire) ${marital.marital} ${concessionnaire.prenom} ... (ayantdroit) ${marital.marital} ${ayantdroit.prenom} ... (autre) ${marital.marital} ${autre.prenom} ${liste_destinataire} = Get List Items css=#destinataire List Should Contain Sub List ${expected_destinataire} ${liste_destinataire} Select From List By Label css=#destinataire (concessionnaire) ${marital.marital} ${concessionnaire.prenom} Select From List By Label css=#contexte autre Select From List By Index css=#lettretype 1 Click On Submit Button In Subform # Formulaire Consulter Element Should Contain css=#destinataire (concessionnaire) ${marital.marital} ${concessionnaire.prenom} Click On Back Button In Subform # Listing de courrier Element Should Contain css=.tab-data (concessionnaire) ${marital.marital} ${concessionnaire.prenom} Test modification nature contact ayant-droit vers concessionnaire [Documentation] Ce test vérifie qu'il est possible de modifier la nature ... d'un contact existant depuis ayant-droit vers concessionnaire ... et que cette modification est bien reflétée dans l'affichage # Préparation des données de test Depuis la page d'accueil admin admin # === ÉTAPE 1: Création des données de base === # Création du cimetière &{cimetiere_test} = Create Dictionary ... cimetierelib=CIMETIERE${TESTID}-TEST ... adresse1=RUE DU TEST ... adresse2= ... cp=99000 ... ville=VILLE-TEST ... observations=Cimetière pour test modification nature contact Ajouter le cimetière ${cimetiere_test} # Création de la zone &{zone_test} = Create Dictionary ... cimetiere=${cimetiere_test.cimetierelib} ... zonetype=CARRE ... zonelib=Z${TESTID}-TEST Ajouter la zone ${zone_test} # Création de la voie &{voie_test} = Create Dictionary ... zone=${zone_test.zonetype} ${zone_test.zonelib} (${zone_test.cimetiere}) ... voietype=ALLEE ... voielib=V${TESTID}-TEST Ajouter la voie ${voie_test} # Création du type de sépulture &{type_sepulture_test} = Create Dictionary ... code=TDS-${TESTID}-TEST ... libelle=Type de sépulture ${TESTID} TEST ${type_sepulture_test.id} = Ajouter le *type de sépulture* ${type_sepulture_test} # === ÉTAPE 2: Création de la concession === &{concession_test} = Create Dictionary ... famille=FAMILLE${TESTID}TEST ... numero=999 ... cimetierelib=${cimetiere_test.cimetierelib} ... zonelib=${zone_test.zonetype} ${zone_test.zonelib} ... voielib=${voie_test.voietype} ${voie_test.voielib} ... sepulturetype=${type_sepulture_test.libelle} ${concession_test.id} = Ajouter la concession ${concession_test} # === ÉTAPE 3: Ajout d'un contact ayant-droit === &{contact_test} = Create Dictionary ... titre=Monsieur ... nom=DUPONT ... marital= ... prenom=Jean ... datenaissance=15/05/1970 ... adresse1=123 rue de la Paix ... adresse2=Appartement 4B ... cp=99000 ... ville=VILLE-TEST ... telephone1=0123456789 ... telephone2=0987654321 ... courriel=jean.dupont@test.fr ... observation=Contact de test pour modification nature ${contact_test.id} = Ajouter l'ayant-droit dans le contexte de la concession ${contact_test} ${concession_test.id} # === ÉTAPE 4: Vérification de l'état initial (ayant-droit) === Depuis le contexte de la concession ${concession_test.id} ${prenom_upper} = Convert To Upper Case ${contact_test.prenom} Element Should Contain css=article#concession-informations-contact-${contact_test.id} ${contact_test.titre} ${prenom_upper} ${contact_test.nom} Element Should Contain css=article#concession-informations-contact-${contact_test.id} Ayant-droit # === ÉTAPE 5: Modification de la nature vers concessionnaire === &{modification_nature} = Create Dictionary ... nature=concessionnaire Depuis l'onglet 'contacts' de la concession ${concession_test.id} # On clique sur le résultat Click On Link ${contact_test.id} Click On Subform Portlet Action autorisation modifier Si "nature" existe dans "${modification_nature}" on execute "Select From List By Value" dans le formulaire Click On Submit Button In Subform Valid Message Should Contain In Subform Vos modifications ont bien été enregistrées. # === ÉTAPE 6: Vérification de la modification === # Retour à la vue principale de la concession pour vérifier l'affichage Depuis le contexte de la concession ${concession_test.id} # Vérification que le contact apparaît maintenant comme "Concessionnaire" ${prenom_upper} = Convert To Upper Case ${contact_test.prenom} Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Element Should Contain css=article#concession-informations-contact-${contact_test.id} ${contact_test.titre} ${prenom_upper} ${contact_test.nom} Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Element Should Contain css=article#concession-informations-contact-${contact_test.id} Concessionnaire Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Element Should Not Contain css=article#concession-informations-contact-${contact_test.id} Ayant-droit # Vérification supplémentaire en accédant au formulaire de consultation Depuis l'onglet 'contacts' de la concession ${concession_test.id} Click On Link ${contact_test.id} Element Should Be Visible css=#sousform-autorisation Element Should Contain css=.autorisation-form #autorisation ${contact_test.id} Element Should Contain css=.autorisation-form #nom ${contact_test.nom} Element Should Contain css=.autorisation-form #prenom ${prenom_upper} # Accès au mode modification pour vérifier que la nature est bien "concessionnaire" Click On Subform Portlet Action autorisation modifier List Selection Should Be nature concessionnaire Vérification du bon fonctionnement des champs de fusion d'autorisation [Documentation] ... Depuis la page d'accueil admin admin Depuis le listing des lettres-types # On désactive la lettre type Click Element link:titre_de_recettes Sleep 5 ${lettretype_id} = Get Text css=#id Modifier la lettre-type ${lettretype_id} null null null null false null null # On copie la lettre type Click On Form Portlet Action om_lettretype copier modale Click Element css=.ui-dialog .ui-dialog-buttonset .ui-button-text-only Click On Back Button # On accède à la copie de la letttre type et on saisit les champs de fusion à tester Click Element link:copie du ${DATE_FORMAT_DD/MM/YYYY} Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Click On Form Portlet Action om_lettretype modifier # On saisit les champs de fusion d'autorisation ${champs_fusions_autorisation} = Set Variable [autorisation.nature] [autorisation.titre] [autorisation.nom] [autorisation.prenom] [autorisation.datenaissance] [autorisation.adresse1] [autorisation.cp] [autorisation.ville] [autorisation.nom_intelligent] Saisir la lettre-type null courrier_test_autorisation_${TESTID} null ${champs_fusions_autorisation} null true null null Click On Submit Button Valid Message Should Contain Vos modifications ont bien été enregistrées. # &{concessionnaire01} = Create Dictionary ... titre=Monsieur ... nom=MICHEL ... marital=JEAN ... prenom=HENRI ... datenaissance=10/01/1980 ... adresse1=12 RUE DE LA RÉPUBLIQUE ... cp=99678 ... ville=LIBREVILLE Ajouter le concessionnaire dans le contexte de la concession ${concessionnaire01} ${concession05_id} # On ajoute un courrier &{courrier_edition} = Create Dictionary ... datecourrier=04/07/2019 ... contexte=autre ... lettretype=titre_de_recettes courrier_test_autorisation_${TESTID} Ajouter le courrier dans le contexte de la concession ${courrier_edition} ${concession05_id} # On vérifie que les champs de fusion fonctionnent Depuis l'onglet 'courrier' de la concession ${concession05_id} Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Click Element link:titre_de_recettes Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Click On SubForm Portlet Action courrier modifier &{courrier_edition} = Create Dictionary ... destinataire=(concessionnaire) JEAN HENRI Saisir les valeurs dans le formulaire du courrier ${courrier_edition} Click On Submit Button In Subform Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Click On SubForm Portlet Action courrier pdf-edition new_window ${contenu_pdf} = Create List concessionnaire ${concessionnaire01.titre} ${concessionnaire01.nom} ${concessionnaire01.prenom} ${concessionnaire01.datenaissance} ${concessionnaire01.adresse1} ${concessionnaire01.cp} ${concessionnaire01.ville} ${concessionnaire01.marital} Vérifier Que Le PDF Contient Des Strings ${OM_PDF_TITLE} ${contenu_pdf}