3 from Extensions.param2 import Variable
7 OK="""Mot-clé simple : mcs
8 Fin Mot-clé simple : mcs
10 from cata5 import entier
12 class TestValidCase(unittest.TestCase):
19 def _test(self,cata,liste):
20 for valeur,report in liste:
21 o=cata(valeur,'mcs',None)
24 valid=compare.check(rep,report)
26 msg="le rapport d'erreur est incorrect.\n valeur = %s\n expected =\n%s\n got =\n%s " % (valeur,report,rep)
27 self.assert_(valid,msg=msg)
30 """ Validateur LongStr(3,5) """
31 cata=SIMP(typ='TXM',validators=LongStr(3,5))
33 """Mot-clé simple : mcs
34 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
35 ! Mot-clé mcs invalide : 'aa' n'est pas de la bonne longueur !
36 ! Critere de validite: longueur de la chaine entre 3 et 5 !
37 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
38 Fin Mot-clé simple : mcs
40 ("aaaa",OK),("aaaaa",OK),
42 """Mot-clé simple : mcs
43 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
44 ! Mot-clé mcs invalide : 'axyzaa' n'est pas de la bonne longueur !
45 ! Critere de validite: longueur de la chaine entre 3 et 5 !
46 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
47 Fin Mot-clé simple : mcs
49 """Mot-clé simple : mcs
50 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
51 ! Mot-clé mcs invalide : 'bbbbaaa' n'est pas de la bonne longueur !
52 ! Critere de validite: longueur de la chaine entre 3 et 5 !
53 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
54 Fin Mot-clé simple : mcs
56 (Variable('x',"aaa"),OK),
57 (Variable('x',"aaaaaaaaaaaa"),
58 """Mot-clé simple : mcs
59 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
60 ! Mot-clé mcs invalide : 'aaaaaaaaaaaa' n'est pas de la bonne longueur !
61 ! Critere de validite: longueur de la chaine entre 3 et 5 !
62 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
63 Fin Mot-clé simple : mcs
66 self._test(cata,liste)
69 cata=SIMP(statut='o',typ='TXM',min=1,max=6,validators=NoRepeat())
72 (("aaaa","aaaaa","axyzaa","bbbbaaa","zzz"),OK),
73 (("aaaa","aaaa","axyz","bbbb","zzz"),
74 """Mot-clé simple : mcs
75 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
76 ! Mot-clé mcs invalide : aaaa est un doublon !
77 ! Critere de validite: pas de présence de doublon dans la liste !
78 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
79 Fin Mot-clé simple : mcs
81 (("aaaa","axyz","bbbb","zzz"),OK),
82 ("aaaa",OK),("aaaaa",OK),
83 ("axyzaa",OK),("bbbbaaa",OK),
84 (("aaa",Variable('x',"bbb")),OK),
85 (("aaa",Variable('x',"aaa")),
86 """Mot-clé simple : mcs
87 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
88 ! Mot-clé mcs invalide : aaa est un doublon !
89 ! Critere de validite: pas de présence de doublon dans la liste !
90 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
91 Fin Mot-clé simple : mcs
93 (Variable('x',("aaa","bbb")),OK),
94 (Variable('x',("aaa","bbb","bbb")),
95 """Mot-clé simple : mcs
96 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
97 ! Mot-clé mcs invalide : bbb est un doublon !
98 ! Critere de validite: pas de présence de doublon dans la liste !
99 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
100 Fin Mot-clé simple : mcs
103 self._test(cata,liste)
106 cata=SIMP(statut='o',typ='TXM',min=1,max=6,into =( "TUTU","TATA","CCCC"),validators=NoRepeat())
108 ("TUTU",OK),("TATA",OK),
109 (("TUTU","TATA","CCCC"),OK),
110 (("TUTU","TATA","CCCC","TUTU","TATA","CCCC"),
111 """Mot-clé simple : mcs
112 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
113 ! Mot-clé mcs invalide : TUTU est un doublon !
114 ! Critere de validite: pas de présence de doublon dans la liste !
115 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
116 Fin Mot-clé simple : mcs
118 (("TUTU","TATA","CCCC","TUTU","TATA","CCCC","TUTU","TATA","CCCC"),
119 """Mot-clé simple : mcs
120 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
121 ! Nombre d'arguments de ('TUTU', 'TATA', 'CCCC', 'TUTU', 'TATA', 'CCCC', 'TUTU', !
122 ! 'TATA', 'CCCC') incorrect (min = 1, max = 6) !
123 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
124 Fin Mot-clé simple : mcs
127 self._test(cata,liste)
130 """Test du validateur ET : pas de doublon ET valeur paire """
131 cata=SIMP(statut='o',typ='I',min=1,max=6,validators=[NoRepeat(),PairVal()])
132 liste=( ((2,),OK),(None,
133 """Mot-clé simple : mcs
134 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
135 ! Mot-clé : mcs obligatoire non valorisé !
136 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
137 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
138 ! None n'est pas une valeur autorisée !
139 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
140 Fin Mot-clé simple : mcs
142 """Mot-clé simple : mcs
143 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
144 ! Mot-clé mcs invalide : (1, 3, 5) contient des valeurs non paires !
145 ! Critere de validite: pas de présence de doublon dans la liste !
147 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
148 Fin Mot-clé simple : mcs
152 """Mot-clé simple : mcs
153 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
154 ! Mot-clé mcs invalide : 4 est un doublon !
155 ! Critere de validite: pas de présence de doublon dans la liste !
157 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
158 Fin Mot-clé simple : mcs
161 self._test(cata,liste)
164 """Test du validateur NoRepeat avec objet entier """
165 cata=SIMP(statut='o',typ='I',min=1,max=6,validators=NoRepeat())
172 """Mot-clé simple : mcs
173 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
174 ! Mot-clé mcs invalide : 1 est un doublon !
175 ! Critere de validite: pas de présence de doublon dans la liste !
176 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
177 Fin Mot-clé simple : mcs
180 self._test(cata,liste)
183 """Test du validateur OrdList('croissant') avec objet entier """
184 cata=SIMP(statut='o',typ='I',min=1,max=6,validators=OrdList('croissant'))
191 """Mot-clé simple : mcs
192 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
193 ! Mot-clé mcs invalide : (2, 1, <concept entier>, <concept entier>) n'est pas par !
194 ! valeurs croissantes !
195 ! Critere de validite: liste croissant !
196 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
197 Fin Mot-clé simple : mcs
200 self._test(cata,liste)
203 """Test du validateur Compulsory avec objet entier """
204 cata=SIMP(statut='o',typ='I',min=1,max=6,validators=Compulsory((5,6,7)))
206 liste=( ((5,6,7),OK),
210 """Mot-clé simple : mcs
211 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
212 ! Mot-clé mcs invalide : (<concept entier>, 5, 7, <concept entier>) ne contient !
213 ! pas les elements obligatoires : [6] !
214 ! Critere de validite: valeur (5, 6, 7) obligatoire !
215 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
216 Fin Mot-clé simple : mcs
219 self._test(cata,liste)
222 """Test du validateur NoRepeat OU Compulsory avec objet entier """
223 cata=SIMP(statut='o',typ='I',min=1,max=6,validators=(NoRepeat(),Compulsory((5,6,7))))
225 liste=( ((5,6,7),OK),
230 self._test(cata,liste)
233 """Test du validateur NoRepeat ET Compulsory avec objet entier """
234 cata=SIMP(statut='o',typ='I',min=1,max=6,validators=[NoRepeat(),Compulsory((5,6,7))])
236 liste=( ((5,6,7),OK),
240 """Mot-clé simple : mcs
241 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
242 ! Mot-clé mcs invalide : (<concept entier>, 5, 7, <concept entier>) ne contient !
243 ! pas les elements obligatoires : [6] !
244 ! Critere de validite: pas de présence de doublon dans la liste !
245 ! et valeur (5, 6, 7) obligatoire !
246 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
247 Fin Mot-clé simple : mcs
250 self._test(cata,liste)
253 """Test du validateur Compulsory(5,6,7) ET OrdList('croissant') avec objet entier """
254 cata=SIMP(statut='o',typ='I',min=1,max=6,validators=[Compulsory((5,6,7)),OrdList('croissant')])
256 liste=( ((5,6,7),OK),
260 """Mot-clé simple : mcs
261 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
262 ! Mot-clé mcs invalide : (<concept entier>, 5, 7, <concept entier>) ne contient !
263 ! pas les elements obligatoires : [6] !
264 ! Critere de validite: valeur (5, 6, 7) obligatoire !
265 ! et liste croissant !
266 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
267 Fin Mot-clé simple : mcs
270 """Mot-clé simple : mcs
271 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
272 ! Mot-clé mcs invalide : (<concept entier>, 5, 7, <concept entier>, 6) n'est pas !
273 ! par valeurs croissantes !
274 ! Critere de validite: valeur (5, 6, 7) obligatoire !
275 ! et liste croissant !
276 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
277 Fin Mot-clé simple : mcs
280 self._test(cata,liste)
283 """Test du validateur Compulsory(5,6,7) ET OrdList('croissant') ET NoRepeat() avec objet entier """
284 cata=SIMP(statut='o',typ='I',min=1,max=6,validators=[Compulsory((5,6,7)),OrdList('croissant'),NoRepeat()])
286 liste=( ((5,6,7),OK),
290 """Mot-clé simple : mcs
291 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
292 ! Mot-clé mcs invalide : (<concept entier>, 5, 7, <concept entier>) ne contient !
293 ! pas les elements obligatoires : [6] !
294 ! Critere de validite: valeur (5, 6, 7) obligatoire !
295 ! et liste croissant !
296 ! et pas de présence de doublon dans la liste !
297 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
298 Fin Mot-clé simple : mcs
301 """Mot-clé simple : mcs
302 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
303 ! Mot-clé mcs invalide : (<concept entier>, 5, 7, <concept entier>, 6) n'est pas !
304 ! par valeurs croissantes !
305 ! Critere de validite: valeur (5, 6, 7) obligatoire !
306 ! et liste croissant !
307 ! et pas de présence de doublon dans la liste !
308 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
309 Fin Mot-clé simple : mcs
312 """Mot-clé simple : mcs
313 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
314 ! Mot-clé mcs invalide : 7 est un doublon !
315 ! Critere de validite: valeur (5, 6, 7) obligatoire !
316 ! et liste croissant !
317 ! et pas de présence de doublon dans la liste !
318 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
319 Fin Mot-clé simple : mcs
323 self._test(cata,liste)