*** Settings *** Documentation Test du parametrage d'une unite Resource resources/resources.robot Suite Setup For Suite Setup Suite Teardown For Suite Teardown *** Test Cases *** Constitution du jeu de données [Documentation] L'objet de ce 'Test Case' est de constituer un jeu de ... données cohérent pour les scénarios fonctionnels qui suivent. Depuis la page d'accueil admin admin Listing des unités [Documentation] L'objet de ce TestCase est de vérifier l'intégration du ... listing des enregistrements de type 'unite'. # le lien est présent dans le menu Depuis l'écran 'Administration & Paramétrage' Element Should Contain css=#settings a.unite unité # le lien amène sur la page correcte Click Element css=#settings a.unite Le titre de la page doit être Administration & Paramétrage > Élection > Unité La page ne doit pas contenir d'erreur # le mot clé raccourci amène sur la page correcte Depuis le listing des unités Le titre de la page doit être Administration & Paramétrage > Élection > Unité Ajout d'une unité [Documentation] L'objet de ce TestCase est de vérifier l'intégration de ... l'action 'ajouter' depuis le contexte 'unite'. Depuis le listing des unités Click On Add Button Le titre de la page doit être Administration & Paramétrage > Élection > Unité La page ne doit pas contenir d'erreur &{unite} = Create Dictionary ... libelle=commune ... type_unite=Commune ... perimetre=true ... type_unite_contenu=Bureau de vote ... ordre=99 ... code_unite=99 ${idUnite} = Ajouter unite ${unite} Set Suite Variable ${idUnite} Element Should Contain In Subform css=div.message enregistrées type_unite_contenu [Documentation] L'objet de ce test case est de verifier que le select, ... du champs type unite contenu, récupère les valeurs désirées, en fonction ... du champ type unite et que lorsqu'un type est sélectionné la case périmètre ... l'est aussi. La vérification et fait pour l'ajout et la modification # liste des types pour la vérification &{liste_element} = BuiltIn.Create Dictionary ... Bureau de vote ... Mairie ... Arrondissement ... Circonscription ... Commune ... Canton ... Departement ... Region &{liste_vide} = BuiltIn.Create Dictionary ... Choisir type_unite_contenu= Depuis le formulaire d'ajout d'une unité # On saisit des valeurs Select From List By Label type_unite Bureau de vote # le bureau de vote ayant la hierarchie la plus faible la liste doit être vide Select List Should Be type_unite_contenu ${liste_vide} La page ne doit pas contenir d'erreur # On saisit des valeurs Select From List By Label type_unite Election # la liste doit contenir tous les autres champs Select List Should Contain List type_unite_contenu ${liste_element} La page ne doit pas contenir d'erreur # On saisit le type contenu Select From List By Label type_unite_contenu Bureau de vote # On vérifie que la case perimetre est coché Checkbox Should Be Selected perimetre # On desaisit le type Select From List By Label type_unite_contenu Choisir type_unite_contenu # On vérifie que la case perimetre est coché Checkbox Should Not Be Selected perimetre # Vérification en modification Depuis le contexte unite ${idUnite} # On clique sur le bouton modifier Click On Form Portlet Action unite modifier # On saisit des valeurs Select From List By Label type_unite Bureau de vote # le bureau de vote ayant la hierarchie la plus faible la liste doit être vide Select List Should Be type_unite_contenu ${liste_vide} La page ne doit pas contenir d'erreur # On saisit des valeurs Select From List By Label type_unite Election # la liste doit contenir tous les autres champs Select List Should Contain List type_unite_contenu ${liste_element} La page ne doit pas contenir d'erreur # On saisit le type contenu Select From List By Label type_unite_contenu Bureau de vote # On vérifie que la case perimetre est coché Checkbox Should Be Selected perimetre # On desaisit le type Select From List By Label type_unite_contenu Choisir type_unite_contenu # On vérifie que la case perimetre est coché Checkbox Should Not Be Selected perimetre Avertissement si une unité de même libellé existe déjà [Documentation] L'objet de ce test case est de vérifier qu'un message d'avertissement ... est bien affiché lorsque l'on crée une unité ayant le même nom qu'une unité déjà ... existante # creation du nouvelle unité ayant le même nom que l'unité créée dans le premier test &{unite} = BuiltIn.Create Dictionary ... libelle=commune ... type_unite=Commune ... perimetre=true ... type_unite_contenu=Bureau de vote ... ordre=99 ${idUnite} = Ajouter unite ${unite} La page ne doit pas contenir d'erreur Message Should Contain ATTENTION : une unité portant ce nom existe déjà ! Vérification en cas de modification des unités [Documentation] L'objet de ce test case est de s'assurer que toutes les vérifications ... s'effectue correctement en cas de modification des unités Depuis la page d'accueil admin admin &{unite} = BuiltIn.Create Dictionary ... libelle=commune_test_verif ... ordre=1 ... type_unite=Commune ... code_unite=60 ${idUniteEnfant} = Ajouter unite ${unite} &{unite} = BuiltIn.Create Dictionary ... libelle=perimetre_test_verif ... ordre=2 ... type_unite=Region ... code_unite=61 ... type_unite_contenu=Commune ${idUniteParent} = Ajouter unite ${unite} Ajouter lien_unite 61 - perimetre_test_verif 60 - commune_test_verif # Si l'unité contiens d'autres unité la case périmètre ne doit pas être décochée Depuis le contexte unite ${idUniteParent} Click On Form Portlet Action unite modifier &{unite} = BuiltIn.Create Dictionary ... perimetre=false Saisir unite ${unite} Click On Submit Button Message Should Contain L'unité est un périmètre la case périmètre ne doit pas être décochée # Si l'unité contiens d'autres unité le type d'unité contenu ne doit pas être modifiable &{unite} = BuiltIn.Create Dictionary ... perimetre=true ... type_unite_contenu=Bureau de vote Saisir unite ${unite} Click On Submit Button Message Should Contain L'unité contiens d'autres unité, son type d'unité contenu ne doit pas être modifié # Si l'unité contiens d'autres unité son type d'unité peut être modifié si il respecte la hierarchie &{unite} = BuiltIn.Create Dictionary ... type_unite=Departement ... type_unite_contenu=Commune Saisir unite ${unite} Click On Submit Button Valid Message Should Contain Vos modifications ont bien été enregistrées. # Si l'unité est contenu par d'autres unité son type d'unité ne peut pas être modifié Depuis le contexte unite ${idUniteEnfant} Click On Form Portlet Action unite modifier &{unite} = BuiltIn.Create Dictionary ... type_unite=Departement Saisir unite ${unite} Click On Submit Button Message Should Contain L'unité est contenues par d'autres unité, son type ne doit pas être modifié # Si le code de l'unité n'est pas unique &{unite} = BuiltIn.Create Dictionary ... code_unite=61 Saisir unite ${unite} Click On Submit Button Message Should Contain Le code de l'unité doit être unique Code unité obligatoire pour les unités de type bureau de vote [Documentation] L'objet de ce test case est de vérifier que si l'unité à un type ... ayant un comportement de bureau de vote alors la saisie d'un code unité est ... obligatoire Depuis le formulaire d'ajout d'une unité &{unite} = BuiltIn.Create Dictionary ... libelle=bureau ... ordre=1 ... type_unite=Bureau de vote Saisir unite ${unite} # Vérifie que le champ code unité est marqué comme obligatoire Wait Until Element Contains lib-code_unite code unite * # Modification du type le champ ne doit plus être affiché commme obligatoire &{unite} = BuiltIn.Create Dictionary ... type_unite=Commune Saisir unite ${unite} Wait Until Element Contains lib-code_unite code unite # Si l'unité est de type bureau et que le champ code unité n'est pas remplis # un message d'erreur doit être affiché &{unite} = BuiltIn.Create Dictionary ... type_unite=Bureau de vote Saisir unite ${unite} Click On Submit Button La page ne doit pas contenir d'erreur Message Should Contain Le code unité est obligatoire pour les bureaux de vote ! Import d'unités [Documentation] L'objet de ce TestCase est de vérifier l'intégration de ... l'action 'import-unites' depuis le contexte 'unite'. # l'action est présente dans le coin haut gauch du tableau Depuis le listing des unités Element Should Contain css=a#action-tab-unite-corner-import-unites Importer # le lien amène sur la page correcte Click Element css=a#action-tab-unite-corner-import-unites Le titre de la page doit être Administration & Paramétrage > Élection > Unité > Import La page ne doit pas contenir d'erreur # le mot clé raccourci amène sur la page correcte Depuis le formulaire d'import des unités Le titre de la page doit être Administration & Paramétrage > Élection > Unité > Import Import d'unités depuis un fichier csv d'ELIRE [Documentation] L'objet de ce test case est de tester que l'import ... des unités de saisie à l'aide d'un fichier csv, issus d'ELIRE, ... récupère et enregistre correctement les données dans la base &{commune} = BuiltIn.Create Dictionary ... libelle=commune 42 ... code=13042 ... prefecture=42 ${id_commune} = Ajouter commune ${commune} &{departement} = BuiltIn.Create Dictionary ... libelle=departement 14 ... code=14 ... prefecture=14 ${id_departement} = Ajouter departement ${departement} Depuis le formulaire d'import des unités Add File fic1 ListeBureauVoteElire.csv Select From List By Label separateur , (virgule) Select From List By Label departement departement 14 Select From List By Label commune commune 42 Click On Submit Button In Import CSV Valid Message Should Contain 5 ligne(s) dans le fichier dont : Valid Message Should Contain - 1 ligne(s) d'entête Valid Message Should Contain - 4 ligne(s) importée(s) # Vérification que le canton et la circonscription ont été créés Depuis le listing canton Use Simple Search code 95-17 Click On Link 95-17 Element Should Contain css=span#libelle Saint-Ouen-l'Aumône Depuis le listing circonscription Use Simple Search code 09502 Click On Link 09502 Element Should Contain css=span#libelle Circonscription import # Vérification que le code préfecture n'est pas rempli Depuis le listing canton Use Simple Search prefecture 0 Element Should Contain css=div#tab-canton Saint-Ouen-l'Aumône Depuis le listing circonscription Use Simple Search prefecture 0 Element Should Contain css=div#tab-circonscription Circonscription import # Vérification pour chaque unité qu'elles existent et que les valeur # enregistrées sont bien celle attendues &{unite} = BuiltIn.Create Dictionary ... libelle=Mairie Import ... type_unite=Bureau de vote ... ordre=008 ... adresse1=42 Avenue du test marseille ... adresse2= ... cp=13014 ... perimetre=Non ... code_unite=008 ... departement=departement 14 ... commune=commune 42 L'unite a été correctement importée ${unite} 1507 &{unite} = BuiltIn.Create Dictionary ... libelle=Ecole Import ... type_unite=Bureau de vote ... ordre=009 ... adresse1=42 Rue du test des imports, batiment a Annecy ... adresse2= ... cp=74000 ... perimetre=Non ... code_unite=009 ... departement=departement 14 ... commune=commune 42 L'unite a été correctement importée ${unite} 1508 &{unite} = BuiltIn.Create Dictionary ... libelle=Gymnase Import ... type_unite=Bureau de vote ... ordre=010 ... adresse1= ... adresse2= ... cp= ... ville= ... perimetre=Non ... code_unite=010 ... departement=departement 14 ... commune=commune 42 L'unite a été correctement importée ${unite} 1509 &{unite} = BuiltIn.Create Dictionary ... libelle=Salle des Fêtes Import ... type_unite=Bureau de vote ... ordre=011 ... adresse1= ... adresse2= ... cp= ... ville= ... perimetre=Non ... code_unite=011 ... departement=departement 14 ... commune=commune 42 L'unite a été correctement importée ${unite} 1510 # Passe toutes les unités en fin de validité pour éviter de géner les autres test Passer l'unité en fin de validité 008 Passer l'unité en fin de validité 009 Passer l'unité en fin de validité 010 Passer l'unité en fin de validité 011 # Import d'unité autre que des bureaux de vote Depuis le formulaire d'import des unités Add File fic1 ListeUniteREU.csv Select From List By Label separateur , (virgule) Select From List By Label departement departement 14 Select From List By Label commune commune 42 Click On Submit Button In Import CSV Valid Message Should Contain 3 ligne(s) dans le fichier dont : Valid Message Should Contain - 1 ligne(s) d'entête Valid Message Should Contain - 2 ligne(s) importée(s) &{unite} = BuiltIn.Create Dictionary ... libelle=Circonscription import ... type_unite=Circonscription ... ordre=008 ... adresse1=Circonscription de test des imports ... adresse2= ... cp= ... ville= ... perimetre=Non ... code_unite=008 ... departement=departement 14 ... commune=commune 42 L'unite a été correctement importée ${unite} ${EMPTY} &{unite} = BuiltIn.Create Dictionary ... libelle=Commune import ... type_unite=Commune ... ordre=009 ... adresse1= ... adresse2= ... cp= ... ville= ... perimetre=Non ... code_unite=009 ... departement=departement 14 ... commune=commune 42 L'unite a été correctement importée ${unite} ${EMPTY} # Passe toutes les unités en fin de validité pour éviter de géner les autres test Passer l'unité en fin de validité 009 Passer l'unité en fin de validité 008 Import d'unités depuis un fichier csv d'openElec (via l'api REU) [Documentation] L'objet de ce test case est de tester que l'import ... des unités de saisie à l'aide d'un fichier csv, issus d'openElec, ... récupère et enregistre correctement les données dans la base Depuis le formulaire d'import des unités Add File fic1 ListeBureauVoteOpenelec.csv Select From List By Label separateur ; (point-virgule) Click On Submit Button In Import CSV Valid Message Should Contain 8 ligne(s) dans le fichier dont : Valid Message Should Contain - 1 ligne(s) d'entête Valid Message Should Contain - 6 ligne(s) importée(s) # Vérification que le canton et la circonscription ont été créés Depuis le listing canton Use Simple Search code 13-28 Click On Link 13-28 Element Should Contain css=span#libelle Trets Depuis le listing circonscription Use Simple Search code 13-10 Click On Link 13-10 Element Should Contain css=span#libelle 13-10 # Vérification que le code préfecture n'est pas rempli Depuis le listing canton Use Simple Search prefecture 0 Element Should Contain css=div#tab-canton Trets Depuis le listing circonscription Use Simple Search prefecture 0 Element Should Contain css=div#tab-circonscription 13-10 # Vérification pour chaque unité qu'elles existent et que les valeur # enregistrées sont bien celle attendues &{unite} = BuiltIn.Create Dictionary ... libelle=SALLE DES MARIAGES ... type_unite=Bureau de vote ... ordre=8 ... adresse1= ... adresse2= ... cp= ... perimetre=Non ... code_unite=8 L'unite a été correctement importée ${unite} 9959 &{unite} = BuiltIn.Create Dictionary ... libelle=SALLE DES FETES JEAN MONNET ... type_unite=Bureau de vote ... ordre=9 ... adresse1= ... adresse2= ... cp= ... perimetre=Non ... code_unite=9 L'unite a été correctement importée ${unite} 49965 &{unite} = BuiltIn.Create Dictionary ... libelle=ECOLE DU CANET ... type_unite=Bureau de vote ... ordre=10 ... adresse1= ... adresse2= ... cp= ... ville= ... perimetre=Non ... code_unite=10 L'unite a été correctement importée ${unite} 52493 &{unite} = BuiltIn.Create Dictionary ... libelle=SALLE DES FETES JEAN MONNET ... type_unite=Bureau de vote ... ordre=11 ... adresse1= ... adresse2= ... cp= ... ville= ... perimetre=Non ... code_unite=11 L'unite a été correctement importée ${unite} 30945 &{unite} = BuiltIn.Create Dictionary ... libelle=LE GYMNASE ... type_unite=Bureau de vote ... ordre=12 ... adresse1= ... adresse2= ... cp= ... ville= ... perimetre=Non ... code_unite=12 L'unite a été correctement importée ${unite} 35558 &{unite} = BuiltIn.Create Dictionary ... libelle=ECOLE DU VILLAGE ... type_unite=Bureau de vote ... ordre=13 ... adresse1= ... adresse2= ... cp= ... ville= ... perimetre=Non ... code_unite=13 L'unite a été correctement importée ${unite} 24419 # Passe toutes les unités en fin de validité pour éviter de géner les autres test Passer l'unité en fin de validité 8 Passer l'unité en fin de validité 9 Passer l'unité en fin de validité 10 Passer l'unité en fin de validité 11 Passer l'unité en fin de validité 12 Passer l'unité en fin de validité 13 # Import d'unité autre que des bureaux de vote Depuis le formulaire d'import des unités Add File fic1 ListeUniteOpenelec.csv Select From List By Label separateur ; (point-virgule) Click On Submit Button In Import CSV Valid Message Should Contain 4 ligne(s) dans le fichier dont : Valid Message Should Contain - 1 ligne(s) d'entête Valid Message Should Contain - 2 ligne(s) importée(s) Valid Message Should Contain - 0 ligne(s) rejetée(s) Valid Message Should Contain - 1 ligne(s) vide(s) &{unite} = BuiltIn.Create Dictionary ... libelle=COMMUNE OPENELEC A ... type_unite=Commune ... ordre=8 ... adresse1= ... adresse2= ... cp= ... ville= ... perimetre=Non ... code_unite=8 ... departement= ... commune= L'unite a été correctement importée ${unite} ${EMPTY} &{unite} = BuiltIn.Create Dictionary ... libelle=CANTON OPENELEC B ... type_unite=Canton ... ordre=9 ... adresse1= ... adresse2= ... cp= ... ville= ... perimetre=Non ... code_unite=9 ... departement= ... commune= L'unite a été correctement importée ${unite} ${EMPTY} Passer l'unité en fin de validité 8 Passer l'unité en fin de validité 9