login("qualif", "qualif"); // On vérifie les informations du widget $this->assertEquals("QUALIFICATEUR", $this->byCssSelector(".profil-infos-profil span.value")->text()); $this->assertEquals("Qualificateur", $this->byCssSelector(".profil-infos-nom span.value")->text()); // On se déconnecte $this->deconnect(); // on se connecte à l'application en tanque qualificateur $this->login("instr", "instr"); // On vérifie les informations du widget $this->assertEquals("INSTRUCTEUR", $this->byCssSelector(".profil-infos-profil span.value")->text()); $this->assertEquals("Louis Laurent", $this->byCssSelector(".profil-infos-nom span.value")->text()); $this->assertEquals("H", $this->byCssSelector(".profil-infos-division span.value")->text()); // On se déconnecte $this->logout(); } /** * Test si la redirection est effectif */ public function test_redirection() { // On se connecte en tant que "consu" // !!! Attention on n'utilise pas la méthode login standard car // l'utilisateur est redirigé automatiquement vers un autre écran // sans voir le message de connexion !!! // On se connecte $this->connect("consu", "consu"); // Allonge le temps d'attente lors de la recherche d'élément $this->timeouts()->implicitWait(10000); // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché $this->verifynoerrors(); // On temporise pour laisser le temps au javascript de redirection // de faire son travail sleep(1); // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché $this->verifynoerrors(); // On vérifie que la redirection s'est bien faite par le fil d'Ariane $this->assertEquals("Demandes D'avis > En Cours", $this->byXPath("//div[3]/div/h2")->text()); // On se déconnecte $this->logout(); } /** * Test les dossiers limités avec le divisionnaire qui doit voir tous les * dossiers dans ce cas */ public function test_dossier_limite() { // on se connecte à l'application en tant que qualificateur $this->login("divi", "divi"); // On vérifie qu'il y ait au moins un dossier limite $this->assertRegExp("/^[\s\S]*PD 013055 12 00001P0[\s\S]*$/",$this->byId("widget_14")->text()); // On vérifie qu'il y ait au moins un dossier limite incomplet $this->assertRegExp("/^[\s\S]*AT 013055 13 00001P0[\s\S]*$/",$this->byId("widget_14")->text()); // On clique sur "Voir tous mes dossiers limites" $this->byLinkText("Voir tous mes dossiers limites")->click(); // On vérifie que le DI est présent $this->assertRegExp("/^[\s\S]*PD 013055 12 00001P0[\s\S]*$/",$this->byCssSelector("BODY")->text()); $this->assertRegExp("/^[\s\S]*AT 013055 13 00001P0[\s\S]*$/",$this->byCssSelector("BODY")->text()); // On se déconnecte $this->logout(); } } ?>