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 |
* Fonction lancée en debut de chaque test |
18 |
*/ |
19 |
public function setUp() { |
20 |
parent::setUp(); |
21 |
echo ' = '.get_class().'.'.str_replace('test_', '', $this->getName())."\r\n"; |
22 |
} |
23 |
|
24 |
public function onNotSuccessfulTest(Exception $e){ |
25 |
echo 'Line '.$e->getLine().' : '.$e->getMessage()."\r\n"; |
26 |
parent::onNotSuccessfulTest($e); |
27 |
} |
28 |
|
29 |
/** |
30 |
* Test les informations retournés par le widget |
31 |
*/ |
32 |
public function test_01_infos_profil() { |
33 |
|
34 |
// on se connecte à l'application en tant que qualificateur |
35 |
$this->login("qualif", "qualif"); |
36 |
// On vérifie les informations du widget |
37 |
$this->assertEquals("QUALIFICATEUR", $this->byCssSelector(".profil-infos-profil span.value")->text()); |
38 |
$this->assertEquals("Qualificateur", $this->byCssSelector(".profil-infos-nom span.value")->text()); |
39 |
// On se déconnecte |
40 |
$this->deconnect(); |
41 |
// on se connecte à l'application en tanque qualificateur |
42 |
$this->login("instr", "instr"); |
43 |
// On vérifie les informations du widget |
44 |
$this->assertEquals("INSTRUCTEUR", $this->byCssSelector(".profil-infos-profil span.value")->text()); |
45 |
$this->assertEquals("Louis Laurent", $this->byCssSelector(".profil-infos-nom span.value")->text()); |
46 |
$this->assertEquals("H", $this->byCssSelector(".profil-infos-division span.value")->text()); |
47 |
// On se déconnecte |
48 |
$this->logout(); |
49 |
|
50 |
} |
51 |
|
52 |
/** |
53 |
* Test si la redirection est effectif |
54 |
*/ |
55 |
public function test_02_redirection() { |
56 |
|
57 |
// On se connecte en tant que "consu" |
58 |
// !!! Attention on n'utilise pas la méthode login standard car |
59 |
// l'utilisateur est redirigé automatiquement vers un autre écran |
60 |
// sans voir le message de connexion !!! |
61 |
// On se connecte |
62 |
$this->connect("consu", "consu"); |
63 |
// Allonge le temps d'attente lors de la recherche d'élément |
64 |
$this->timeouts()->implicitWait(10000); |
65 |
// On vérifie qu'il n'y a pas d'erreur sur l'élément affiché |
66 |
$this->verifynoerrors(); |
67 |
// On temporise pour laisser le temps au javascript de redirection |
68 |
// de faire son travail |
69 |
sleep(1); |
70 |
// On vérifie qu'il n'y a pas d'erreur sur l'élément affiché |
71 |
$this->verifynoerrors(); |
72 |
// On vérifie que la redirection s'est bien faite par le fil d'Ariane |
73 |
$this->assertEquals("Demandes D'avis > En Cours", $this->byXPath("//div[3]/div/h2")->text()); |
74 |
// On se déconnecte |
75 |
$this->logout(); |
76 |
} |
77 |
|
78 |
} |
79 |
|
80 |
?> |