1 | <?php |
---|
2 | |
---|
3 | // nom du test |
---|
4 | $test = 'cfg:depot_tablepack'; |
---|
5 | |
---|
6 | // recherche test.inc qui nous ouvre au monde spip |
---|
7 | $deep = 2; |
---|
8 | $include = '../../tests/test.inc'; |
---|
9 | while (!defined('_SPIP_TEST_INC') && $deep++ < 6) { |
---|
10 | $include = '../' . $include; |
---|
11 | @include $include; |
---|
12 | } |
---|
13 | if (!defined('_SPIP_TEST_INC')) { |
---|
14 | die("Pas de $include"); |
---|
15 | } |
---|
16 | |
---|
17 | |
---|
18 | ### creation de la colonne cfg si absente ### |
---|
19 | |
---|
20 | // creation de la colonne 'cfg' sur spip_auteurs si elle n'existe pas. |
---|
21 | include_spip('base/abstract_sql'); |
---|
22 | $t = sql_showtable('spip_auteurs'); |
---|
23 | if (!isset($t['field']['cfg'])) { |
---|
24 | sql_alter('TABLE spip_auteurs ADD COLUMN cfg TEXT DEFAULT \'\' NOT NULL'); |
---|
25 | } |
---|
26 | |
---|
27 | ### ecrire_config ### |
---|
28 | // les bases de test |
---|
29 | $assoc = array( |
---|
30 | 'one' => 'element 1', |
---|
31 | 'two' => 'element 2', |
---|
32 | 'three' => array('un'=>1, 'deux'=>2, 'troisc'=>"3") |
---|
33 | |
---|
34 | ); |
---|
35 | $serassoc = serialize($assoc); |
---|
36 | |
---|
37 | |
---|
38 | $essais = array(); |
---|
39 | $essais[] = array(true, 'tablepack::~/test_cfg_zero', 0); |
---|
40 | $essais[] = array(true, 'tablepack::~/test_cfg_zeroc', '0'); |
---|
41 | $essais[] = array(true, 'tablepack::~/test_cfg_chaine', 'une chaine'); |
---|
42 | $essais[] = array(true, 'tablepack::~/test_cfg_assoc', $assoc); |
---|
43 | $essais[] = array(true, 'tablepack::~/test_cfg_serie', serialize($assoc)); |
---|
44 | // chemins |
---|
45 | $essais[] = array(true, 'tablepack::~/test_cfg_chemin/casier', $assoc); |
---|
46 | $essais[] = array(true, 'tablepack::~/test_cfg_chemin/casier/truc', 'trac'); |
---|
47 | // dans rubriques |
---|
48 | $essais[] = array(true, 'tablepack::rubriques@extra:1/test_cfg_chemin/casier/truc', 'trac'); |
---|
49 | $essais[] = array(true, 'tablepack::rubrique@extra:1/test_cfg_chemin/casier/chose', 'trac'); |
---|
50 | |
---|
51 | $err = tester_fun('ecrire_config', $essais); |
---|
52 | |
---|
53 | // si le tableau $err est pas vide ca va pas |
---|
54 | if ($err) { |
---|
55 | die ('<b>ecrire_config tablepack</b><dl>' . join('', $err) . '</dl>'); |
---|
56 | } |
---|
57 | |
---|
58 | ### re lire_config ### |
---|
59 | |
---|
60 | $essais = array(); |
---|
61 | $essais[] = array(0, 'tablepack::~/test_cfg_zero'); |
---|
62 | $essais[] = array('0', 'tablepack::~/test_cfg_zeroc'); |
---|
63 | $essais[] = array('une chaine', 'tablepack::~/test_cfg_chaine'); |
---|
64 | $essais[] = array($assoc, 'tablepack::~/test_cfg_assoc'); |
---|
65 | $essais[] = array(serialize($assoc), 'tablepack::~/test_cfg_serie'); |
---|
66 | // chemins |
---|
67 | $essais[] = array($assoc + array('truc'=>'trac'), 'tablepack::~/test_cfg_chemin/casier'); |
---|
68 | $essais[] = array('trac', 'tablepack::~/test_cfg_chemin/casier/truc'); |
---|
69 | $essais[] = array(1, 'tablepack::~/test_cfg_chemin/casier/three/un'); |
---|
70 | // chemin pas la |
---|
71 | $essais[] = array(null, 'tablepack::~/test_cfg_chemin/casier/three/huit'); |
---|
72 | // dans rubrique |
---|
73 | $essais[] = array('trac', 'tablepack::rubriques@extra:1/test_cfg_chemin/casier/truc'); |
---|
74 | $essais[] = array('trac', 'tablepack::rubrique@extra:1/test_cfg_chemin/casier/chose'); |
---|
75 | |
---|
76 | $err = tester_fun('lire_config', $essais); |
---|
77 | |
---|
78 | // si le tableau $err est pas vide ca va pas |
---|
79 | if ($err) { |
---|
80 | die ('<b>relecture ecrire_config tablepack</b><dl>' . join('', $err) . '</dl>'); |
---|
81 | } |
---|
82 | |
---|
83 | ### re effacer_config ### |
---|
84 | |
---|
85 | $essais = array(); |
---|
86 | $essais[] = array(true, 'tablepack::~/test_cfg_zero'); |
---|
87 | $essais[] = array(true, 'tablepack::~/test_cfg_zeroc'); |
---|
88 | $essais[] = array(true, 'tablepack::~/test_cfg_chaine'); |
---|
89 | $essais[] = array(true, 'tablepack::~/test_cfg_assoc'); |
---|
90 | $essais[] = array(true, 'tablepack::~/test_cfg_serie'); |
---|
91 | // chemins |
---|
92 | // on enleve finement tout test_cfg_chemin : il ne doit rien rester |
---|
93 | $essais[] = array(true, 'tablepack::~/test_cfg_chemin/casier/three/huit'); // n'existe pas |
---|
94 | $essais[] = array(true, 'tablepack::~/test_cfg_chemin/casier/three/troisc'); |
---|
95 | $essais[] = array(true, 'tablepack::~/test_cfg_chemin/casier/three/deux'); |
---|
96 | $essais[] = array(true, 'tablepack::~/test_cfg_chemin/casier/three/un'); // supprime three |
---|
97 | $essais[] = array(true, 'tablepack::~/test_cfg_chemin/casier/one'); |
---|
98 | $essais[] = array(true, 'tablepack::~/test_cfg_chemin/casier/two'); |
---|
99 | $essais[] = array(true, 'tablepack::~/test_cfg_chemin/casier/truc'); // supprimer chemin/casier |
---|
100 | // dans rubrique |
---|
101 | $essais[] = array(true, 'tablepack::rubriques@extra:1/test_cfg_chemin/casier/truc'); |
---|
102 | $essais[] = array(true, 'tablepack::rubrique@extra:1/test_cfg_chemin/casier/chose'); |
---|
103 | |
---|
104 | $err = tester_fun('effacer_config', $essais); |
---|
105 | |
---|
106 | // si le tableau $err est pas vide ca va pas |
---|
107 | if ($err) { |
---|
108 | die ('<b>effacer_config tablepack</b><dl>' . join('', $err) . '</dl>'); |
---|
109 | } |
---|
110 | |
---|
111 | |
---|
112 | ### re lire_config ### |
---|
113 | |
---|
114 | $essais = array(); |
---|
115 | $essais[] = array(null, 'tablepack::~/test_cfg_zero'); |
---|
116 | $essais[] = array(null, 'tablepack::~/test_cfg_zeroc'); |
---|
117 | $essais[] = array(null, 'tablepack::~/test_cfg_chaine'); |
---|
118 | $essais[] = array(null, 'tablepack::~/test_cfg_assoc'); |
---|
119 | $essais[] = array(null, 'tablepack::~/test_cfg_serie'); |
---|
120 | $essais[] = array(null, 'tablepack::~/test_cfg_chemin'); |
---|
121 | // dans rubrique |
---|
122 | $essais[] = array(null, 'tablepack::rubriques@extra:1/test_cfg_chemin/casier/truc'); |
---|
123 | $essais[] = array(null, 'tablepack::rubrique@extra:1/test_cfg_chemin/casier/chose'); |
---|
124 | $essais[] = array(null, 'tablepack::rubriques@extra:1/test_cfg_chemin'); |
---|
125 | |
---|
126 | $err = tester_fun('lire_config', $essais); |
---|
127 | |
---|
128 | // si le tableau $err est pas vide ca va pas |
---|
129 | if ($err) { |
---|
130 | die ('<b>relecture effacer_config tablepack</b><dl>' . join('', $err) . '</dl>'); |
---|
131 | } |
---|
132 | |
---|
133 | |
---|
134 | echo "OK"; |
---|
135 | |
---|
136 | ?> |
---|