1 |
<?php |
2 |
/** |
3 |
* Fichier contenant la classe de test des widget |
4 |
* |
5 |
* @package openads |
6 |
* @version |
7 |
*/ |
8 |
|
9 |
// |
10 |
require_once "base.php"; |
11 |
|
12 |
/** |
13 |
* Classe de test des widgets |
14 |
*/ |
15 |
class Widget extends Base2TestCase { |
16 |
|
17 |
/** |
18 |
* Test les informations retournés par le widget |
19 |
*/ |
20 |
public function test_infos_profil() { |
21 |
|
22 |
// on se connecte à l'application en tant que qualificateur |
23 |
$this->login("qualif", "qualif"); |
24 |
// On vérifie les informations du widget |
25 |
$this->assertEquals("QUALIFICATEUR", $this->byCssSelector(".profil-infos-profil span.value")->text()); |
26 |
$this->assertEquals("Qualificateur", $this->byCssSelector(".profil-infos-nom span.value")->text()); |
27 |
// On se déconnecte |
28 |
$this->deconnect(); |
29 |
// on se connecte à l'application en tanque qualificateur |
30 |
$this->login("instr", "instr"); |
31 |
// On vérifie les informations du widget |
32 |
$this->assertEquals("INSTRUCTEUR", $this->byCssSelector(".profil-infos-profil span.value")->text()); |
33 |
$this->assertEquals("Louis Laurent", $this->byCssSelector(".profil-infos-nom span.value")->text()); |
34 |
$this->assertEquals("H", $this->byCssSelector(".profil-infos-division span.value")->text()); |
35 |
// On se déconnecte |
36 |
$this->logout(); |
37 |
|
38 |
} |
39 |
|
40 |
/** |
41 |
* Test si la redirection est effectif |
42 |
*/ |
43 |
public function test_redirection() { |
44 |
|
45 |
// On se connecte en tant que "consu" |
46 |
// !!! Attention on n'utilise pas la méthode login standard car |
47 |
// l'utilisateur est redirigé automatiquement vers un autre écran |
48 |
// sans voir le message de connexion !!! |
49 |
// On se connecte |
50 |
$this->connect("consu", "consu"); |
51 |
// Allonge le temps d'attente lors de la recherche d'élément |
52 |
$this->timeouts()->implicitWait(10000); |
53 |
// On vérifie qu'il n'y a pas d'erreur sur l'élément affiché |
54 |
$this->verifynoerrors(); |
55 |
// On temporise pour laisser le temps au javascript de redirection |
56 |
// de faire son travail |
57 |
sleep(1); |
58 |
// On vérifie qu'il n'y a pas d'erreur sur l'élément affiché |
59 |
$this->verifynoerrors(); |
60 |
// On vérifie que la redirection s'est bien faite par le fil d'Ariane |
61 |
$this->assertEquals("Demandes D'avis > En Cours", $this->byXPath("//div[3]/div/h2")->text()); |
62 |
// On se déconnecte |
63 |
$this->logout(); |
64 |
} |
65 |
|
66 |
/** |
67 |
* Test les dossiers limités avec le divisionnaire qui doit voir tous les |
68 |
* dossiers dans ce cas |
69 |
*/ |
70 |
public function test_dossier_limite() { |
71 |
|
72 |
// on se connecte à l'application en tant que qualificateur |
73 |
$this->login("divi", "divi"); |
74 |
// On vérifie qu'il y ait au moins un dossier limite |
75 |
$this->assertRegExp("/^[\s\S]*PD 013055 12 00001P0[\s\S]*$/",$this->byId("widget_14")->text()); |
76 |
// On clique sur "Voir tous mes dossiers limites" |
77 |
$this->byLinkText("Voir tous mes dossiers limites")->click(); |
78 |
// On vérifie que le DI est présent |
79 |
$this->assertRegExp("/^[\s\S]*PD 013055 12 00001P0[\s\S]*$/",$this->byCssSelector("BODY")->text()); |
80 |
// On se déconnecte |
81 |
$this->logout(); |
82 |
|
83 |
} |
84 |
|
85 |
} |
86 |
|
87 |
?> |