1 |
<?php |
<?php |
2 |
/** |
/** |
3 |
* Ce fichier regroupe les tests unitaire général à l'application OpenADS |
* Ce script contient la définition de la classe 'GeneralTest'. |
4 |
* |
* |
5 |
* @package openfoncier |
* @package openads |
6 |
* @version SVN : $Id: testGeneral.php 5673 2015-12-21 19:35:24Z nmeucci $ |
* @version SVN : $Id$ |
7 |
*/ |
*/ |
8 |
|
|
9 |
/** |
require_once "testGeneral_common.php"; |
10 |
* Cette classe permet de tester unitairement les fonctions de l'application. |
final class GeneralTest extends GeneralCommon { |
11 |
*/ |
public function setUp(): void { |
12 |
class General extends PHPUnit_Framework_TestCase { |
$this->common_setUp(); |
|
|
|
|
/** |
|
|
* Méthode lancée en début de traitement |
|
|
*/ |
|
|
public function setUp() { |
|
|
|
|
|
// Instancie la timezone |
|
|
date_default_timezone_set('Europe/Paris'); |
|
|
echo ' = '.get_class().'.'.str_replace('test_', '', $this->getName())."\r\n"; |
|
13 |
} |
} |
14 |
|
public function tearDown(): void { |
15 |
public function onNotSuccessfulTest(Exception $e){ |
$this->common_tearDown(); |
|
echo 'Line '.$e->getLine().' : '.$e->getMessage()."\r\n"; |
|
|
parent::onNotSuccessfulTest($e); |
|
16 |
} |
} |
17 |
|
public function onNotSuccessfulTest(Throwable $e): void { |
18 |
/** |
$this->common_onNotSuccessfulTest($e); |
|
* Méthode lancée en fin de traitement |
|
|
*/ |
|
|
public function tearDown() { |
|
|
|
|
|
// |
|
19 |
} |
} |
|
|
|
|
/** |
|
|
* Test la fonction mois_date() de la classe Utils. |
|
|
*/ |
|
|
public function test_01_utils_mois_date() { |
|
|
// Instance de la classe Utils |
|
|
require_once "../obj/utils.class.php"; |
|
|
@session_start(); |
|
|
$_SESSION['collectivite'] = 1; |
|
|
$_SESSION['login'] = "admin"; |
|
|
$_SERVER['REQUEST_URI'] = ""; |
|
|
$f = new utils("nohtml"); |
|
|
$f->disableLog(); |
|
|
|
|
|
// Avec des mois |
|
|
|
|
|
// Pour les additions |
|
|
// Initialisation des tableaux |
|
|
$tab_date_dep = array(); |
|
|
$tab_delay = array(); |
|
|
$tab_date_fin = array(); |
|
|
|
|
|
// Tableau des date de départ |
|
|
$tab_date_dep = array( |
|
|
0 => "2013-12-31", |
|
|
1 => "2014-01-31", |
|
|
2 => "2014-01-01", |
|
|
3 => "2014-01-31", |
|
|
4 => "2015-12-31", |
|
|
5 => "", |
|
|
6 => "", |
|
|
7 => "", |
|
|
8 => "2015-12-31", |
|
|
9 => "2015-12-31", |
|
|
10 => "openADS", |
|
|
11 => "openADS", |
|
|
12 => "openADS", |
|
|
); |
|
|
// Tableau des delais |
|
|
$tab_delay = array( |
|
|
0 => "2", |
|
|
1 => "5", |
|
|
2 => "12", |
|
|
3 => "27", |
|
|
4 => "2", |
|
|
5 => "2", |
|
|
6 => "openads", |
|
|
7 => "", |
|
|
8 => "openADS", |
|
|
9 => "", |
|
|
10 => "2", |
|
|
11 => "openads", |
|
|
12 => "", |
|
|
); |
|
|
// Tableau des date résultat |
|
|
$tab_date_fin = array( |
|
|
0 => "2014-02-28", |
|
|
1 => "2014-06-30", |
|
|
2 => "2015-01-01", |
|
|
3 => "2016-04-30", |
|
|
4 => "2016-02-29", |
|
|
5 => null, |
|
|
6 => null, |
|
|
7 => null, |
|
|
8 => "2015-12-31", |
|
|
9 => "2015-12-31", |
|
|
10 => null, |
|
|
11 => null, |
|
|
12 => null, |
|
|
); |
|
|
|
|
|
// Pour chaque date |
|
|
foreach ($tab_date_dep as $key => $date_dep) { |
|
|
// Calcul la date résultat |
|
|
$date_fin = $f->mois_date($date_dep, $tab_delay[$key], "+"); |
|
|
// Vérifie que la date résultat est correct |
|
|
$this->assertEquals($date_fin, $tab_date_fin[$key]); |
|
|
} |
|
|
|
|
|
// Pour les soustractions |
|
|
// Initialisation des tableaux |
|
|
$tab_date_dep = array(); |
|
|
$tab_delay = array(); |
|
|
$tab_date_fin = array(); |
|
|
|
|
|
// Tableau des date de départ |
|
|
$tab_date_dep = array( |
|
|
0 => "2014-01-31", |
|
|
); |
|
|
// Tableau des delais |
|
|
$tab_delay = array( |
|
|
0 => "4", |
|
|
); |
|
|
// Tableau des date résultat |
|
|
$tab_date_fin = array( |
|
|
0 => "2013-09-30", |
|
|
); |
|
|
|
|
|
// Pour chaque date |
|
|
foreach ($tab_date_dep as $key => $date_dep) { |
|
|
// Calcul la date résultat |
|
|
$date_fin = $f->mois_date($date_dep, $tab_delay[$key], "-"); |
|
|
// Vérifie que la date résultat est correct |
|
|
$this->assertEquals($date_fin, $tab_date_fin[$key]); |
|
|
} |
|
|
|
|
|
// Avec des jours |
|
|
|
|
|
// Pour les additions |
|
|
// Initialisation des tableaux |
|
|
$tab_date_dep = array(); |
|
|
$tab_delay = array(); |
|
|
$tab_date_fin = array(); |
|
|
|
|
|
// Tableau des date de départ |
|
|
$tab_date_dep = array( |
|
|
0 => "2013-12-31", |
|
|
1 => "2014-01-31", |
|
|
2 => "2014-01-01", |
|
|
3 => "2014-01-31", |
|
|
4 => "2015-12-31", |
|
|
5 => "", |
|
|
6 => "", |
|
|
7 => "", |
|
|
8 => "2015-12-31", |
|
|
9 => "2015-12-31", |
|
|
10 => "openADS", |
|
|
11 => "openADS", |
|
|
12 => "openADS", |
|
|
); |
|
|
// Tableau des delais |
|
|
$tab_delay = array( |
|
|
0 => "2", |
|
|
1 => "5", |
|
|
2 => "12", |
|
|
3 => "27", |
|
|
4 => "2", |
|
|
5 => "2", |
|
|
6 => "openads", |
|
|
7 => "", |
|
|
8 => "openADS", |
|
|
9 => "", |
|
|
10 => "2", |
|
|
11 => "openads", |
|
|
12 => "", |
|
|
); |
|
|
// Tableau des dates résultats |
|
|
$tab_date_fin = array( |
|
|
0 => "2014-01-02", |
|
|
1 => "2014-02-05", |
|
|
2 => "2014-01-13", |
|
|
3 => "2014-02-27", |
|
|
4 => "2016-01-02", |
|
|
5 => null, |
|
|
6 => null, |
|
|
7 => null, |
|
|
8 => "2015-12-31", |
|
|
9 => "2015-12-31", |
|
|
10 => null, |
|
|
11 => null, |
|
|
12 => null, |
|
|
); |
|
|
|
|
|
// Pour chaque date |
|
|
foreach ($tab_date_dep as $key => $date_dep) { |
|
|
// Calcul la date résultat |
|
|
$date_fin = $f->mois_date($date_dep, $tab_delay[$key], "+", "jour"); |
|
|
// Vérifie que la date résultat est correct |
|
|
$this->assertEquals($date_fin, $tab_date_fin[$key]); |
|
|
} |
|
|
|
|
|
// Pour les soustractions |
|
|
// Initialisation des tableaux |
|
|
$tab_date_dep = array(); |
|
|
$tab_delay = array(); |
|
|
$tab_date_fin = array(); |
|
|
|
|
|
// Tableau des date de départ |
|
|
$tab_date_dep = array( |
|
|
0 => "2014-01-31", |
|
|
); |
|
|
// Tableau des delais |
|
|
$tab_delay = array( |
|
|
0 => "4", |
|
|
); |
|
|
// Tableau des date résultat |
|
|
$tab_date_fin = array( |
|
|
0 => "2014-01-27", |
|
|
); |
|
|
|
|
|
// Pour chaque date |
|
|
foreach ($tab_date_dep as $key => $date_dep) { |
|
|
// Calcul la date résultat |
|
|
$date_fin = $f->mois_date($date_dep, $tab_delay[$key], "-", "jour"); |
|
|
// Vérifie que la date résultat est correct |
|
|
$this->assertEquals($date_fin, $tab_date_fin[$key]); |
|
|
} |
|
|
|
|
|
// Destruction de la classe Utils |
|
|
$f->__destruct(); |
|
|
} |
|
|
|
|
|
|
|
|
/** |
|
|
* Vérification de la méthode permettant de selectionner le logo de la bonne |
|
|
* collectivité. |
|
|
*/ |
|
|
function test_02_TNR_selection_du_logo_dans_les_editions() { |
|
|
// Instance de la classe Utils |
|
|
require_once "../obj/utils.class.php"; |
|
|
@session_start(); |
|
|
$_SESSION['collectivite'] = 1; |
|
|
$_SESSION['login'] = "admin"; |
|
|
$_SERVER['REQUEST_URI'] = ""; |
|
|
$f = new utils("nohtml"); |
|
|
$f->disableLog(); |
|
|
|
|
|
require_once "../core/om_edition.class.php"; |
|
|
$edition = new edition(); |
|
|
$edition->f = $f; |
|
|
// Vérification du logo de collectivité mono dans le cas où : |
|
|
// - un logo multi actif est défini |
|
|
// - un logo actif pour la collectivité est défini |
|
|
$logo = $edition->get_logo_from_collectivite("logopdf.png", 1); |
|
|
// XXX le double // dans le path est nécessaire |
|
|
$logo_valid = array( |
|
|
"file" => "../var/filestorage//88/8815/88154c6f68d3a0e1928c84fc0187993d", |
|
|
"w" => 43.349333333333334, |
|
|
"h" => 43.349333333333334, |
|
|
"type" => "png", |
|
|
); |
|
|
// Le logo commune doit être retourné par la méthode |
|
|
$this->assertEquals($logo, $logo_valid); |
|
|
|
|
|
// Désactivation du logo de la commune |
|
|
$val_logo["actif"] = 'f'; |
|
|
$f->db->autoExecute(DB_PREFIXE."om_logo", $val_logo, DB_AUTOQUERY_UPDATE, "om_logo=2"); |
|
|
|
|
|
// Vérification du logo de collectivité mono dans le cas où : |
|
|
// - un logo multi actif est défini |
|
|
// - un logo la collectivité est inactif |
|
|
$logo = $edition->get_logo_from_collectivite("logopdf.png", 1); |
|
|
// XXX le double // dans le path est nécessaire |
|
|
$logo_valid = array( |
|
|
"file" => "../var/filestorage//d2/d20a/d20a5c36d3b83464bab63035a7f61901", |
|
|
"w" => 43.349333333333334, |
|
|
"h" => 43.349333333333334, |
|
|
"type" => "png", |
|
|
); |
|
|
// Le logo de la collectivité multi doit être retourné |
|
|
$this->assertEquals($logo, $logo_valid); |
|
|
|
|
|
// Désactivation du logo de la commune |
|
|
$val_logo["actif"] = 'f'; |
|
|
$f->db->autoExecute(DB_PREFIXE."om_logo", $val_logo, DB_AUTOQUERY_UPDATE, "om_logo=6"); |
|
|
|
|
|
// Vérification du logo de collectivité mono dans le cas où aucun logo |
|
|
// n'est activé |
|
|
$logo = $edition->get_logo_from_collectivite("logopdf.png", 1); |
|
|
$logo_valid = null; |
|
|
// Un valeur null doit être retournée |
|
|
$this->assertEquals($logo, $logo_valid); |
|
|
// Destruction de la classe Utils |
|
|
$f->__destruct(); |
|
|
} |
|
|
|
|
20 |
} |
} |
|
|
|
|
?> |
|