X-Git-Url: http://git.cyclocoop.org/?p=velocampus%2Fweb%2Fwww.git;a=blobdiff_plain;f=www%2Fplugins%2Fauto%2Fcfg%2Ftests%2Fdepot_meta.php;fp=www%2Fplugins%2Fauto%2Fcfg%2Ftests%2Fdepot_meta.php;h=3defd8a7d5ed60b610989e9ed4c80096aa4e2827;hp=0000000000000000000000000000000000000000;hb=80b4d3e85f78d402ed2e73f8f5d1bf4c19962eed;hpb=aaf970bf4cdaf76689ecc10609048e18d073820c diff --git a/www/plugins/auto/cfg/tests/depot_meta.php b/www/plugins/auto/cfg/tests/depot_meta.php new file mode 100644 index 0000000..3defd8a --- /dev/null +++ b/www/plugins/auto/cfg/tests/depot_meta.php @@ -0,0 +1,138 @@ + 'element 1', 'two' => 'element 2'); + $serassoc = serialize($assoc); + + // on flingue meta a juste nos donnees + $GLOBALS['meta'] = array( + 'zero' => 0, + 'zeroc' => '0', + 'chaine' => 'une chaine', + 'assoc' => $assoc, + 'serie' => serialize($assoc) + ); + + $essais[] = array(0, 'zero'); + $essais[] = array('0', 'zeroc'); + $essais[] = array('une chaine', 'chaine'); + $essais[] = array($assoc, 'assoc'); + $essais[] = array($assoc, 'serie'); + $essais[] = array(serialize($assoc), 'serie','',0); + $essais[] = array(null, 'rien'); + $essais[] = array('defaut', 'rien','defaut'); + + $err = tester_fun('lire_config', $essais); + + // retablissement des metas + $GLOBALS['meta']=$meta; + + // si le tableau $err est pas vide ca va pas + if ($err) { + die ('lire_config meta
' . join('', $err) . '
'); + } + +### ecrire_config meta ### + + /* + * Notes sur l'ecriture : + * - dans le tableau $GLOBALS['meta'], les valeurs transmises + * conservent effectivement leur type + * - si l'on applique un lire_metas() (reecriture du tableau $GLOBALS['meta'] + * depuis les informations de la table spip_meta, les types de valeurs + * sont tous des types string (puisque la colonne 'valeur' de spip_meta est + * varchar (ou text). + * - 0 devient alors '0' + * - array(xxx) devient 'Array' + * + * Cela ne se produit pas avec le depot 'metapack' qui serialize systematiquement + * tout ce qu'on lui donne (et peut donc restituer le type de donnee correctement). + * + */ + $essais = array(); + $essais[] = array(true, 'test_cfg_zero', 0); + $essais[] = array(true, 'test_cfg_zeroc', '0'); + $essais[] = array(true, 'test_cfg_chaine', 'une chaine'); + $essais[] = array(true, 'test_cfg_assoc', $assoc); + $essais[] = array(true, 'test_cfg_serie', serialize($assoc)); + + $err = tester_fun('ecrire_config', $essais); + + // si le tableau $err est pas vide ca va pas + if ($err) { + die ('ecrire_config meta
' . join('', $err) . '
'); + } + +### re lire_config meta ### + + $essais = array(); + $essais[] = array(0, 'test_cfg_zero'); + $essais[] = array('0', 'test_cfg_zeroc'); + $essais[] = array('une chaine', 'test_cfg_chaine'); + $essais[] = array($assoc, 'test_cfg_assoc'); + $essais[] = array(serialize($assoc), 'test_cfg_serie','',0); + + $err = tester_fun('lire_config', $essais); + + // si le tableau $err est pas vide ca va pas + if ($err) { + die ('relecture ecrire_config meta
' . join('', $err) . '
'); + } + +### re effacer_config meta ### + + $essais = array(); + $essais[] = array(true, 'test_cfg_zero'); + $essais[] = array(true, 'test_cfg_zeroc'); + $essais[] = array(true, 'test_cfg_chaine'); + $essais[] = array(true, 'test_cfg_assoc'); + $essais[] = array(true, 'test_cfg_serie'); + + $err = tester_fun('effacer_config', $essais); + + // si le tableau $err est pas vide ca va pas + if ($err) { + die ('effacer_config meta
' . join('', $err) . '
'); + } + + +### re lire_config meta ### + + $essais = array(); + $essais[] = array(null, 'test_cfg_zero'); + $essais[] = array(null, 'test_cfg_zeroc'); + $essais[] = array(null, 'test_cfg_chaine'); + $essais[] = array(null, 'test_cfg_assoc'); + $essais[] = array(null, 'test_cfg_serie'); + + $err = tester_fun('lire_config', $essais); + + // si le tableau $err est pas vide ca va pas + if ($err) { + die ('relecture effacer_config meta
' . join('', $err) . '
'); + } + + + echo "OK"; + +?>