*** Settings *** Documentation Test sur les dossiers d'instruction. # 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 *** Vérification des tris par défaut pour les listings Mes encours et Tous les encours [Documentation] Ce test vérifie que depuis les menu mes Encours et Tous les Encours ... les dossiers sont triés par date limite croissante. # Isolation d'un contexte &{isolation_values} = Create Dictionary ... om_collectivite_libelle=NATURALCITY ... departement=013 ... commune=088 ... insee=13088 ... direction_code=T ... direction_libelle=Direction de NATURALCITY ... direction_chef=Chef ... division_code=T ... division_libelle=Division T ... division_chef=Chef ... guichet_om_utilisateur_nom=Jung Doo-hong ... guichet_om_utilisateur_email=jdoohong@openads-test.fr ... guichet_om_utilisateur_login=jdoohong ... guichet_om_utilisateur_pwd=jdoohong ... instr_om_utilisateur_nom=Yoo Ji-tae ... instr_om_utilisateur_email=yjitae@openads-test.fr ... instr_om_utilisateur_login=yjitae ... instr_om_utilisateur_pwd=yjitae Isolation d'un contexte ${isolation_values} # Attribution du rôle d'instructeur polyvalent à l'individu créé durant l'isolation Modifier l'utilisateur ... ${isolation_values.instr_om_utilisateur_nom} ... ${isolation_values.instr_om_utilisateur_email} ... ${isolation_values.instr_om_utilisateur_login} ... ${isolation_values.instr_om_utilisateur_pwd} ... INSTRUCTEUR POLYVALENT # Création de dossiers dans le profil isolé : Depuis la page d'accueil yjitae yjitae &{args_petitionnaire} = Create Dictionary ... particulier_nom=Rivia ... particulier_prenom=Geralt ... om_collectivite=${isolation_values.om_collectivite_libelle} # Création de 3 dates à rebours de la date du jour courant :FOR ${i} IN RANGE 1 4 1 \ ${date_di_db} = Subtract Time From Date ${DATE_FORMAT_YYYY-MM-DD} ${i} days result_format=%Y-%m-%d \ ${date_di} = Convert Date ${date_di_db} result_format=%d/%m/%Y \ &{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 \ ... om_collectivite=${isolation_values.om_collectivite_libelle} \ ... date_demande=${date_di} \ ${libelle_di} = Ajouter la demande par WS ${args_demande} ${args_petitionnaire} # Récupération et comparaison des valeurs des dates entre chaque ligne du tableau # de l'onglet Mes Encours Depuis le listing dossier_instruction_mes_encours :FOR ${i} IN RANGE 1 3 1 \ ${date_1} = Get Text css=#tab-dossier_instruction_mes_encours .tab-container table.tab-tab tr:nth-child(${i})>td.col-8>a \ ${date_2} = Get Text css=#tab-dossier_instruction_mes_encours .tab-container table.tab-tab tr:nth-child(${i+1})>td.col-8>a \ Vérifier que la date ${date_1} est inférieure à la date ${date_2} # Récupération et comparaison des valeurs des dates entre chaque ligne du tableau # de l'onglet Tous les Encours Depuis le listing dossier_instruction_tous_encours :FOR ${i} IN RANGE 1 3 1 # Récupération des valeurs des dates \ ${date_1} = Get Text css=#tab-dossier_instruction_tous_encours .tab-container table.tab-tab tr:nth-child(${i})>td.col-10>a \ ${date_2} = Get Text css=#tab-dossier_instruction_tous_encours .tab-container table.tab-tab tr:nth-child(${i+1})>td.col-10>a \ Vérifier que la date ${date_1} est inférieure à la date ${date_2} Vérification de la date limite d'incomplétude dans les tris [Documentation] Ce test vérifie que lorsque la date limite d'incomplétude ... remplace la date limite dans les listings : ... Mes Encours, Tous les Encours et recherche, ... les tris et recherches en tiennent compte. Depuis la page d'accueil admin admin Constitution du Workflow de gestion d'une incomplétude 195 # Isolation d'un contexte &{isolation_values} = Create Dictionary ... om_collectivite_libelle=TRI_COMPLETUDE_CITY ... departement=013 ... commune=089 ... insee=13089 ... direction_code=TRI ... direction_libelle=Direction de TRI_COMPLETUDE_CITY ... direction_chef=Chef ... division_code=TRI ... division_libelle=Division TRI ... division_chef=Chef ... guichet_om_utilisateur_nom=Jean-Ben Tri-Tri ... guichet_om_utilisateur_email=jeanben@openads-test.fr ... guichet_om_utilisateur_login=jeanben ... guichet_om_utilisateur_pwd=jeanben ... instr_om_utilisateur_nom=Guy Guytri ... instr_om_utilisateur_email=guytri@openads-test.fr ... instr_om_utilisateur_login=guytri ... instr_om_utilisateur_pwd=guytri Isolation d'un contexte ${isolation_values} # Attribution du rôle d'instructeur polyvalent à l'individu créé durant l'isolation Modifier l'utilisateur ... ${isolation_values.instr_om_utilisateur_nom} ... ${isolation_values.instr_om_utilisateur_email} ... ${isolation_values.instr_om_utilisateur_login} ... ${isolation_values.instr_om_utilisateur_pwd} ... INSTRUCTEUR POLYVALENT # Création de dossiers dans le profil isolé : Depuis la page d'accueil guytri guytri &{args_petitionnaire} = Create Dictionary ... particulier_nom=Tri ... particulier_prenom=Herald ... om_collectivite=${isolation_values.om_collectivite_libelle} # Extrait les 2 derniers caractères pour savoir si le jour traité est un 28, 29, 30, 31 ou un 01 ${month_day} Get Substring ${DATE_FORMAT_YYYY-MM-DD} -2 ${date_minus_5} = Subtract Time From Date ${DATE_FORMAT_YYYY-MM-DD} 5 days result_format=%Y-%m-%d ${starting_day} = Set Variable ${DATE_FORMAT_YYYY-MM-DD} # Au cas où la date du jour du test soit un 28, 29, 30, 31 ou un 01, # elle est ramenée à 5 jours avant afin d'éviter le cas de figure suivant, # qui rend impossible la distinction de dates consécutives dont la modification tombe sur le même jour : # 31/01/XX + 2 mois => 28/02 et # 30/01/XX + 2 mois => 28/02 ${starting_day} = Run Keyword If '${month_day}' == '28' Set Variable ${date_minus_5} ... ELSE IF '${month_day}' == '29' Set Variable ${date_minus_5} ... ELSE IF '${month_day}' == '30' Set Variable ${date_minus_5} ... ELSE IF '${month_day}' == '31' Set Variable ${date_minus_5} ... ELSE IF '${month_day}' == '01' Set Variable ${date_minus_5} ... ELSE Set Variable ${DATE_FORMAT_YYYY-MM-DD} # Création de 3 dates à rebours de la date du jour courant :FOR ${i} IN RANGE 1 3 1 \ ${date_di_db} = Subtract Time From Date ${starting_day} ${i} days result_format=%Y-%m-%d \ ${date_di} = Convert Date ${date_di_db} result_format=%d/%m/%Y \ &{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 \ ... om_collectivite=${isolation_values.om_collectivite_libelle} \ ... date_demande=${date_di} \ ${libelle_di_02} = Ajouter la demande par WS ${args_demande} ${args_petitionnaire} ${date_di_db} = Subtract Time From Date ${starting_day} 3 days result_format=%Y-%m-%d ${date_di} = Convert Date ${date_di_db} result_format=%d/%m/%Y &{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 ... om_collectivite=${isolation_values.om_collectivite_libelle} ... date_demande=${date_di} ${libelle_di_03} = Ajouter la demande par WS ${args_demande} ${args_petitionnaire} # Ajout d'une nouvelle date limite d'incomplétude sur un dossier Ajouter une instruction au DI et la finaliser ${libelle_di_03} incompletude_195 ${date_retour_signature} = Add Time To Date ${starting_day} 20 days result_format=%Y-%m-%d ${date_retour_signature} = Convert Date ${date_retour_signature} result_format=%d/%m/%Y log ${date_retour_signature} &{args_instruction} = Create Dictionary ... date_retour_signature=${date_retour_signature} Modifier le suivi des dates ${libelle_di_03} incompletude_195 ${args_instruction} # Vérification du bon fonctionnement du tri date limite dans mes encours, tous mes encours # lorsqu'on à une incomplétude : # - Mes encours Depuis le listing dossier_instruction_mes_encours Wait Until Element Contains css=table.tab-tab tr:first-child td.col-3 a ${libelle_di_02} # L'incomplétude est censée être en dernier dans le listing Element Should Contain css=table.tab-tab tr:nth-child(3) td.col-3 a ${libelle_di_03} # On clique sur "date limite" du listing mes encours pour changer l'ordre d'affichage du listing # On clique 2 fois, car le 1er clique n'est pas pris en compte Click Element css=table.tab-tab tr:nth-child(1) th.col-10 Click Element css=table.tab-tab tr:nth-child(1) th.col-10 # L'incomplétude est censée être en premier maintenant dans le listing Wait Until Element Contains css=table.tab-tab tr:nth-child(1) td.col-3 a ${libelle_di_03} Element Should Contain css=table.tab-tab tr:nth-child(3) td.col-3 a ${libelle_di_02} # - Tous les encours Depuis le listing dossier_instruction_tous_encours Wait Until Element Contains css=table.tab-tab tr:nth-child(1) td.col-3 a ${libelle_di_02} # L'incomplétude est censée être en dernier dans le listing Element Should Contain css=table.tab-tab tr:nth-child(3) td.col-3 a ${libelle_di_03} # On clique sur "date limite" du listing mes encours pour changer l'ordre d'affichage du listing # On clique 2 fois, car le 1er clique n'est pas pris en compte Click Element css=table.tab-tab tr:nth-child(1) th.col-10 Click Element css=table.tab-tab tr:nth-child(1) th.col-10 # L'incomplétude est censée être en premier maintenant dans le listing Wait Until Element Contains css=table.tab-tab tr:nth-child(1) td.col-3 a ${libelle_di_03} Element Should Contain css=table.tab-tab tr:nth-child(3) td.col-3 a ${libelle_di_02} Vérification de l'identification des dossiers par couleurs [Documentation] Ce test vérifie qu'après avoir ajouté l'option ... option_afficher_couleur_dossier dans Administration -> Paramètre, ... puis ajouté une couleur pour un type de DA détaillé, ce type de DA ... soit souligné par cette couleur dans les listings # Création d'un da auquel appliquer la couleur &{args_petitionnaire} = Create Dictionary ... qualite=particulier ... particulier_nom=TEST035COULEURDOSSIER ... particulier_prenom=TEST035 ... om_collectivite=MARSEILLE &{args_demande} = Create Dictionary ... dossier_autorisation_type_detaille=Fonds de commerce ... demande_type=Dépôt Initial ... om_collectivite=MARSEILLE ${di} = Ajouter la demande par WS ${args_demande} ${args_petitionnaire} # Ajout de l'option d'affichage des couleurs de dossier &{param_values} = Create Dictionary ... libelle=option_afficher_couleur_dossier ... valeur=true ... om_collectivite=agglo Gerer le paramètre par WS ${param_values} # Ajout d'une couleur pour un certain type de dossier (ici FC) &{args_type_DA_detaille_modification} = Create Dictionary ... couleur=45FFF3 ${type_da}= Set Variable FC Depuis la page d'accueil admin admin Modifier type de dossier d'autorisation détaillé ${type_da} ${args_type_DA_detaille_modification} # Recherche afin d'afficher uniquement le da de test Go To Submenu In Menu instruction dossier_instruction_recherche Input Text css=div#adv-search-adv-fields input#dossier ${di} Click On Search Button # Vérifie la présence d'une couleur dans la class CSS correspondant à l'élément modifié Page should contain element css=p[style^="--datd-color:#${args_type_DA_detaille_modification.couleur};"] span[id="${di}"] # Retrait de l'option d'affichage des couleurs de dossier &{param_values} = Create Dictionary ... libelle=option_afficher_couleur_dossier ... valeur=false ... om_collectivite=agglo Gerer le paramètre par WS ${param_values} TNR ajout DI ayant un type dont le code a plus de 10 caractères [Documentation] Ce test vérifie qu'après avoir modifié ... un type de DI avec un code compris entre 10 et 20 caractères ... lors de l'ajout d'un DI de ce type, il ne doit y avoir de message d'erreur. # Vérification de l'absence de l'option 'option_dossier_commune' &{param_dossier_commune} = Create Dictionary ... libelle=option_dossier_commune ... valeur=false ... om_collectivite=agglo Gerer le paramètre par WS ${param_dossier_commune} Depuis la page d'accueil admin admin # Introduction d'un code compris entre 10 et 20 caractères &{val_dit} = Create Dictionary ... code=P123456789112345 Modifier type de dossier d'instruction CU P ${val_dit} # Création du dossier &{args_petitionnaire} = Create Dictionary ... particulier_nom=TESTAJOUTDI10CHARNOM ... particulier_prenom=TESTAJOUTDI10CHARPRENOM ... om_collectivite=MARSEILLE &{args_demande} = Create Dictionary ... dossier_autorisation_type_detaille=CU - Certificat d'urbanisme ... om_collectivite=MARSEILLE ${di} = Ajouter la nouvelle demande depuis le menu ${args_demande} ${args_petitionnaire} # Retrait du code compris entre 10 et 20 caractères pour la suite des tests &{val_dit} = Create Dictionary ... code=P Modifier type de dossier d'instruction CU P123456789112345 ${val_dit}