/[openfoncier]/trunk/tests/testArchitecteFrequent.php
ViewVC logotype

Annotation of /trunk/tests/testArchitecteFrequent.php

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2113 - (hide annotations)
Thu Jul 25 13:34:24 2013 UTC (11 years, 6 months ago) by vpihour
File size: 11325 byte(s)
Gestion des architectes fréquents pour l'administrateur technique
Possibilité pour l'instructeur d'ajouter un architecte (fréquent ou non) dans les données techniques

1 vpihour 2108 <?php
2     /**
3     * Classe de test des architectes.
4     *
5     * @package openads
6     * @version SVN : $Id: testArchitecteFrequent.php
7     */
8    
9     //
10     require_once "base.php";
11    
12     /**
13     * Test de l'ajout et de l'utilisation dans les formulaires des architectes fréquents
14     * Données utilisées :
15     * - le dossier d'instruction n° PC0130551200002P0 ;
16     * - le dossier d'instruction n° AZ0130551200001P0 ;
17     * - l'architecte nommé Paul Mercier et
18     * - l'architecte nommé Jean Mercier.
19     */
20     class ArchitecteFrequent extends Base2TestCase {
21    
22     /**
23     * Test de l'ajout d'un architecte fréquent par l'administrateur technique.
24     */
25     function testAjoutArchitecteFrequent(){
26    
27     // On se connecte en tant que "instr"
28     $this->login("admin", "admin");
29 vpihour 2113 //On clique sur le menu iinstruction
30     $this->byLinkText("Instruction")->click();
31 vpihour 2108 //On clique sur le menu des architectes fréquents
32     $this->byLinkText("Architecte Fréquent")->click();
33     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
34     $this->verifyNoErrors();
35     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
36     $this->verifyNoErrors();
37     //On vérifie qu'on est sur le bon tableau
38 vpihour 2113 $this->assertEquals("Architecte Fréquent", $this->byXPath("//a[@href=\"#tabs-1\"]")->text());
39 vpihour 2108 //On clique sur le "+" du tableau d'architectes fréquents
40     $this->byCssSelector(".add-16")->click();
41     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
42     $this->verifyNoErrors();
43     //On essaye de valider le formulaire sans remplir de champ
44 vpihour 2113 $this->byXPath("//input[@value='Ajouter']")->click();
45 vpihour 2108 //On vérifie qu'il y a un message d'erreur
46     $this->assertRegExp('/.*SAISIE NON ENREGISTRÉE.*/', $this->byCssSelector(".message .text")->text());
47     //On remplit les champs
48     $this->byCssSelector("#nom")->value("Lefebvre");
49     $this->byCssSelector("#prenom")->value("James");
50     $this->byCssSelector("#adresse1")->value("113 boulevard de pont de vivaux");
51     $this->byCssSelector("#cp")->value("13010");
52     $this->byCssSelector("#ville")->value("Marseille");
53     $this->byCssSelector("#inscription")->value("0491855565");
54     $this->byCssSelector("#telephone")->value("0491236589");
55     $this->byCssSelector("#fax")->value("0491236585");
56     $this->byCssSelector("#email")->value("[email protected]");
57     //On valide le formulaire
58 vpihour 2113 $this->byXPath("//input[@value='Ajouter']")->click();
59 vpihour 2108 //On vérifie le message de validation
60     $this->assertRegExp('/.*Vos modifications ont bien été enregistrées.*/', $this->byCssSelector(".message .text")->text());
61     //On clique sur le bouton de retour
62     $this->byLinkText("Retour")->click();
63     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
64     $this->verifyNoErrors();
65     //On vérifie que l'architecte fréquent s'est bien ajouté en cliquant dessus
66     $this->byLinkText("James Lefebvre")->click();
67     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
68     $this->verifyNoErrors();
69     // On se déconnecte de l'application
70     $this->deconnect();
71     }
72    
73     /**
74     * Test de l'ajout d'un architecte fréquent aux données techniques par l'instructeur.
75     * - Utilisation de l'architecte fréquent rajouté par l'administrateur
76     */
77     function testAjoutArchitecteFrequentDonneesTechniques(){
78    
79     // On se connecte en tant que "instr"
80     $this->login("instr", "instr");
81     //On clique sur le menu "Mes encours"
82     $this->byLinkText("Mes Encours")->click();
83     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
84     $this->verifyNoErrors();
85     //On choisit le dossier n°PC0130551200002P0
86 softime 2112 $this->byLinkText("PC 013055 12 00002P0")->click();
87 vpihour 2108 //On clique sur "Données techniques dans le portail d'action"
88     $this->byXPath("//span[@title='Données techniques']")->click();
89 vpihour 2113 //On affiche le formulaire en modification
90     $this->byCssSelector("#sousform-donnees_techniques .edit-16")->click();
91 vpihour 2108 //On clique sur "Ajouter un architecte"
92 vpihour 2113 $this->byCssSelector("#sousform-donnees_techniques .field-type-manage_with_popup .form-content span")->click();
93 vpihour 2108 //On essaye de valider un formulaire vide
94     $this->byCssSelector("#sousform-architecte .om-button")->click();
95     //On vérifie le message d'erreur
96     $this->assertRegExp('/.*SAISIE NON ENREGISTRÉE.*/', $this->byCssSelector("#sousform-architecte .message .text")->text());
97     //On écrit le nom d'un architecte qui ne retournera aucun résultat
98     $this->byCssSelector("#sousform-architecte #nom")->value("zzz");
99     //On lance la recherche
100 vpihour 2113 $this->byCssSelector(".search-frequent-16")->click();
101 vpihour 2108 //On vérifie le message de l'overlay
102     $this->assertRegExp('/.*Aucune correspondance trouvée.*/', $this->byCssSelector("#dialog")->text());
103     //On clique sur valider
104     $this->byCssSelector(".ui-dialog .ui-dialog-buttonset .ui-button-text-only")->click();
105 vpihour 2113 //On vide le champ
106     $this->byCssSelector("#sousform-architecte #nom")->clear();
107 vpihour 2108 //on écrit le nom d'un architecte qui existe existe en plusieurs fois
108     $this->byCssSelector("#sousform-architecte #nom")->value("Mercier");
109 vpihour 2113 //On lance la recherche
110     $this->byCssSelector(".search-frequent-16")->click();
111 vpihour 2108 //On vérifie qu'on a deux résultats
112 vpihour 2113 $this->assertEquals(2, count($this->byCssSelector('#dialog select')->elements($this->using('css selector')->value('option'))));
113     //On clique sur fermer
114     $this->byXPath("//html/body/div[11]/div/a/span")->click();
115 vpihour 2108 //On écrit le nom d'un architecte qui existe qu'une fois
116 vpihour 2113 $this->byCssSelector("#sousform-architecte #nom")->clear();
117 vpihour 2108 $this->byCssSelector("#sousform-architecte #nom")->value("Lefebvre");
118     //On lance la recherche
119 vpihour 2113 $this->byCssSelector(".search-frequent-16")->click();
120 vpihour 2108 //On vérifie qu'on a qu'un seul résultat
121 vpihour 2113 $this->assertEquals(1, count($this->byCssSelector('#dialog select')->elements($this->using('css selector')->value('option'))));
122 vpihour 2108 //On valide
123 vpihour 2113 $this->byXPath("//html/body/div[11]/div[11]/div/button/span")->click();
124     sleep(1);
125     //On vérifie que le prenom de l'architecte choisit est bon
126     $this->assertEquals("James", $this->byCssSelector("#sousform-architecte #prenom")->text());
127 vpihour 2108 //On clique sur retour
128 vpihour 2113 $this->byCssSelector("#sousform-architecte a.retour")->click();
129 vpihour 2108 //On vérifie que l'identifiant de l'architecte choisit est bon
130 vpihour 2113 $this->assertEquals("Lefebvre James", $this->byCssSelector(".field-type-manage_with_popup .edit-16")->text());
131 vpihour 2108 //On valide le formulaire de données techniques
132 vpihour 2113 $this->byXPath("//input[@value='Modifier']")->click();
133 vpihour 2108 //On vérifie le message de validation
134     $this->assertRegExp('/.*Vos modifications ont bien été enregistrées.*/', $this->byCssSelector("#sousform-donnees_techniques .message .text")->text());
135     //On clique sur retour
136 vpihour 2113 $this->byCssSelector("#sousform-donnees_techniques a.retour")->click();
137 vpihour 2108 //On clique sur données techniques dans le portail d'action
138     $this->byXPath("//span[@title='Données techniques']")->click();
139     //On verifie que le bon architecte s'est enregistré
140 vpihour 2113 $this->assertEquals("James Lefebvre", $this->byCssSelector("#sousform-donnees_techniques #architecte")->text());
141     //On clique sur retour
142     $this->byCssSelector("#sousform-donnees_techniques a.retour")->click();
143 vpihour 2108 // On se déconnecte de l'application
144     $this->deconnect();
145     }
146    
147     /**
148     * Test de l'ajout d'un architecte aux données techniques par l'instructeur.
149     */
150     function testAjoutArchitecteDonneesTechniques(){
151    
152     // On se connecte en tant que "instr"
153     $this->login("instr", "instr");
154     //On clique sur le menu "Mes encours"
155     $this->byLinkText("Mes Encours")->click();
156     //On choisit le dossier n°AZ0130551200001P0
157 vpihour 2113 $this->byLinkText("AZ 013055 12 00001P0")->click();
158 vpihour 2108 //On clique sur "Données techniques dans le portail d'action"
159     $this->byXPath("//span[@title='Données techniques']")->click();
160 vpihour 2113 //On affiche le formulaire en modification
161     $this->byCssSelector("#sousform-donnees_techniques .edit-16")->click();
162 vpihour 2108 //On clique sur "Ajouter un architecte"
163 vpihour 2113 $this->byCssSelector("#sousform-donnees_techniques .field-type-manage_with_popup .form-content span")->click();
164 vpihour 2108 //On essaye de valider un formulaire vide
165     $this->byCssSelector("#sousform-architecte .om-button")->click();
166     //On vérifie le message d'erreur
167     $this->assertRegExp('/.*SAISIE NON ENREGISTRÉE.*/', $this->byCssSelector("#sousform-architecte .message .text")->text());
168     //On remplit les champs
169     $this->byCssSelector("#nom")->value("Montmorrency");
170     $this->byCssSelector("#prenom")->value("Paul Marie Édouard");
171     $this->byCssSelector("#adresse1")->value("113 boulevard de pont de vivaux");
172     $this->byCssSelector("#cp")->value("13010");
173     $this->byCssSelector("#ville")->value("Marseille");
174     $this->byCssSelector("#inscription")->value("0491855565");
175     $this->byCssSelector("#telephone")->value("0491236589");
176     $this->byCssSelector("#fax")->value("0491236585");
177     $this->byCssSelector("#email")->value("[email protected]");
178     //On valide le formulaire de l'architecte
179     $this->byCssSelector("#sousform-architecte .om-button")->click();
180 vpihour 2113 sleep(1);
181 vpihour 2108 //On vérifie le message de validation
182     $this->assertRegExp('/.*Vos modifications ont bien été enregistrées.*/', $this->byCssSelector("#sousform-architecte .message .text")->text());
183     //On clique sur retour
184 vpihour 2113 $this->byCssSelector("#sousform-architecte a.retour")->click();
185 vpihour 2108 //On vérifie que l'identifiant de l'architecte choisit est remplit
186 vpihour 2113 $this->assertEquals("Montmorrency Paul Marie Édouard", $this->byCssSelector(".field-type-manage_with_popup .edit-16")->text());
187 vpihour 2108 //On valide le formulaire de données techniques
188 vpihour 2113 $this->byXPath("//input[@value='Modifier']")->click();
189 vpihour 2108 //On vérifie le message de validation
190     $this->assertRegExp('/.*Vos modifications ont bien été enregistrées.*/', $this->byCssSelector("#sousform-donnees_techniques .message .text")->text());
191     //On clique sur retour
192 vpihour 2113 $this->byCssSelector("#sousform-donnees_techniques a.retour")->click();
193 vpihour 2108 //On clique sur données techniques dans le portail d'action
194     $this->byXPath("//span[@title='Données techniques']")->click();
195     //On verifie que le bon architecte s'est enregistré
196 vpihour 2113 $this->assertEquals("Paul Marie Édouard Montmorrency", $this->byCssSelector("#sousform-donnees_techniques #architecte")->text());
197     //On clique sur retour
198     $this->byCssSelector("#sousform-donnees_techniques a.retour")->click();
199 vpihour 2108 // On se déconnecte de l'application
200     $this->deconnect();
201     }
202     }
203    
204 vpihour 2113 ?>

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26