2 from Accas import SIMP,FACT
6 class TestFactCase(unittest.TestCase):
8 self.cata=FACT(a=SIMP(typ='I',statut='o'),
10 c=SIMP(typ='C',defaut=('RI',1,0)),
16 def testStatut1(self):
17 o=self.cata({'a':1},'mcs1',None)
19 self.assert_(cr.estvide())
21 def testStatut2(self):
22 o=self.cata(None,'mcs1',None)
24 expected_cr="""Mot cle Facteur :mcs1
26 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
27 ! Mot-clé : a obligatoire non valorisé !
28 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
29 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
30 ! None n'est pas une valeur autorisée !
31 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
32 Fin Mot-clé simple : a
33 Fin Mot cle Facteur :mcs1
35 self.assertEqual(str(cr) , expected_cr)
38 """Verification de type"""
39 #Ne leve plus d'exception
40 #self.assertRaises(AttributeError,self.cata,1,'mcs1',None)
41 o=self.cata({'a':1.2},'mcs1',None)
43 expected_cr="""Mot cle Facteur :mcs1
45 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
46 ! 1.2 (de type <type 'float'>) n'est pas d'un type autorisé: ('I',) !
47 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
48 Fin Mot-clé simple : a
49 Fin Mot cle Facteur :mcs1
51 msg="le rapport d'erreur est incorrect.\n expected =\n%s\n got =\n%s " % (expected_cr,str(cr))
52 self.assertEqual(str(cr) , expected_cr,msg=msg)
55 cata=FACT(min=2,max=3,a=SIMP(typ='I',statut='o'),)
58 (({'a':1},{'a':2}),1),
59 (({'a':1},{'a':2},{'a':3},{'a':4}),0),
60 (({'a':1},{'a':2},{'a':3}),1),
63 for valeur,valid in liste:
64 o=cata(valeur,'mcf',None)
65 self.assertEqual(o.isvalid(),valid,"erreur sur le test %s %s" % (valeur,valid)+'\n'+str(o.report()))
68 cata=FACT(max=3,a=SIMP(typ='I',statut='o'),)
69 mcfact=cata({'a':1},'mcf',None)
70 self.assertEqual(mcfact[0].get_mocle('a') , 1)
71 self.assertEqual(mcfact['a'] , 1)
73 mcfact=cata(({'a':1},{'a':2}),'mcf',None)
74 self.assertEqual(mcfact[0]['a'] , 1)
75 self.assertEqual(mcfact[1]['a'] , 2)
76 self.assertRaises(TypeError,mcfact.__getitem__, 'a')
79 self.assertRaises(TypeError,f)
82 cata=FACT(xx=FACT(statut='o',max=3,a=SIMP(typ='I'),))
83 mcfact=cata({},'mcf',None)
90 ({'xx':("error","err2","err3")},0),
91 ({'xx':({'a':1},"err2","err3")},0),
92 ({'xx':("err1",{'a':1},"err3")},0),
93 ({'xx':("err1",{'a':1},"err3","err4")},0),
95 for valeur,valid in liste:
96 o=cata(valeur,'mcf',None)
97 self.assertEqual(o.isvalid(),valid,"erreur sur le test %s %s" % (valeur,valid)+'\n'+str(o.report()))