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

Annotation of /trunk/tests/testArchitecteFrequent.php

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2183 - (hide annotations)
Thu Aug 29 14:21:54 2013 UTC (11 years, 5 months ago) by fmichon
File size: 12414 byte(s)
On remplace la méthode deconnect par logou lorsque ceci est possiblet

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 fmichon 2183 $this->logout();
71 vpihour 2108 }
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 softime 2128 //On ouvre les fieldsets Construire puis Projet construction
92     $this->byXPath("//div[6]/div[2]/div[2]/form/div/div/div[7]/fieldset/legend")->click();
93     $this->byXPath("//div[6]/div[2]/div[2]/form/div/div/div[7]/fieldset/div/div/fieldset/legend")->click();
94 vpihour 2108 //On clique sur "Ajouter un architecte"
95 vpihour 2113 $this->byCssSelector("#sousform-donnees_techniques .field-type-manage_with_popup .form-content span")->click();
96 vpihour 2108 //On essaye de valider un formulaire vide
97     $this->byCssSelector("#sousform-architecte .om-button")->click();
98     //On vérifie le message d'erreur
99     $this->assertRegExp('/.*SAISIE NON ENREGISTRÉE.*/', $this->byCssSelector("#sousform-architecte .message .text")->text());
100     //On écrit le nom d'un architecte qui ne retournera aucun résultat
101     $this->byCssSelector("#sousform-architecte #nom")->value("zzz");
102     //On lance la recherche
103 vpihour 2113 $this->byCssSelector(".search-frequent-16")->click();
104 vpihour 2108 //On vérifie le message de l'overlay
105     $this->assertRegExp('/.*Aucune correspondance trouvée.*/', $this->byCssSelector("#dialog")->text());
106     //On clique sur valider
107     $this->byCssSelector(".ui-dialog .ui-dialog-buttonset .ui-button-text-only")->click();
108 vpihour 2113 //On vide le champ
109     $this->byCssSelector("#sousform-architecte #nom")->clear();
110 vpihour 2108 //on écrit le nom d'un architecte qui existe existe en plusieurs fois
111     $this->byCssSelector("#sousform-architecte #nom")->value("Mercier");
112 vpihour 2113 //On lance la recherche
113     $this->byCssSelector(".search-frequent-16")->click();
114 vpihour 2108 //On vérifie qu'on a deux résultats
115 vpihour 2113 $this->assertEquals(2, count($this->byCssSelector('#dialog select')->elements($this->using('css selector')->value('option'))));
116     //On clique sur fermer
117     $this->byXPath("//html/body/div[11]/div/a/span")->click();
118 vpihour 2108 //On écrit le nom d'un architecte qui existe qu'une fois
119 vpihour 2113 $this->byCssSelector("#sousform-architecte #nom")->clear();
120 vpihour 2108 $this->byCssSelector("#sousform-architecte #nom")->value("Lefebvre");
121     //On lance la recherche
122 vpihour 2113 $this->byCssSelector(".search-frequent-16")->click();
123 vpihour 2108 //On vérifie qu'on a qu'un seul résultat
124 vpihour 2113 $this->assertEquals(1, count($this->byCssSelector('#dialog select')->elements($this->using('css selector')->value('option'))));
125 vpihour 2108 //On valide
126 vpihour 2113 $this->byXPath("//html/body/div[11]/div[11]/div/button/span")->click();
127     sleep(1);
128     //On vérifie que le prenom de l'architecte choisit est bon
129     $this->assertEquals("James", $this->byCssSelector("#sousform-architecte #prenom")->text());
130 vpihour 2108 //On clique sur retour
131 vpihour 2113 $this->byCssSelector("#sousform-architecte a.retour")->click();
132 vpihour 2108 //On vérifie que l'identifiant de l'architecte choisit est bon
133 vpihour 2113 $this->assertEquals("Lefebvre James", $this->byCssSelector(".field-type-manage_with_popup .edit-16")->text());
134 vpihour 2108 //On valide le formulaire de données techniques
135 vpihour 2113 $this->byXPath("//input[@value='Modifier']")->click();
136 vpihour 2108 //On vérifie le message de validation
137     $this->assertRegExp('/.*Vos modifications ont bien été enregistrées.*/', $this->byCssSelector("#sousform-donnees_techniques .message .text")->text());
138     //On clique sur retour
139 vpihour 2113 $this->byCssSelector("#sousform-donnees_techniques a.retour")->click();
140 vpihour 2108 //On clique sur données techniques dans le portail d'action
141     $this->byXPath("//span[@title='Données techniques']")->click();
142 softime 2128 //On ouvre les fieldsets Construire puis Projet construction
143     $this->byXPath("//div[7]/div[2]/div[2]/div/div[2]/div[7]/fieldset/legend")->click();
144     $this->byXPath("//div[7]/div[2]/div[2]/div/div[2]/div[7]/fieldset/div/div/fieldset/legend")->click();
145 vpihour 2108 //On verifie que le bon architecte s'est enregistré
146 vpihour 2113 $this->assertEquals("James Lefebvre", $this->byCssSelector("#sousform-donnees_techniques #architecte")->text());
147     //On clique sur retour
148     $this->byCssSelector("#sousform-donnees_techniques a.retour")->click();
149 vpihour 2108 // On se déconnecte de l'application
150 fmichon 2183 $this->logout();
151 vpihour 2108 }
152    
153     /**
154     * Test de l'ajout d'un architecte aux données techniques par l'instructeur.
155     */
156     function testAjoutArchitecteDonneesTechniques(){
157    
158     // On se connecte en tant que "instr"
159     $this->login("instr", "instr");
160     //On clique sur le menu "Mes encours"
161     $this->byLinkText("Mes Encours")->click();
162     //On choisit le dossier n°AZ0130551200001P0
163 vpihour 2113 $this->byLinkText("AZ 013055 12 00001P0")->click();
164 vpihour 2108 //On clique sur "Données techniques dans le portail d'action"
165     $this->byXPath("//span[@title='Données techniques']")->click();
166 vpihour 2113 //On affiche le formulaire en modification
167     $this->byCssSelector("#sousform-donnees_techniques .edit-16")->click();
168 softime 2128 //On ouvre les fieldsets Construire puis Projet construction
169     $this->byXPath("//div[6]/div[2]/div[2]/form/div/div/div[7]/fieldset/legend")->click();
170     $this->byXPath("//div[6]/div[2]/div[2]/form/div/div/div[7]/fieldset/div/div/fieldset/legend")->click();
171 vpihour 2108 //On clique sur "Ajouter un architecte"
172 vpihour 2113 $this->byCssSelector("#sousform-donnees_techniques .field-type-manage_with_popup .form-content span")->click();
173 vpihour 2108 //On essaye de valider un formulaire vide
174     $this->byCssSelector("#sousform-architecte .om-button")->click();
175     //On vérifie le message d'erreur
176     $this->assertRegExp('/.*SAISIE NON ENREGISTRÉE.*/', $this->byCssSelector("#sousform-architecte .message .text")->text());
177     //On remplit les champs
178     $this->byCssSelector("#nom")->value("Montmorrency");
179     $this->byCssSelector("#prenom")->value("Paul Marie Édouard");
180     $this->byCssSelector("#adresse1")->value("113 boulevard de pont de vivaux");
181     $this->byCssSelector("#cp")->value("13010");
182     $this->byCssSelector("#ville")->value("Marseille");
183     $this->byCssSelector("#inscription")->value("0491855565");
184     $this->byCssSelector("#telephone")->value("0491236589");
185     $this->byCssSelector("#fax")->value("0491236585");
186     $this->byCssSelector("#email")->value("[email protected]");
187     //On valide le formulaire de l'architecte
188     $this->byCssSelector("#sousform-architecte .om-button")->click();
189 vpihour 2113 sleep(1);
190 vpihour 2108 //On vérifie le message de validation
191     $this->assertRegExp('/.*Vos modifications ont bien été enregistrées.*/', $this->byCssSelector("#sousform-architecte .message .text")->text());
192 softime 2128 //On clique sur retour²
193 vpihour 2113 $this->byCssSelector("#sousform-architecte a.retour")->click();
194 vpihour 2108 //On vérifie que l'identifiant de l'architecte choisit est remplit
195 vpihour 2113 $this->assertEquals("Montmorrency Paul Marie Édouard", $this->byCssSelector(".field-type-manage_with_popup .edit-16")->text());
196 vpihour 2108 //On valide le formulaire de données techniques
197 vpihour 2113 $this->byXPath("//input[@value='Modifier']")->click();
198 vpihour 2108 //On vérifie le message de validation
199     $this->assertRegExp('/.*Vos modifications ont bien été enregistrées.*/', $this->byCssSelector("#sousform-donnees_techniques .message .text")->text());
200     //On clique sur retour
201 vpihour 2113 $this->byCssSelector("#sousform-donnees_techniques a.retour")->click();
202 vpihour 2108 //On clique sur données techniques dans le portail d'action
203     $this->byXPath("//span[@title='Données techniques']")->click();
204 softime 2128 //On ouvre les fieldsets Construire puis Projet construction
205     $this->byXPath("//div[7]/div[2]/div[2]/div/div[2]/div[7]/fieldset/legend")->click();
206     $this->byXPath("//div[7]/div[2]/div[2]/div/div[2]/div[7]/fieldset/div/div/fieldset/legend")->click();
207 vpihour 2108 //On verifie que le bon architecte s'est enregistré
208 vpihour 2113 $this->assertEquals("Paul Marie Édouard Montmorrency", $this->byCssSelector("#sousform-donnees_techniques #architecte")->text());
209     //On clique sur retour
210     $this->byCssSelector("#sousform-donnees_techniques a.retour")->click();
211 vpihour 2108 // On se déconnecte de l'application
212 fmichon 2183 $this->logout();
213 vpihour 2108 }
214     }
215    
216 vpihour 2113 ?>

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26